Архивы: по дате | по разделам | по авторам

И ты, root?

Архив
автор : Алексей Федорчук   03.07.2001

С чего начинается ONIX - понятие, под которым можно объединить все изобилие открытых и свободных Unix-подобных операционных систем? С непреодолимого желания посмотреть, что это такое. Чувство это сродни тем, что двигали казаками Атласова, конкистадорами Кесады или бароном Толлем и его спутниками, отправившимися на поиски земли Санникова. И рациональному объяснению оно не поддается, так что не буду и пытаться.

С чего начинается ONIX - понятие, под которым можно объединить все изобилие открытых (в отношении кода) и свободных (как с точки зрения условий распространения, так и цены) Unix-подобных операционных систем? С непреодолимого желания посмотреть, что это такое. Чувство это сродни тем, что двигали казаками Атласова, конкистадорами Кесады или бароном Толлем и его спутниками, отправившимися на поиски земли Санникова. И рациональному объяснению оно не поддается, так что не буду и пытаться.

Однако для начала хорошо бы представить себе предмет разговора. А это, в первую очередь (а также вторую и третью), - Linux во всех его ипостасях. Ибо именно он стал в последние годы символом мира Open Sources. Хотя скидывать со счетов классово близкие *BSD-системы тоже не следует.

Linux’ов в природе существует множество. На одном www.linuxlinks.com, например, только полноразмерных универсальных дистрибутивов можно насчитать многие десятки. Не говоря уже об облегченных вариантах специального назначения - для proxy, роутеров, почтовых серверов (часто выступающих под лозунгом «Linux на одной дискете»).

Выбрать что-либо среди этого изобилия начинающему ONIX-пользователю нелегко. Я немало времени затратил на поиски идеального дистрибутива. Не могу сказать, что преуспел в этом деле, но кое-какой опыт приобрел. Им-то и хочу поделиться.

Существуют различные классификации дистрибутивов: по происхождению - от Red Hat ли, от Debian или Slackware, по назначению - серверные или настольные, по формату пакетов - rpm-based или deb-based, или вовсе использующие усовершенствованные архивы tgz. Однако для пользователя, выбирающего себе систему не только по уму (то есть функциональности), но и по сердцу (идеологически близкую и эстетически приятную), подобная классификация дает очень мало.

В этом плане более интересным представляется разделение дистрибутивов Linux на дружественные к пользователю и, по выражению Клиффорда Вольфа 1, разработчика Rock Linux, дружественные к администратору.

Представители первой группы развиваются в направлении предоставления пользователю все больших и больших возможностей. После чего (опять же цитирую Клиффорда) «администратор проводит много времени, дезактивируя дружественные по отношению к пользователям функции», обосновывая это тем, что они отрицательно влияют на безопасность системы.

Казалось бы, вывод ясен: народу не нужен дистрибутив, дружественный к администратору. Ведь ему, народу, возможностей бы поболее, ведь так?

Не совсем. Речь все же идет о системе хоть и настольной и индивидуальной, но изначально многопользовательской. И пользователей этих даже на домашней машине - минимум двое: я, любимый, как user, и опять же я, любимый не менее, - как root. И что user’у на пользу, то root’у если и не смерть, то головная боль - точно.

Поясню на примере. Во многих новых дистрибутивах появилась модная функция - автомонтирование сменных носителей (в Linux Mandrake она носит гордое имя - supermount). Испокон веку в Linux и других ONIX‘ах (да Unix’ах тоже) монтирование накопителей, в том числе и сменных, было неотъемлемой привилегией root’а, что он и проделывал явным образом, дав команду mount /dev/имя_устройства /точка_монтирования и не забывая при этом по окончании надобности размонтировать устройство обратно командой umount /точка_монтирования. Как говорится, во избежание. Конечно, при желании root мог поделиться своей привилегией с благонамеренным user’ом, дав тому соответствующее право. Но и при этом user не был избавлен от необходимости монтировать и (особенно!) размонтировать носители явным образом.

Что ж мы видим ныне? Картина, с одной стороны, отрадная: вставляем CD, дискету ли, или там Zip какой в должное место, легкий щелчок на иконке рабочего стола KDE - и содержимое носителя перед глазами. Или того лучше: обращаемся к нужному подкаталогу в каталоге /mnt - и соответствующее ему устройство монтируется автоматически.

Однако всё имеет свою оборотную сторону - размонтирование. Теоретически это должно бы происходить, если к устройству нет обращения. Но, как известно, «теоретически она лошадь, а практически она падает». И автоматического размонтирования зачастую не происходит - что, конечно, можно считать ошибкой некоторых программ, которая будет исправлена в грядущем… Однако вспомним и о том, что ВСЕ файловые операции в Linux кэшируются в ОЗУ, и между отдачей команды umount и собственно размонтированием существует некий люфт во времени (для Zip - весьма приличный), когда извлечение носителя может иметь последствия печальные.

Конечно, неразмонтированный CD-ROM из привода не вынешь без шила. Но дискету-то можно, да и Zip, что бы ни утверждалось по этому поводу в литературе, - тоже (проверено собственноручно). И обнаружив на них по приходу на службу вместо жизненно важных файлов и каталогов некую псевдоквазию, поневоле вздохнешь по временам mount/umount, а по возвращении домой тут же полезешь в /etc/fstab на предмет отключения всяческого super- и auto-монтирования - ручками оно все же надежнее…

Это лишь один (и не самый печальный) случай, когда физическое лицо, единое в двух, так сказать, юридических лицах - root’а и user’а, - входит в противоречие с самим собой. И потому даже для настольного применения не стоит с порога менять дистрибутивы, дружественные к администратору, на дистрибутивы, дружественные к пользователю.

Конечно, последние (Red Hat и его клоны - Mandrake, ASPLinux и т. д., Caldera и особенно Corel Linux) заботливо проведут пользователя через все этапы установки - разбиение диска, выбор пакетов, контроль их зависимостей, конфигурирование и т. д. (рис. 1). А соплеменные пакеты (Mandrake RE и ASPLinux) - даже избавят от тягот локализации: начать работу с такой системой можно сразу по окончании ее инсталляции.

Однако расплатой за это будут даже не гигабайты дискового пространства (в случае с Mandrake - более 4 Гбайт при типичной установке), - при нынешних дисках грех это невеликий. Главное же - отсутствие понимания того, что же все-таки установлено в системе и для чего оно нужно.

Вблизи другого полюса - Slackware. Большая часть того, что в Red Hat проделывается легким движением мыши, здесь требует несложной и понятной, но все же ручной работы. Однако за эталон дружественности к администратору я принял бы OpenBSD. Здесь абсолютно всё, кроме базовых компонентов системы (рис. 2), придется устанавливать вручную - по сети ли, из коллекции портов, или из пакетов с локального носителя. Зато назначение каждого файла в готовой системе будет понятно.

Конечно, в таких системах даже элементарные настройки - например, принтера или записывающего ATAPI CD-R/RW - превращаются в задачу нетривиальную. И потому я отнюдь не призываю ставить OpenBSD или Slackware поверх Mandrake или ASPLinux. Однако отдав дань уважения себе как user’у, не подумать ли и о своих интересах в инкарнации root’а? А главное, не подумать ли об этом разработчикам дистрибутивов? И тогда легкость установки и настройки ASPLinux будет сочетаться с прозрачностью структуры OpenBSD - и все во имя человека, все для блага человека.

[i40236]


1 (обратно к тексту) - Русский перевод - на http://linux.perm.ru/doc/linux/ch-dists/choix-distri.html.
© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.