LINUX.ORG.RU

Тыкаю минимальную Убунту

 ,


0

1

Привет, ЛОР.

В попытке создать минималистичную CI build station я скачал старенький минимальный ISO Ubuntu 18.04 x86_64. Поставил в виртуалбокс. В процессе установки в комплектах ПО не выбрал НИЧЕГО (но позволил инсталлятору качать пакеты с зеркала).

Установка прошла без приключений, виртуалка грузится за 5 секунд, загружается ядерная консоль. Но. Корневая ФС сразу (ну не совсем сразу – после установки и двух перегрузок) отожрала 3,5 гигабайта дискового пространства, после того, как я поставил mc и build-essential, съела ещё 500 метров.

По второму пункту у меня вопросов нет, понятно, что компилятор и сборочные утилиты тащат много требухи. А вот по первому… Всё-таки, куда деваются три с половиной гига на ПУСТОЙ системе? Ну ядро, ну инит, ну несколько сервисов, библиотек и GNUтых утилит. Что ещё?

И можно ли сделать ещё меньше? Ну кроме LFS, конечно, это уж самый радикальный вариант (к тому же в LFS я под файлы сборки кучу места займу).

★★★★★

Последнее исправление: hobbit (всего исправлений: 2)

Всё-таки, куда деваются три с половиной гига на ПУСТОЙ системе?

Не пожалей несколько килобайтов, поставь ncdu. Наверняка обнаружатся своп и некоторое количество snap’ов.

И можно ли сделать меньше?

Docker-образы меньше.

anonymous
()
Ответ на: комментарий от anonymous

Не пожалей несколько килобайтов, поставь ncdu.

Дык есть ведь у нас в хозяйстве и du .-h --maxdepth=<подбирать итеративно по ходу расследования>. Но я думал, может, кто уже прыгал по этим граблям до меня и имеет что сказать?

и некоторое количество snap’ов.

В 18.04? Сомневаюсь что-то.

А вот насчёт свопа мысль дельная. Поскольку дело было в виртуалке, я расслабился и позволил ей разбить диск по своему усмотрению. Что она там в итоге усмотрела, не проверял.

Гляну, спасибо.

hobbit ★★★★★
() автор топика

Я мало знаком с Убунту, но подозреваю, что у пакетного менеджера есть кэш. Может быть в процессе установки этот кэш мог подзасраться

FishHook
()

Немного не в тему. Но буквально вчера ставил серверную ubuntu 20 LTS. Тоже разрешил разметить диск самостоятельно и обновиться в процессе установки. Так оно мне накачало горы snap'ов, кучу какого-то левого софта. Я так же выбрал в инсталлере пункт «установить ssh-сервер», так вот оно не смогло сгенерить host-ключи и упало...

В общем, как ты понимаешь, мне очень не понравился убунтовский инсталлер и нынешний подход. Только debian и только в режиме эксперта.

shell-script ★★★★★
()
Ответ на: комментарий от Shadow

Не-а. Вот перл втащил, да.
В любом случае 3,5 гига было уже ДО mc.

P.S. Да, надо было до установки mc и сборочного метапакета не только размер запомнить, но и выхлоп dpkg ---list сохранить. Не догадался.

hobbit ★★★★★
() автор топика
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от hobbit

Даже GPT советует сейчас брать Debian и не выделываться.

В Ubuntu с 18 версии добавили очень много автоматизации и не совсем обычных зависимостей. Любой вызов APT обязан включать в себя --no-install-recommends.

Все тесты пацаны проводят на Debian 11 и старее: Postgres, MS и остальные конторы.

О будущем Ubuntu конкретнее - https://www.youtube.com/watch?v=zDzkAs0V81U

anonymous
()
Ответ на: комментарий от anonymous

Ну я, собственно, в качестве альтернативы рассматривал Debian Buster, и виртуалка у меня даже есть (не минимальная, правда). Но он чуть поновее, чем Ubuntu 18.04, а я хочу систему с glibc постарше.

hobbit ★★★★★
() автор топика
Ответ на: комментарий от hobbit

а я хочу систему с glibc постарше

А нет смысла. Если сервер - то welcome на Docker hub. Посмотри на каких системах собирают корпы свои поделки. На то и нос по ветру.

Сейчас моду задают корпы, у них всё описано по стеку. Если ты задумал на О десяти лет давности, то и брать должен не 18 версию и не Ubuntu, она всегда была специфической.

Рекомендую пересмотреть ТЗ.

anonymous
()

«Минимальное» и «Убунту» не используются в одном выражении. Нет там ничего минимального. Навалено, как обычно, с горкой.

utanho ★★★★★
()

Ubuntu 18.04

Ставить дистрибутив уже снятый с поддержки - это максимально странно :)

отожрала 3,5 гигабайта дискового пространства

APT-Suggests false
APT-Recommends false

и удалять всё подряд.

Dimez ★★★★★
()
Последнее исправление: Dimez (всего исправлений: 1)
Ответ на: комментарий от Dimez

и удалять всё подряд.

Включая убунту %)

А вообще она странная немного. У меня была виртуалка с 1 гигом ОЗУ и 1 ядром, стояла там серверная убунта 20.04 пару лет, штатно обновлялась, все работало (пара сервисов в докере). Потом решил обновить, и сделал вторую машину с такими же параметрами, но 22.04 уже. Создал, обновил, почистил, перенес сервисы. И стал ловить периодически лютые тормоза — внезапно раз/два в день ЛА под 15 (точно не помню уже, но у хостера в админке показывало по 10-15 минут проца 100%), оператива вроде при этом держалась в допустимых пределах. Долго не мог понять, че за нах, грешил но обновленный Kanboard, который по идее легкий на самом деле… А потом понял, что это Snap. Удалось отловить момент, когда залагало, и пошел смотреть htop — демон снапа бешено грузил проц. Удалил это дерьмо из системы, почистил за ним… И место освободилось, и работает теперь шустро как положено все.

ИМХО, убунта чет все хуже и хуже становится, хотя и мейнстрим.

Zhbert ★★★★★
()
Ответ на: комментарий от Dimez

Хрен с ним, что он туда засунут из коробки. Чего вот он делал все эти 10 минут с такой нагрузкой, если из него ничего не стояло и стоять не планировалось?

Zhbert ★★★★★
()
Ответ на: комментарий от anonymous

Не сервер. Задача — собирать прикладную программу, чтобы эта сборка работала на большинстве современных и не слишком протухших десктопных систем.

hobbit ★★★★★
() автор топика
Ответ на: комментарий от Dimez

Как я выше писал, он теперь в дефолте туда пихается при установке даже в серверной редакции при минимальной установке. Без возможности отменить(или я сходу не нашёл). Зачем? Это уже не ко мне вопросы. Я бы за такое, простите, бил ногами, возможно по лицу.

shell-script ★★★★★
()
Ответ на: комментарий от Aceler

Разумеется, у меня они включены.

└─> grep -vE '(^$|#)' /etc/apt/sources.list
deb http://deb.debian.org/debian/ bookworm main non-free contrib non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm main non-free contrib non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian/ bookworm-updates main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm-updates main contrib non-free non-free-firmware

Но 700 метров или гиг прошивок, это перебор.

shell-script ★★★★★
()
Ответ на: комментарий от hobbit

Не сервер. Задача — собирать прикладную программу, чтобы эта сборка работала на большинстве современных и не слишком протухших десктопных систем.

Тем более смотри на debian Oldstable. Как пример: https://hub.docker.com/_/postgres/

Мы видим Alpine (для про), bullseye и bookworm. Ubuntu? Что?

anonymous
()
Ответ на: комментарий от anonymous

У alpine musl, если мне память не изменяет. А чаще всего нужен именно glibc.

Ну а Arch... Уж прости меня, но пожалуйста пристрелите меня кто-нибудь, когда я в прод потащу Arch. Это будет означать, что началась деменция и мозг больше не работает. :)

shell-script ★★★★★
()
Ответ на: комментарий от Dimez

Кроме того, в инсталлере бубунты есть выбор «ставить в виртуалку», там будет ядро linux-image-virtual и без прошивок и modules-extra

Это нишевый режим. Он не рекомендуется для специалистов, которые умеют в apt purge. Там хрен поймёшь, что от чего зависит. И какие службы чего хотят. И при этом оно жирное. Начинаешь чистить и что-то отваливается. Вспомни Canonical и их разделение ядер для серверов и desktop.

anonymous
()
Ответ на: комментарий от shell-script

мы говорим о подходе. Для DEB безусловно DEBian. Название даёт ассоциации xD. RPM - Centos (была).

А серьёзные ребята бинарные фермы не расматривают. Или Guix или Gentoo.

anonymous
()
Ответ на: комментарий от Kolins

И можно ли сделать ещё меньше?

debian?

Искаропки(!) жрёт плюс-минус столько же. Ну может чуть меньше (или больше, давно я убунту не тыкал), но не намного. Но из него можно выкинуть довольно много всего, при этом ничего не сломав.

alpine?

Не для любого юзкейса годится. К сожалению. И по большей части по причине минимализма (не только базовой поставки, но и наполнения репозиториев).

@hobbit, ↑

mord0d ★★★★★
()
Ответ на: комментарий от shell-script

Я так же выбрал в инсталлере пункт «установить ssh-сервер», так вот оно не смогло сгенерить host-ключи и упало…

В общем, как ты понимаешь, мне очень не понравился убунтовский инсталлер и нынешний подход

А у меня, напротив, был положительный опыт взаимодействия с установщиком серверной Ubuntu 22.04 LTS, особенно понравилось что ввёл туда ник с GitHub’а – EXL и оно подсосало мой публичный SSH ключ. Удобно, экономит время.

Но да, весь этот положительный опыт позже похерился об ЖИРНОСТЬ этих образов и эти дурацкие Snap’ы.

EXL ★★★★★
()
Ответ на: комментарий от shell-script

У alpine musl, если мне память не изменяет. А чаще всего нужен именно glibc.

Вот кстати да, я вообще не понимаю дрочь кучи DevOps’ов на этот Alpine в докерах и прочем. У них там прямо культ какого-то самобичевания и самоистязания по типу «накати софт который был отлажен и оттестирован на девелоперских тачках с glibc и поимей весёлых heisenbug’ов на musl».

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от EXL

В 20 тоже есть этот пункт про github, но мне нужно было поставить систему для других людей, где мои креды не нужны. И так бывает чаще всего(не в этом случае, но по работе чаще всего я системы инсталлю в закрытом контуре). Так что для домашнего локалхоста оно может и удобно, но в работе, имхо, лишнее.

shell-script ★★★★★
()
Ответ на: комментарий от shell-script

А я - ламерством. Если бы ты писал, то знал, что Glibc - это набор костылей и подпорок. И если твой продукт не работает в musl, то надо с ноги разраба. Если прикладуха, то ей по барабану, alpine или другие сорта.

Теперь почему молятся - системные утилиты в busybox. Прозрачность всего дистрибутива, нет systemd, что позволяет собрать РЕАЛЬНО небольшой образ для нужд, тонны свежайшего ПО, поддержка в отличии от многих платформ, для хакеров от хакеров.

Слоёв нетЪ. Глупости не постим. Если нужны Glibc, то даже здесь есть несколько подходов - flatpak или chroot. Flatpak показал себя с очень хорошей стороны - steam, skype и другие ненужные программы.

anonymous
()
Ответ на: комментарий от shell-script

Это был вопрос. :)

Если вопрос - то ответ такой, linux-image-generic и linux-image-virtual - это метапакеты, которые ставят одно и то же ядро, разница только в зависимостях (linux-firmware, linux-modules-extra у первого, которые в виртуалке не нужны, но без них на реальном железе будет не интересно).

Мало того, можно ещё в виртуалке в файле /etc/initramfs-tools/initramfs.conf поставить MODULES=dep, будет initrd.img не 30Mb, а 7Mb.

Dimez ★★★★★
()