LINUX.ORG.RU

Arch Linux перемещает все исполняемые файлы в /usr/bin

 , , ,


2

5

Прошло без одного дня 4 месяца с тех пор, как Arch Linux отказался от SysV Init в пользу systemd, и вот новое серьёзное изменение в структуре дистрибутива. Очередное обновление filesystem принесло с собой серьёзные изменения:

  • Все исполняемые файлы из /bin, /sbin и /usr/sbin перемещаются в /usr/bin;
  • Файлы библиотек из /lib — в /usr/lib
  • Для совместимости, /bin, /sbin и /usr/sbin теперь являются всего лишь символическими ссылками на /usr/bin, а /lib — на /usr/lib соответственно

Обновление потребует некоторых ручных действий от пользователя (см. подробности).

Ранее подобное решение уже было принято в дистрибутиве Fedora.

О причинах решения в рассылке разработчиков

>>> Подробности

★★★★★

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

Ответ на: комментарий от gh0stwizard

Ты спутал init и initrd.

Ничего я не путал. Это ты меня не правильно понял. У тебя две fs важные для загрузки initrd (или initramfs) и /. Что будешь делать если одна из них развалится?

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

А вот что ты будешь делать когда слетит /usr вместе с /lib, который тоже теперь в /usr ? :)))

Я уже сказал: livecd.

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

Что будешь делать если одна из них развалится?

То что я описывал выше. У меня /boot всегда отдельно, всегда под ext2 и всегда размонтируется автоматом после загрузки ядра - да-да, есть такие опции у mount. Так вот, реальный случай у меня был, посыпался /usr раздел, гружусь в safe mode, копирую все что можно на другой диск (подключил для этого), правлю /etc/fstab и перегружаюсь, все чики-пуки. В новой «редакции» все что ты сможешь сделать, это вытащить диск, вставить новый и заливать систему с нуля!

Понятный юзкейс?

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

В новой «редакции» все что ты сможешь сделать, это вытащить диск, вставить новый и заливать систему с нуля!

Почему?

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

У меня /boot всегда отдельно, всегда под ext2 и всегда размонтируется автоматом после загрузки ядра - да-да, есть такие опции у mount.

И как это связано с тем, что из / переместили в /usr? У тебя же все в /boot?

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

Почему?

Все. Проехали. Не люблю спорить с людьми, которые не воспринимают чужие точки зрения - они для них просто не существуют :) Поймешь когда навернется /usr вместе с /usr/lib/modules/gentoo-3.15.1.20

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

Кисо, обиделсо? И как отвал /usr повредит initrd?

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

У тебя же все в /boot?

На пальцах:

/boot - загрузочный раздел (помечен меткой MBR). В нем находится kernel, initrd/initramfs и grub.cfg

/
|
+--->/lib/modules со всеми модулями ядра
+--->/bin - утилитки rm, ln, mv, login, bash и т.п.
+--->/sbin - утилитки ifconfig, modprobe, rmmod, lsmod, fdisk, swapon, swapoff и т.п.

Теперь задумайся что будет, если все из / это будет в /usr и этот раздел у тебя навернется? Не забывай что там же у тебя еще куча другого софта, доки, которые постоянно обновляются твоим чудесным aur'ом.

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

У меня /boot ... всегда размонтируется автоматом после загрузки ядра

Зачем лишние сущности? Разве не проще монтировать /boot только если требуется что-то поменять на этом разделе и не монтировать по умолчанию? Или загрузчик настолько экзотичен, что зачем-то требует смонтированного *ядром* /boot для загрузки (кстати какой)?

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

В смысле почему я буду ставить все с нуля?

У тебя даже ядро не загрузится, а если раздел /boot отдельно, то конечно загрузится. Но вот если у тебя в твоем initrd/initramfs что-то не так и не будет чего-то не хватать... Вобщем, раньше я прекрасно жил без initramfs, это лишняя ерунда по сути и все испортил чудесный udev, не без Поттеринга, которые решили, что раз /usr раздел отдельно то для ускорения загрузки заставим всех использовать ramfs. Нет udev, а есть devfs или вообще ручками девайсы насоздавать в /etc/inittab, то никаких проблем у ядра с загрузкой драйверов нет и не было. Проблема была только тогда, когда / вместе с модулями находился на кривом разделе под каким-то кривым драйвером рейд-массива. Может у Поттеринга было просто сложное детство, как знать :)

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

Кисо, ну ты не паникуй

Я тебе не кисо.

Я тебя уже пятый раз спрашиваю, а что будет если / навернется?

Вынь да полож будет муж делать по ночам :)

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

Ну, точно обиделсо.

Ты можешь четко ответить, что ты как уж на сковородке. Ты все время напираешь на разлет /usr. Чтож бывает, а разлет / - что ты с ним будешь делать? Или развал загрузочного образа?

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

Ты все время напираешь на разлет /usr

/usr - раздел очень большой и в который довольно частно вносятся изменения. Шанс замозолить его чуть меньше чем у /var но намного больше у /

/ - будучи отдельным разделом, занимает около 500Мб. Данные в него пишутся редко и в некоторых случаях его удобно монтировать read-only. Шанс его вылета намного ниже, чем у /usr

Что будет если слетит / - по сути слетит вся система. Возможно спасет initramfs. Только вот initramfs в данной схеме менее всего нужен.

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

Это не ответ на вопрос почему надо переустанавливать. Можно загрузится с livecd, восстановить fs и перезгрузится.

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

/usr - раздел очень большой и в который довольно частно вносятся изменения.

У меня на боевых серверах где-то раз в неделю обновление приходит. К тому же /usr можно делать в ro и перемонтировать перед установкой, поэтому разлет fs мало зависит от её объема.

К томуже, раз ты напираешь на сервера, то у меня средний размер /usr 600М, а с корнем станет 900 - не велика разница.

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

Гуру слился из разговора не ответив на вопросы. Пичалька. Действительно, куда катится ЛОР.

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

Данные в него пишутся редко и в некоторых случаях его удобно монтировать read-only.

А /usr всегда можно в ro монтировать, поскольку /etc там нет, а все изменения вносятся только пакетным менеджером.

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

Замонтируй! Будь мужиком. Вобщем, делай как знаешь. Ведись на маркетинговые штучки, кругом тебе только добра и желают, да.

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

Да чтож ты обиженый такой. Ответь мне на вопросы, чего сливаешься, то?

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

Какие-то изменения ради изменений получаются.

во-во, о том и речь.

А если частые обновления не интересны, то почему тогда имеенно Арч? Я как успокоился так на дебиана переполз, стабильного )))

tuxy-jahn
()
Ответ на: комментарий от gh0stwizard

У меня /boot всегда отдельно, всегда под ext2 и всегда размонтируется автоматом после загрузки ядра

о, аналогично )

В новой «редакции» все что ты сможешь сделать, это вытащить диск, вставить новый и заливать систему с нуля!

Даже более интересно посмотреть как ребята будут свои livecd юзать через ipkvm напр. )) Впрочем чтоб новый винт воткнуть всё равно индус на том конце понадобится..

tuxy-jahn
()
Ответ на: комментарий от tuxy-jahn

А если частые обновления не интересны

изначально были интересны, точнее даже процесс обновления, штатный, без косяков (не поверите, но в 2007-2008 даже с полугодичными обновлениями косяков не было, и это не читая новости на archlinux.org - теперь без этого никак), дистрибутива, без полной переустановки (про дебиан вкурсе). Кроме того, интересовал некий круг приложений, которые хотелось иметь свежими.

Но больше всего мне понравился пакетный менеджер, хотя вру, даже не он, а спеки для создания новых пакетов - простые и функциональные, получалось крайне просто опакечивать то, для чего пакетов не было.

Собственно сейчас больше превалирует второе. Пока альтернатив не находится (точнее они есть, но не без косяков)

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

В линуксе за это отвечал всегда /boot - 100Мб для нежадных.

Гонишь дадько. Есть такая хрень - модули ядра. Они лежат на файловой системе в /lib/modules. Ok? И становятся доступными только тогда, когда файловая система примонтирована. Ok? А теперь представь: /lib/modules находится на файловой системе, которая не вкомпилена в ядро (например... xfs). Ядро пытается примонтировать root раздел... и облом!

Выхода два:
1. Вкомпилить нужные модули в ядро. Минусы: мы не знаем, какую файловую систему пожелает использовать для своей системы пользователь, и что, вкомпиливать ВСЕ файловые системы в ядро? А не жирно будет? А если речь идёт не только о файловых системах, а о каком-то специфичном драйвере для RAID-контроллера или сетевой карты (для монтирования сетевого диска для бездисковых станций)? Всё это предварительно вкомпиливать в ядро? А если драйвер распространяется отдельно?

2. Использовать для этого initrd: легко кастомизируется, не нужно пересобирать систему, ядро само по себе можно сделать максимально «лёгким», вынеся что можно в модули, которые будут подгружаться по мере необходимости. Минусы: дополнительные требования к памяти на этапе начальной загрузке, необходимость времени на загрузку и распаковку образа в память.

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

Без /boot доступного для grub

более корректно: доступного загрузчику.

Есть ещё олдскульные мены, кто lilo юзает, я вот syslinux использую (выкинули grub legacy, а конфиг grub2 меня приводит в уныние, syslinux же пока решает поставленные перед ним задачи обладая конфигом аля grub1).

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

не вкомпилена в ядро

Епрст. Ну что за ССЗБ в голове? Ты еще скажи, что для сетевухи, одной единственной (sic!), ты компилишь модуль.

Для серверных решений вообще надо руками себе ядрышко пересобирать, даже в rhel. Но это под силу не каждому админчегу. Также как не под силу админчегу в яндексе или еще где собрать это ядро в виде rpm/deb, создать локальное хранилище и прописать его в source.list.d

Но я отвлеклся. В контексте десктопа проблема в том, что мейнтейнеры некоторые соблюдают определенные правила лицензирования и соответственно могут не включить по дефолту какую-либо фс. Например, очень часто все «боятся» мою любимую jfs. И в таком случае, правильно делать как я писал выше:

/ - ext3, 500 MB
/home - jfs
/opt - jfs
/data - jfs

и т.п.

Кто думает, что если насадить на / другую левую фс, которая скомпилена модулем - ССЗБ. Реально. Ни какого выйгрыша никакая фс для каких-то жалких 500Мб, где от силы может быть несколько тысяч файлов не даст. Не даст и все. Но есть упорытые....

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

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

Ок, давай для простоты и ясности: под какую конкретно задачу, ты пересобирал ядро, какой тюнинг, относительно дефолтной конфигурации делал и какой выигрыш, относительно той же дефолтной конфигурации, это дало. Цифры не врут. Люди - да.

Кроме того, если почитаешь выше мои посты: я против мержа bin директорий. Хотя бы из соображений гибкости, которую ты и проповедуешь. Даже на домашней машине у меня достаточно вдумчивое разбиение (там работают всё домочадцы, я сейчас редко до него добираюсь, плюс к тому, раньше он использовался как файл-помойка и платформа для разных экспериментов... Арчик больше я там обновлять не буду), тогда как на нетбуке я не вижу смысла заморачиваться с оным и там просто / + swap. Гибкость. И возможность подстроиться под любые тараканы.

А на серьёзных сетевых установках у меня была солярка... там ядро не сильно пересоберёшь :)

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

Цифры не врут. Люди - да.

Удобство своего ядра в том, что времени на его пересборку надо в 10-20 раз меньше, чем у тех, кто не знает что как и зачем. И если ты считаешь, что пересборка дает выигрышь в производительности, то огорчу тебя. Исходники те же, патчи те же и все одинаково. Кастомизация ядра дает иные приемущества. Так что циферек не жди.

я не вижу смысла заморачиваться

Ну а я о чем? ССЗБ да и только.

Гибкость.

Не путай «не хочу» и «не могу». В твоем случае ты можешь, но не хочешь. Почему? Это другой вопрос. Важно то, что ты себе кладешь грабли перед носом и понимаешь это.

А на серьёзных сетевых установках у меня была солярка... там ядро не сильно пересоберёшь :)

А у некоторых винда или hp-ux, но мы говорим о линукс системах. Пффф...

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

И если ты считаешь, что пересборка дает выигрышь в производительности, то огорчу тебя.

процитируй, где я говорил про выигрыш в производительности? ;-) Если будешь апеллировать к фразе «Цифры не врут» - убейся! Как минимум две цифры ты привёл:

надо в 10-20 раз меньше

вот только смысл всего предложения, откуда это взято, от меня ускальзывает. Меньше чего? Кто эти кто-то, кто не знает что как и зачем? Да и чего именно они не знают? :)

Хотя, если твой профиль не врёт, в питере сейчас 5 утра: или сильно рано и ещё не проснулся, или ещё не ложился и мысли путаются.

Ну а я о чем? ССЗБ да и только.

тююю... ну давай же аргументировано, в чём здесь злобность заключается?

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

процитируй, где я говорил про выигрыш в производительности?

Цитирую

Ок, давай для простоты и ясности: под какую конкретно задачу, ты пересобирал ядро, какой тюнинг, относительно дефолтной конфигурации делал и какой выигрыш, относительно той же дефолтной конфигурации, это дало.

ну давай же аргументировано, в чём здесь злобность заключается?

Я не понимаю, что ты от меня хочешь. Рассказал какая раньше была «проблема», что если драйвер фс под / собран в виде модуля то имеется два пути. Хотя у меня никогда этой проблемы не было. Сейчас же спрашиваешь, что ты делаешь не так. Откуда я знаю? Может у тебя действительно есть только / + swap и / ты отформатировал в виде фс, собранной модулем. Так вот это твои проблемы, а не проблемы дистрибутива или еще кого-то. Они пилят свои дистрибутивы, я пользуюсь теми, где люди еще не до конца рехнулись и понимают почему разделение по FHS это хорошо проверенная временем система и менять из-за того, что ее придумали 20 лет назад нет смысла. Точка.

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

Надежда умирает последней. Хотя уже даже завонялась.

h4tr3d ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.