Ubuntu MATE на Raspberry Pi 3
Колись давно я був купив Raspberry Pi — ще ту стару, з 512М пам’яті й 700-мегагерцовим одноядерним процесором. Трохи побавився й відклав, бо реального на ній ні́чого було робити, а інші задачі підпирали.
А то до мене звернулися знайомі, які погано знайомі з лінуксами і їм потрібна деяка підтримка. Дали одну платку Raspberry Pi 3 мені. Тепер коли є проблеми — пишуть, я у себе розбираюся і висилаю рекомендації («для себе» я із нею нічого й не роблю).
Оце вчергове щось там треба було перевірити зі свіжим Raspbian 9.1 stretch, поліз по нього і виявив, що є ще й Ubuntu MATE для RPi.
Звісно ж, по тому, як все зробив, вирішив погратися і з цим.
На око наче не повільніша за Raspbian, але займає більше місця на карті micro-SD. Просто тому, що тягне із собою відразу набагато більше софта.
Тільки от…
Образ для SD-карти має розділ /boot розміром білизько шестидесяти мегабайт. Він зайнятий лише на третину і наче все нормально, але при оновленні система викинула помилку:
Not enough free disk space. The upgrade needs a total of 48.2 M free space on disk ‘/boot’.
Чи варто казати, що отой «clean» робити нема ніякого сенсу, бо це перша операція на «чистій» системі, як вона була записана в образі? Треба збільшити розділ /boot, але краще це робити до першого завантаження, бо тоді убунта збільшує розділ / на все вільне місце і перед тим, як його відсувати, доведеться ще й зменшувати.
У мене не вийшло швиденько розібратися, як змінити розмір розділу ще в образі, тобто на швидкому вінчестері, тому це робилося на SD-карті поки я читав різні розсилки. Посунув/збільшив відразу на 400 мегабайт, «хай клята комаха вдавиться».
По дорозі gparted спитав: залишати розділ /boot у FAT16 чи переробити на FAT32. Чесно попередив, що для FAT32 треба буде перевстановити завантажувач. Тому залишився FAT16.
Все побігло, оновилося, працює.
Одного не розумію — навіщо їй треба було більше місця на /boot, якщо після оновлення там залишилося практично стільки, скільки й було. Невже тимчасові файли не можна було деінде скласти?
Ну – він ядро та initrd при оновленні спочатку нові распаковує (ще можливо initrd перезбирає) а потім видаляє старі. Якщо не треба тримати кілька версій ядра – то можна було розширити на ті 50 мегабайт, що просив.
Навіть якщо так, місця на / валом. Зайвий раз смикати /boot записом тимчасових файлів, коли вже цей розділ виділено окремо, наче й неправильно.
«Та хай»™, відвалив вже побільше, на 16-гігабайтній картці місце є. І це однак на погратися.
Вони не тимчасові. Просто пакувальник так працює при оновлені – спочатку роспаковує нові файли, а потім видаляє старі і перейменовує нові.
Ну може.
Хоча там було 63 мегабайти, близько 22 зайнято. Після оновлення — так само близько 22 зайнято. Тобто якби туди копіювалися лише нові (без архівів), то і 50 вистачило б.
Та це дрібниці, незрозуміло лише чому таким малим цей розділ зробили.
Здається він ще там на місці перезбирає initrd. Але це треба дивитись скрипти.