Алексей Федорчук
В этом очерке будет описан первый этап претворения в жизнь основных принципов, изложенных в очерке предыдущем — установка базовой системы с Ubuntu mini.iso
.
Подготовка к установке
Для установки системы с образа mini.iso
прежде всего этот образ необходимо заполучить. Для текущего релиза (на момент сочинения этих строк таковым является Ubuntu 15.10 Wily) его можно обнаружить на мастер-сайте проекта или на любом из его официальных зеркал, например, Яндексовом. При желании установить будущий «долгоиграющий» релиз 16.04 Xenial следует зайти вот сюда. В любом случае это будет файл с именем mini.iso
размером около 40 МБ.
Установку в виртуальной машине, например, в VirtualBox’е, можно выполнить непосредственно с этого образа (как, впрочем, и с любого другого ISO-образа). А вот для инсталляции на реальную машину его нужно записать на какой-либо носитель: CD-диск, USB-флэшку (или на SD-карту, что в данном случае почти одно и то же), внешний диск с функцией эмуляции оптического привода, типа Zalman ZM-VE300 или его более современных модификаций.
На записи оптического носителя останавливаться не буду — во-первых, это описывалось бессчётное число раз, в том числе и автором этих строк (последний раз, кажется, здесь, хотя есть и несколько общеизвестных утилит с графическим интерфейсом), во-вторых сами эти устройства уже являются реликтом, поддерживаемым только магическими заклинаниями копирастов.
Для записи ISO-образов установочных дисков на USB-flash/SD-card существует масса специализированных графических утилит, некоторые из которых описаны здесь. Однако по ряду причин, в которые я сейчас вдаваться не буду, в любой Linux-системе проще всего воспользоваться CLI-утилитой dd
, и сделать это так (от root’а, права которого получены тем или иным образом):
$ sudo dd if=path2/mini.iso of=/dev/sd? bs=#M
Здесь path2
— путь к файлу образа, /dev/sd?
— имя файла устройства твердотельного носителя, bs
— размер блока записи, например, 1M
, влияющий на скорость процесса. Впрочем, при записи образа в 40 МБ последний параметр можно опустить, и тогда запись будет производиться блоками по 512 байт, хотя и медленно, но надёжно.
Здесь важно помнить три вещи:
- в качестве имени выходного файла должно фигурировать обязательно raw-устройство целиком (например,
/dev/sdf
), а не какого либо раздела на нём. Само устройство никакой подготовки не требует — оно может содержать любые разделы, несущие любые файловые системы, или быть неразмеченным вообще; - устройство или его разделы не должны быть смонтированы в существующую файловую систему;
- вся информация на целевом устройстве после записи образа будет уничтожена.
Запись образа на эмулятор оптического привода типа упомянутого Zalman’а очень проста: его достаточно скопировать в созданный на содержащемся в нём винчестере каталог _ISO
. А дальше надо просто строго придерживаться порядка действий:
- размонтировать предыдущий iso-образ, если таковой был определён;
размонтировать само устройство Zalman (обе эти процедуры легко проделать в любом файловом менеджере);
- штатным образом (соответствующей кнопкой на корпусе) отключить устройство, отсоединить его и присоединить заново;
- пролистать список устройств до нахождения
mini.iso
и назначить его текущим (то и другое также выполняется кнопкой на корпусе).
Подробности описаны в цитировавшейся ранее заметке.
Подготовив тем или иным образом установочный носитель, его следует подключить к целевой машине, то есть поместить в привод OD (если таковой сохранился), воткнуть в USB-разъём или вставить в кард-ридер. И при использовании SD-карт важно помнить: с них можно без проблем загрузиться с встроенного кард-ридера десктопов или с внешних устройств того же назначения, ибо и те, и другие присоединяются к USB-разъёмам. А вот встроенные кард-ридеры ноутбуков, за редким исключением, управляются собственными чипами, и через них загрузка напрямую с карточки, как правило, не возможна. В этом случае, опять же, требуется прибегнуть к внешнему кард-ридеру.
Теперь можно перезагрузить машину (или, по ситуации, включить питание). И обеспечить загрузку с подготовленного носителя. В BIOS или UEFI Setup всех, насколько я знаю, современных материнских плат существует возможность единоразового назначения загрузочного устройства (на материнках от ASUSTech эта опция вызывается клавишей F7, на Asrock’овских — через F11, для прочих производителей надо глядеть в описании). Соответственно, остаётся только выбрать нужное устройство из предлагаемого списка. Если такой возможности не предусмотрено — придётся зайти в BIOS и там определить первым загрузочным устройством внешний носитель. После чего «загружение совершается».
От загрузки до разметки
А начинается загрузка с Ubuntu’ева mini.iso
с появления меню загрузчика isolinux
:
В нём ничего не делать — через определённое время (то ли 30, то ли 40 секунд) вступит в силу умолчальный пункт этого меню, то есть обычная установка системы. А нам, по ряду причин, такой хоккей не нужен (почему — можно догадаться из этого материала). Так что следует побыстрей перейти к пункту нужному — Advanced options:
А из списка этих авантажных опций выбрать пункт Command-line expert install
— это обеспечит максимальную гибкость инсталляции, с одной стороны, и избавит от вопросов по выбору прикладного софта — с другой:
После загрузки ядра системы и базовых компонентов программы инсталляции появляется её меню, пока ещё не богатое и начинающееся с выбора языка:
Истинный приверженец духовных скреп и исконных ценностей здесь, вне всякого сомнения, выберет русский:
Столь же однозначен для гражданина России и её патриота выбор страны, области или региона:
А также страны, для которой выбирается русская локаль:
Дополнительная локаль, en_US.UTF-8
, в Ubuntu’евом mini.iso
выбирается по умолчанию:
И конечно же, из двух наличных локалей (не считая «прошитых» C
, C.UTF-8
и POSIX
) выбирается та, что жирнее «русистее»:
Все эти варианты после выбора русского языка интерфейса инсталлятора будут предложены по умолчанию. И, что интересно, в любом случае будет установлен полный комплект англоязычных локалей, вплоть до страны Зимбабве, даже если снять отметку с пункта en_US.UTF-8
на седьмом скриншоте. Правда, и избавиться от «лишних» локалей (а в некоторых случаях они лишние реально) после инсталляции труда не составит, о чем будет рассказано в следующем очерке.
По завершении разборок с локалями инсталлятор в следующем пункте главного меню предлагает заняться настройками клавиатуры:
Точнее, её раскладок. Для начала желая определить оную самолично. На что, впрочем, соглашаться не нужно:
А лучше указать раскладку в явном виде как русскую (английская американская будет установлена автоматически):
Вариант раскладки (в терминах инсталлятора не совсем точно именуемый просто раскладкой) по умолчанию предлагается Русский, то есть winkeys, но это дело вкуса и привычки. Мой выбор — Russian (typewriter legacy), что на языка родных осин переводится как русская печатная машинка, устаревшая (а точнее — советская, хотя когда она успела устареть, ума не приложу):
Предлагаемый по умолчанию переключатель раскладок — опять же традиционно-виндовый, Alt+Shift. Как паллиатив я назначаю традиционно-консольный CapsLock:
В дальнейшем средствами среды Cinnamon его можно будет заменить на один из немодальных, а также задать дополнительные параметры, типа назначения дополнительного «разового» переключателя, задания клавиши Compose и так далее.
Теперь предстоит определение сетевой карты:
Которое не потребует от меня никаких действий, кроме согласия с загрузкой одного дополнительного модуля:
После чего определение сетевухи произойдёт автоматически и мгновенно, плавно перейдя в настройку сети:
Что предполагает выбор оной на автомате, с при нормальном подвключении (то есть через DHCP) опять же следует согласиться (а при подключении машины через WiFi и всякие VPN’ы я с mini.iso
систему никогда не устанавливал):
В этом автоматическом процессе вручную предлагает указать только время ожидания подключения (хотя проще принять умолчальное его значение):
Далее следует задать имя компьютера, и задать обязательно, хотя и не обязательно предложенное по умолчанию, как на скриншоте:
Важно только, чтобы оно было уникальным в локальной сети (например, домашней), буде таковая имеется, и для неё определено имя домена, которое предлагается указать на следующем экране:
Этот пункт можно проигнорировать, если локальной сети нет, или она подключается к Интернету через роутер — во втором случае домен унаследует имя последнего, вроде вот такого:
Следующий этап — выбор зеркала репозиториев Ubuntu:
Оно предваряется определением протокола доступа к нему — предлагаемый по умолчанию протокол http
наиболее универсален:
Со страной размещения зеркала — вопросов не больше, чем с прочими локально-зависимыми параметрами, хотя бывали времена, когда стоило предпочесть зеркала, расположенные в стране датчан и разных там прочих шведов:
А вот для конкретного зеркала в одной отдельно взятой стране некогда победившего социализма даже и вариантов выбора не предлагается:
С прокси всё понятно: тем у кого он есть — известно, что писать, если его нет — и писать ничего не надо:
Теперь возможности инсталлятора «из коробки» (то есть с установочного носителя) исчерпаны, требуется загрузить из сети остальные компоненты программы инсталляции:
Скорее всего, все необходимые компоненты будут загружены автоматически. Но обладателям тайного знания в этой области предлагается реализовать его явным указанием компонентов нужных (я для себя ни одного такого в предлагаемом списке не нашёл):
По завершении загрузки главное меню программы установки разрастается, сообщая, в частности, о нахождении виртуального диска с драйверами от производителя оборудования (что это за драйвера и производители — для меня осталось тайной):
Тем более, что потом никаких действий с этим диском не наблюдается, а без всякого перехода последует предложение настроить пользовательский аккаунт:
Настройка эта сводится к согласию с использованием «теневых» (shadow) паролей — основному в Linux методу обеспечения их сокрытия от врагов народа:
Отказ от определения пароля для root’а — изначальная особенность дистрибутивов семейства Ubuntu:
Предложение указать полное имя пользователя — владельца создаваемого аккаунта — можно можно проигнорировать (в паспорт инсталлятор заглядывать не будет):
А вот без ввода логина не обойтись:
Как и без двухкратного ввода пользовательского пароля, который для первого пользователя предоставит доступ к административным функциям посредством команды sudo:
В отличие от многих более иных дистрибутивов, инсталлятор с mini.iso пропустит пароль любой длинны и простоты, вплоть до 123, хотя и предупредит о его «слабости»:
Принять ли предложение о шифровании домашнего каталога — определяются степенью личной паранойи, хотя по умолчанию предусмотрен отказ от оного:
После этого предлагается настроить время, то есть системные часы:
Здесь потребуется согласие с использованием для этого протокола NTP, адресом предлагаемого по умолчанию сервера (который можно задать и вручную) и правильностью именования часового пояса (в моём случае — Europe/Moscow):
После чего наступает черёд самой ответственной процедуры в ходе установки системы при установке — разметки целевого носителя и создания файловых систем (то есть форматирования разделов).
Разметка и форматирование
Процедура разметки носителей начинается с их определения системой:
Дело это происходит тихо и незаметно, завершаясь предложением приступить собственно к разметке:
По умолчанию, как обычно, предлагается автоматическая разметка с использованием всего наличествующего диска (или, если таковых больше одного, первого из них). Этот вариант следует отклонить в пользу пункта Вручную:
Этот выводит список всех накопителей данной машины. Однако ниже будет рассмотрен простейший вариант, с единственным диском:
На котором можно, для чистоты эксперимента, создать новую таблицу разделов.
Разумеется, если на диске уже есть разделы с установленными системами и (или) данными, этого делать не следует (как оно и предлагается по умолчанию). Но в моём, модельном, случае я это предложение принимаю (ибо реально другие системы и тем более данные расположены у меня на более иных дисках):
Выбор типа таблицы разделов (или, иначе говоря, стиля разметки) из выведенного списка практически практически сводится к двум альтернативам — msdos
и gpt
. Вдоволь наэкспериментировавшись в последнее время со вторым вариантом, я не обнаружил в нём никаких преимуществ. И потому вполне сознательно выбираю стиль msdos
, ретроградный или, напротив, старый добрый:
В результате чего на диске можно видеть занимающее весь его объём неразмеченное пространство:
Что с ним делать — предлагается определить на следующем шаге. Разумеется, отказавшись ранее от автоматической разметки, нет смысла прибегать к ней и сейчас, а надлежит создать новый раздел:
Под который я отдал всё неразмеченное пространство (в реале — 120 «липовых» гигабайт, или 111 ГБ):
Разумеется, его нужно определить как первичный:
По умолчанию ему будут предложены следующие параметры:
С первым пунктом умолчаний, то есть создаваемой файловой системой, ext4, стоит согласиться. Ибо это самый простой, надёжный и универсальный вариант из всех предлагаемых:
Разумеется, файловая система на единственном разделе целевого носителя должна быть корневой. А вот параметры её монтирования стоит подкорректировать, задав опции discard (поскольку целевой носитель у меня — SSD) и noatime:
Последняя опция полезна в любом «десктопном» случае. Опция nodiratime при этом не нужна, ибо каталог — частный случай файла. А опция relatime требуется только в некоторых специальных случаях. И кстати, на смену ей идёт нынче опция lazytime, поддерживаемая ядром Linux, начиная с версии 4.2.0, которая имеет место быть в Ubuntu Wily, что в инсталляторе отражения (пока?) не нашло.
Очень не вредно будет задать и метку файловой системы (label), особенно если на данной машине установлено более одной операционки. Потому как другими системами раздел без метки буде опознаваться или по неуклюжему UUID, или по безликому объёму. Метке же можно придать осмысленное значение:
Процент от объёма файловой системы, зарезервированный за root’ом и недоступный для пользовательских операций, на мой взгляд, нынче можно смело свести к нулю:
В результате схема разметки целевого диска примет следующий вид, на котором можно успокоиться, перейдя к пункту Настройка раздела закончена:
Поступив аналогично и на следующем этапе:
После чего резонно отказаться от возврата в меню разметки:
И согласиться с записью изменений, пока ещё только запланированных:
На этом разметка завершается… —
От разметки до рестарта
…и начинается собственно установка системы. Для перво-наперво — базовых её компонентов:
Итог чего — получение минимальной консольной системы, способной загружаться, опознавать оборудование, работать с сетями и управлять пакетами.
В ходе этой процедуры будет предложено выбрать одно из ядер — впрочем, вариант по умолчанию, linux-generic
, представляется оптимальным, так как это — метапакет, устанавливающий самое новое ядро из доступных в рамках данного релиза:
Вариант же linux-signed-generic
предназначен для машин с включённым Secure Boot, если последний реально нужен (в чём я лично сильно сомневаюсь), или его почему-либо невозможно отключить.
После этого логичным выглядит вопрос о том, как компоновать initrd
— всеми доступными драйверами, или только необходимыми для данной конкретной системы. Ответ на него очевиден: если собирать систему для себя, любимого — выбирается второй вариант, если думать об отдалённой перспективе, то есть распространении системы с нескучными обоями, а также с блэк-джеком преферансом и шлюхами порядочными женщинами — второй:
Поскольку в состав базовых компонентов входит управитель пакетами, то есть apt
, он нуждается в настройке. И это — следующая стадия завершающего этапа установки:
Настройка эта сводится к ответам на серию вопросов:
- использовать ли так называемый «несвободный» (то есть распространяемый с какими-либо ограничениями, но официально поддерживаемый разработчиками дистрибутива, включённый в раздел
restricted
) софт?
- использовать ли пакеты из раздела
universe
(то есть полностью свободные, но поддерживаемые сообществом)?
- использовать ли пакеты из раздела
multiverse
(распространяемые с ограничениями, подобноrestricted
, но поддерживаемые сообществом, как иuniverse
)?
- использовать ли пакеты, заблаговременно перенесённые в текущий релиз из разрабатываемой версии (так называемые
backports
)?
По умолчанию для всех этих вопросов предлагаются положительные ответы, и резонов не соглашаться с ними нет ни малейших. Как и отказываться от доступа к разделу обновлений безопасности:
Что же до доступа к «партнёрским» репозиториям — дело вкуса. Лично я не нашёл в них ничего, для себя полезного. Кроме того, нужно помнить, что там встречаются не только программы, не вполне свободные, но и вполне платные.
Впрочем, какие бы ответы на все вопросы ни были даны при инсталляции, изменить политику доступа к репозиториям можно будет и потом. Теоретически она могла бы повлиять на следующую стадию процесса установки — Выбор и установка программного обеспечения:
Однако практически выбранная в самом начале установка в режиме Command-line expert install никакого выбора не оставляет: молча, без всяких яких, заканчивается установка пакетов базового набора, входящих, все как один, в основной раздел репозитория main
. Который, разумеется, был подключён автоматически ещё на стадии установки базовой системы (иначе откуда брались бы её компоненты?).
После установки пакетов возникает вопрос — а каким образом они должны обновляться в дальнейшем? Ответ, предлагаемый по умолчанию — Без автоматического обновления, то есть вручную. Что согласуется и со здравым смыслом:
Наконец, финал инсталляции — установка системного загрузчика, каковым по умолчанию предлагается GRUB во второй своей ипостаси, хотя и возможность установки LILI пока сохраняется. При наличии же на машине других операционок часто имеет смысл Продолжение установки без системного загрузчика — очень важная опция, утраченная в графическом инсталляторе Ubuntu:
Однако в нашем случае отказываться от GRUB’а нет никакого смысла. Как и от установки его в MBR:
В случае однодисковой машины никаких вопросов больше не последует, GRUB установится нечувствительно для наблюдателя. Если дисков в машине больше одного — на выбор будет предложен их полный список, есть и возможность указать устройство вручную:
После этого главное меню намекает на то, что пора завершить установку. Однако перед этим есть смысл проделать ещё одну процедуру — обратиться к пункту Изменение уровня важности debconf:
И здесь выбрать низкий уровень важности вопросов — он обеспечивает максимальную их детализацию при конфигурировании всяческих пакетов, поддерживающих debconf
:
Вопреки легендам и мифам, это полезно не для начинающих, а для вполне опытных применителей, знающих, что на детально задаваемые вопросы следует отвечать (именно им).
После никаких причин отказываться от завершения установки не остаётся:
По ходу завершения установки последует вопрос о времени в системных (точнее, «железных») часах, на который ответить, как предложено по умолчанию, то есть положительно:
А затем появляется последнее предложение инсталлятора — перезагрузить систему:
От которого, разумеется, нельзя отказаться. И через некоторое время, без всякого меню GRUB (если на машине имеется только одна система) можно будет наблюдать приглашение к авторизации в «голой» консоли:
Выполнив которую и дав команду
$ df -h
можно ознакомиться с итогами установки в численном выражении:
Конечно, в эти 1,2 ГБ чисто консольной инсталляции вписываются только компоненты, обеспечивающие запуск, самоподдержание и, главное, наращивание системы. Которую ещё только предстоит превратить в нечто пригодное для практического применения. Это превращение и будет темой следующего очерка.
ну для полноты информации можно было бы вывести что-то вроде ‘dpkg -l | wc -l’
Можно было бы. Забыл. И почти всегда забываю. А то было бы любопытно проследить, как изменилось число «суперминимально наинеобходимейшых» пакетов за эти годы :)
жаль, очень интересно
у меня на виртуально-тестовой lmde после ненавязчивой «чистки» осталось чуть меньше 2000 пакетов, впечатляет …
«долгоиграющий» релиз 16.04 Xenial после установки с mini.iso, которая проходит без «сучка и задоринки», запускаться наотрез отказался — загрузка останавливается после вывода на экран строки: /dev/sda1 clean… Debian 8.4 при установке с mini.iso на этот же ноут (MSI CR70) заработал как и положено и по инструкции alv был превращен в LMDE Betsy 2 Cinnamon сo своим набором программ.
itaved, если ещё не поздно, попробуйте нажать Alt+Control+F2-6 :)
Сделал всё по инструкции, и в конце вместо консоли открылся «Installer boot menu». VirtualBox подготовил как вы указали. mini.iso использовал Ubuntu 14.04 LTS «Trusty Tahr» — не думаю, что есть серьёзная разница)
Bobic, а образ CD в виртуалке отключить не забыли?
alv, не думал что его надо было отключать.
Спасибо.