[Comm] Re: Installer and system bugs. Continuation.
Anton Kovalenko
=?iso-8859-1?q?a=5Fkovalenko_=CE=C1_mtu-net=2Eru?=
Пт Дек 27 01:02:09 MSK 2002
>>>>> Aleksey Novodvorsky writes:
> На самом деле, меня бы больше интересовали замечания по
> программе установки Debian (не претензии к UI, а по существу).
> Мне она представляется более правильной концептуально.
Ну, я мог бы попробовать... Но есть загвоздка -- собственно
"инсталлятор" в Debian не занимается установкой пакетов. Только ядро и
базовая система ставятся инсталлятором, а дальше -- работает dselect,
apt, tasksel... в общем, стандартные средства управления пакетами на
_работающей_ системе.
Этот принцип имеет смысл позаимствовать -- свежепоставленный Debian
_всегда_ содержит корректный набор пакетов с точки зрения apt.
На тот случай, если кто-нибудь решит делать инсталлятор по образцу
Debian, освещу "наши грабли", на которые желательно не наступать:
* Проверка свободного места. Этим у нас никто не занимается. Если
пользователь навыбирает слишком много пакетов, установка одного из
них прервётся на середине (возможно, и на середине
postinst-скрипта). Надо учесть, что для Debian состояние пакета "Not
fully installed" -- более-менее привычная ситуация. Для rpm-based
дистрибутива здесь могут скрываться принципиальные проблемы --
например, требуется ли от установочных скриптов rpm "идемпотентность"?
Если postinst-скрипт из rpm прервать на середине и перезапустить,
есть ли гарантия, что он отработает корректно?
* Разбиение на разделы. Пользователь, который вообще ничего не знает о
понятии раздела, в Debian с этим не справится. Но это пол-беды: главное,
что пользователь, который знает, что такое fdisk, но не знает, что такое
Unix, с вероятностью 90% сделает себе один раздел "/", и всё. Никаких
"провоцирующих подсказок" ему не положено.
С другой стороны, использование обычного cfdisk в инсталляторе --
идея хорошая. То есть, давнишнего пользователя Linux не ставят перед
выбором: либо пользуй мощный, но слишком уж "недружественный" fdisk,
либо полюбуйся, какой "Disk Druid" мы в нашем инсталляторе
нарисовали "для чайников". А cfdisk -- и дружественный, и привычный.
Вывод: разбиение на разделы имеет смысл проводить с помощью
cfdisk, при этом можно пользователя-"неэксперта" попинать на предмет
"вы _точно_ не хотите создать отдельный раздел для /home, /usr,
/var?". Чтобы пользователь подумал, пошёл обратно в cfdisk и сделал
как советуют.
* Настройка консоли. По нынешним временам, убогое "выберите раскладку
клавиатуры" -- не канает. Нужен ортогональный выбор кодировки,
раскладки, клавиш переключения... Что-то вроде console-cyrillic из
Debian, но ещё гибче.
В Debian console-cyrillic ставится отдельно, и меня это не
напрягает. Но в новом инсталляторе ALT такую штуку можно взять в
качестве основного средства для настройки консоли.
* Локаль per-user. В Debian есть language-env, но с ним тоже есть
беда: установка LANG пишется в rc-файл шелла, а сессия X оказывается
"безлокальной".
Вывод: сделать настраивалку _пользовательской_ локали имеет смысл,
но в ней нельзя забывать про иксовую сессию.
* Install: everything. В Debian такого нет и быть не может. Но для
дистрибутивов, не содержащих конфликтующих пакетов (какой-нибудь
гипотетический однодисковый "poorman's ALT", на базе небольшого
подмножества Сизифа) -- такой режим может иметь смысл.
* "Аппаратно-ориентированные" пакеты. По-моему, пригодилась бы
интеллектуальная приблуда, которая предлагала бы нечто вроде: "Вот у
вас есть IrDA, не поставить ли irda-utils? Вот у вас сидюкописалка,
не поставить ли cdrecord? Вот у вас видюха от NVidia, не поставить
ли соответствующий драйвер?". В Debian этого нету, а для начинающего
пользователя -- хорошо бы. Но, конечно, эта штука должна быть не слишком
навязчивой и вполне отрывабельной.
* Sys Admin Survival CD. Так называется один из CD-дисков RedHat, играющий роль
"большой-большой rescue дискетки". В Debian такого нет.
А это на редкость полезная штука -- до недавнего времени я им
пользовался (хотя последний RedHat у нас давно снесён), потом сделал
себе "Debian Live" CD -- загрузочный CD с полноценным debian.
Большой Rescue-CD имеет смысл включать в "навороченные" варианты
дистрибутива. Для "менее навороченных" можно предусмотреть
специальный вариант загрузки с инсталляционного диска. Но важно
следующее: набор из busybox, sash и ещё нескольких полезных утилит
-- маловат. Более-менее приличный шелл, mtools, сетевизмы (ssh, ftp,
smbmount, nfs-клиент), редактор (nvi, а лучше vim-minimal) -- обязательны
для нормального rescue-CD.
Такие дела. Если интересно, могу ещё мыслей надумать. Напомню, что мои
"пожелания" -- в каком-то смысле чистая абстракция: я не ставлю себе
дистрибутивов ALT. Разве что за патчами в srpm лазаю иногда... Так что
моим рекомендациям следует давать более низкий приоритет, чем
требованиям постоянных пользователей.
--
With Best Wishes, Anton Kovalenko /* http://kovalenko.webzone.ru */
#!/usr/bin/wish - best wish I have for you!
Подробная информация о списке рассылки community