Abort failed `dpkg --configure -a`

Ядру Linux наплевать.Загрузчик сообщает ядру, где смонтировать корневую файловую систему - обычно это начальный образ RAM-диска (initrd), но он также может быть фактической корневой файловой системой - и ядро ​​запустит процесс init из / sbin / init ( / init в initramfs), если не указано иное.

Даже расположение файловых систем ядра - / proc , / sys , / dev if udev и т. Д. - в основном зависит от пользовательское пространство, чтобы решить.

В проекте Linux Standards Base они стандартизированы для различных дистрибутивов Linux. (Ну, более или менее. Есть еще небольшие различия, например, в именах устройств, и идет разговор о слиянии / usr / bin в / bin и / usr / lib в / lib ). Его версия была принята в качестве стандарта ISO, ISO / IEC 23360. Текущая версия LSB по состоянию на октябрь 2016 года - LSB 5 .

Разработчики ядра Linux очень стараются сохранить обратную совместимость в интерфейсе пользовательского пространства. Вот почему информация о версии 2.6 очень применима к 4.4. В значительной степени только когда вводятся новые средства и интерфейсы, новые версии расходятся с более старыми, и вам нужно найти для них документацию.

Вы упомянули, что уже скомпилировали некоторые библиотеки и приложения.Если да, то используемые вами настройки времени компиляции (отметьте configure settings, - prefix и т. Д.) И каталоги, в которых эти библиотеки и приложения ищут свои файлы конфигурации (и файлы часовых поясов). для библиотеки C, интернационализации и т. д.) определите абсолютно необходимую структуру каталогов.

Linux с нуля! - это сообщество, которое разрабатывает книги о том, как скомпилировать и построить полностью рабочий дистрибутив Linux с нуля. Это не совсем минимально - вы можете опустить одни пакеты в некоторых ситуациях, удалить другие и т. Д. - но все объясняется.

Роб Лэндли хорошо известен документацией ядра Linux. Его введение к initramfs , как использовать initramfs и программирование для initramfs очень интересны, если вы хотите создать минимальную систему, которая запускается непосредственно из initramfs. , как и многие встраиваемые устройства.

Что касается systemctl или systemd в целом, я бы указал вам на его домашнюю страницу и пожелал вам удачи. Я сам ищу способы избежать этого и вместо этого использую более надежные системы инициализации, которые все еще признают философию Unix , а не сливаются в монолитный беспорядок по прихоти. (По моему опыту, первые остаются функциональными и удобными в обслуживании в долгосрочной перспективе, а вторые, хотя и часто нравятся конечным пользователям из-за совокупности новых функций и внешней полировки, в долгосрочной перспективе делают системы и системных администраторов хрупкими и неисправными.Ваш опыт и мнения могут отличаться; Я просто описываю свой.)

Когда я разработал простой тестовый USB-накопитель для оценки узлов кластера Linux, я исследовал минимальные системы Debian и CentOS, которые вы можете установить, чтобы узнать подробности, которые запрашивает OP (за исключением того, что я был не ищет минимальную систему, а небольшую легкую систему, которая может запускать те же двоичные файлы, что и в самом конечном кластере, т.е. включая базовые службы и библиотеки). Сегодня,Я бы рекомендовал посмотреть Devuan , потому что он поддерживает несколько систем инициализации. Эксперименты с ними на виртуальных машинах должны быть очень информативными.

Практические правила важнее теории или стандартов. На самом деле нет никаких обязательных стандартов, или каких-либо стандартов; даже LSB и ISO / IEC 23360 больше похожи на рекомендации для успешной совместимости. Документация ядра , извлеченная из исходных текстов ядра Linux, действительно описывает ожидания ядра, но, как уже упоминалось, их очень и очень мало, которые влияют на дерево файловой системы. И даже они, как правило, настраиваются во время загрузки или компиляции.

2
19.10.2017, 21:45
0 ответов

Теги

Похожие вопросы