Нужно ли разбивать диск на разделы linux
Итак, пора найти на вашем компьютере место для Ubuntu. Скажу сразу: на самом деле можно особенно не озадачиваться этим, а поставить Ubuntu из-под Windows и на раздел с Windows с помощью Wubi. Однако я крайне не рекомендую такой способ, поскольку он не является «родным» для Ubuntu и ведет к возникновению совершенно непонятных проблем.
Для установки Ubuntu, вообще говоря, вполне достаточно 7 гигабайт свободного места. Однако я бы рекомендовал выделить хотя бы 15, чтобы было место для сохранения различных документов и других пользовательских файлов.
Если у вас есть целый раздел, который вы полностью готовы отдать под Ubuntu - очень хорошо. Иначе видимо придётся отрезать кусочек от какого-то диска с данными. Не бойтесь, в этом нет ничего страшного, однако я сразу хочу предупредить: изменение разметки винчестера - опасная операция, чреватая потерей всего нажитого непосильным трудом. Поэтому крайне рекомендуется сохранить все важные данные в каком-нибудь укромном месте перед внесением изменений в разметку винчестера.
Надо сразу заметить, что Ubuntu абсолютно без проблем поддерживает диски Windows, поэтому если вы решили оставить Windows на своём компьютере, то вы спокойно сможете обращаться из Ubuntu к файлам, хранящимся на разделах Windows. А вот обратное, к сожалению, не верно. Windows не умеет работать ни с одной из файловых систем Linux (хотя все они являются полностью открытыми), поэтому Windows не увидит ни одного раздела Linux, Windows их просто игнорирует и считает, что их не существует.
Запуск программы разметки
Вообще говоря, вы можете использовать любую программу разметки, например, Partition Magic или Acronis Disk Director Suite, однако я буду рассказывать про входящую в состав Ubuntu утилиту Gparted.
Надеюсь, вы ещё не вышли из запущенной с LiveCD Ubuntu. Если это не так, то снова загрузите систему с LiveCD. Я уже упоминал про главное меню системы, теперь-то оно нам и понадобится. Зайдите в меню System→Administration и запустите программу Gparted:
После запуска вы увидите главное окно программы с вашей текущей конфигурацией винчестера:
Итак, пора приступить к разметке 1) .
7. Удаление раздела
Чтобы удалить раздел выполните команду d, а затем введите его номер:
Вот так просто выполняется удаление.
Пример использования GParted для переразбивки винчестера
В качестве подопытного кролика я буду использовать такую вот конфигурацию:
Допустим, на первом диске стоит Windows а на втором лежит какое-то количество данных, поэтому второй диск хочется уменьшить, а на освободившееся место поставить Ubuntu. Хочу сразу предупредить: перед изменением размера или перемещением Windows-раздела с данными крайне рекомендуется провести дефрагментацию этого раздела из-под самой Windows (Linux за ненадобностью такого делать не умеет), особенно если на этом разделе хранится много файлов. Как видно, у меня на разделе нет практически ничего, но если бы что-нибудь было, я бы обязательно предварительно его дефрагментировал.
Вы не сможете ничего сделать с разделом, пока он подключён к системе (в терминах Linux это называется примонтирован, но об этом позже), то есть в каждый момент времени вы можете либо изменять размер раздела, либо просматривать его содержимое и как-то работать с файлами на нём. Подключённые разделы помечены в списке ключиком:
Чтобы отключить раздел и сделать его доступным для изменения просто нажмите правой кнопкой мыши на нём в списке или на графическом изображении винчестера и выберите в появившемся меню пункт «Unmount».
После этого вы сможете делать с этим разделом всё, что угодно. Практически все необходимые операции доступны из уже использовавшегося нами контекстного меню:
Вас могут заинтересовать следующие пункты:
Мне сейчас нужно уменьшить раздел, поэтому я выбрал пункт Resize/Move. При выборе этого пункта появляется такое вот окошко:
В нём вы можете с помощью мыши изменить размер и подвинуть раздел или ввести нужные значения с помощью текстовых полей. Я хочу освободить для Ubuntu около 40 гигабайт:
Нажимаем кнопку Resize/Move, попадаем обратно в главное окно и видим внесённые изменения:
Все изменения, сделанные с помощью GParted, не применяются сразу же, а просто устанавливаются в очередь на выполнение. Чтобы запустить реальные операции изменения разделов винчестера необходимо выбрать в меню «Edit» пункт «Apply all operations» или же нажать на зелёную галочку на панели инструментов:
После выбора этого пункта вы уже не сможете что-то отменить, вам останется только дождаться конца выполнения всех операций, на что может потребоваться, в зависимости от сложности, не один час. Самыми трудоёмкими операциями являются перемещение и изменение размеров разделов, особенно, сильно фрагментированных. Прерывание процесса на середине гарантированно приведёт к утере как минимум всех данных с изменяемых разделов.
Итак, на самом деле мы пока что не внесли никаких изменений в разметку диска, GParted просто показывает что будет после выполнения всех операций. Что ж, место под Ubuntu мы освободили, осталось разбить его нужным нам образом. Для этого я создам расширенный раздел и разобью его на три логических. Делается это очень просто. Нажмите правой кнопкой мыши на свободное место, выберите в открывшемся меню пункт «New», в открывшемся окне убедитесь, что создаваемый раздел занимает всю доступную область и выберите в поле типа значение «Extended partition»:
Снова жмём правой кнопкой мыши на созданный только что расширенный раздел, снова выбираем «New», однако на этот раз создаём раздел для системы размером около 7Gb (7168Mb вообще говоря, не забывайте, в одном гигабайте 1024 мегабайта, но я люблю круглые числа) и указываем для него файловую систему ext4:
После этого на оставшемся свободном месте на расширенном разделе создаём swap-диск. У меня 2Gb оперативной памяти, поэтому такой же размер я выбрал для свопа:
Ну и наконец всё оставшееся место отдаём под раздел для пользовательских данных. Файловая система снова ext4. В итоге получим примерно такую картину:
Что ж, меня всё устраивает, а у вас есть последний шанс что-то поменять или отменить. Теперь осталось только выполнить все запланированные операции, для этого идём в меню «Edit» и выбираем пункт «Apply all operations» или просто нажимаем на зелёненькую галочку на панели инструментов. Появится окошко, показывающее текущий прогресс выполнения, а вы можете пока сходить попить чаю:
Закрыв его, вы увидите результат применения всех наших шаманств. Помните, как называются и нумеруются разделы винчестера в Linux? Вот что у нас получилось:
Всё, разметка диска закончена. Теперь, вообще говоря, можно спокойно переходить к установке, однако предварительно я расскажу про устройство файловой системы, дабы вы окончательно разобрались в том, как Ubuntu работает с разделами винчестера и файлами на них. А то ведь место-то мы для Ubuntu подготовили, но вот установив Ubuntu и при этом не прочитав следующую статью вы будете очень удивлены, не обнаружив дисков C: и D: в вашей новой системе. Поэтому придётся осилить ещё немного теории:
По умолчанию в Gparted выбран первый винчестер (то есть sda ), если вам нужен другой загляните в меню GParted→Devices или обратите внимание на раскрывающийся список на основной панеле программы.
На самом деле вы можете вообще ничего не размечать, а просто выделить место под Ubuntu. Программа установки умеет автоматически выполнять разметку, но делает это она к сожалению не оптимальным образом. Поэтому я опишу не самый простой способ установки, предполагающий ручное разбиение диска.
Один из довольно частых вопросов на различных околониксовых ресурсах — вопрос о том, какую схему разбивки дисков использовать. С виду простой вопрос на самом деле таит в себе множество подводных камней. Если, конечно же, дело касается серверов. На десктопах все гораздо скучнее и серее.
Универсального решения в данном вопросе нету, просто есть некоторые аспекты, которыми следует руководствоваться при выборе схемы разбивки.
Ограничение пользователей
- при переустановке системы нет необходимости впопыхах переносить данные пользователей на другие носители / восстанавливать что откопалось из протухших бэкапов годовалой давности
- получаем возможность монтировать данные разделы с noexec, чтобы злостные кулхацкеры не запускали всякую дрянь в вашей системе. напомню, что noexec не спасает от шелл скриптов.
- спасаемся от hard-link атаки (это когда обнаруживается уязвимость в каком-либо пакете, вы его успешно сносите, а уязвимость остается, потому что злоумышленник создал хард-линк на уязвимый файл). Тут и тут можно почитать подробнее.
- можем использовать в /tmp файловую систему ext2 (журналирование здесь ни к чему, т.к. в случае сбоя восстанавливать ничего не нужно)
Защищаем систему от отказа в работе из-за нехватки дискового места
Стоит помнить, что у нас есть замечательный /var/log, который очень любит забиваться логами под завязку, ненасытные пользователи, которым вечно не хватает дискового пространства и временные папки, которые любят забиваться миллионами временных файлов, которые никто не удаляет. Все подобные разделы (/var; /home; /tmp) так же желательно вынести за пределы корня.
Палки в колеса злоумышленникам
Весьма сомнтельная мера, однако не раз встречал подобную рекомендацию: монтировать /usr в readonly.
Однако самим себе мы так же создаем некие неудобства: обновить то систему так просто теперь не получится. Однако, например в GNU/Debian это обходится добавлением в /etc/apt/apt.conf:
DPkg
Pre-Invoke < "mount /usr -o remount,rw" >;
Post-Invoke < "mount /usr -o remount,ro" >;
>;
Правда post-invoke не всегда срабатывает. Иногда приходится с помощью lsof +L1 вычислять кто же виноват, в том, что /usr занят и не может быть перемонтирован в ro.
swap. Нужен или нет?
Сплошь и рядом рекомендации делать своп равным двойному размеру оперативной памяти. На серверах, где бывает и по 64-128Гб (а то и больше) оперативки это даже как то глупо звучит. Особой нужды в свопе на системах нынче нет. Ну только если вы не хотите использовать hibernation. Впрочем это прерогатива ноутбуков, а не серверов.
Опции монтирования
Весьма важный пункт, на который стоит обратить внимание. Помимо вышеупомянутого noexec, на пользовательских разделах стоит ставить nosuid и nodev. Так же можно снижать нагрузку на диск с помощью опций noatime или relatime и с помощью увеличения времени коммита commit=60 (по умолчанию время коммита — 5 секунд).
Нужно ли разбивать для Linux жесткий диск на 2 раздела: Системный и Пользовательский? То есть обязательно ли монтировать папку home в виде отдельного раздела на жестком диске? Или можно в общем разделе с системой пользоваться home?
Не обязательно, но удобно при переустановке системы. Достаточно переформатировать системный раздел и примонтировать /home со всеми пользовательскими данными.
Urukhayy, Если кончится ОЗУ без swap, система будет пытаться высвободить оперативку, или, скорее всего, зависнет
Что происходит при переполнении оперативной памяти?
Поверьте установщику. Скорее всего там будет LVM, что даст вам возможность при необходимости перепланировать разделы так, как вам угодно
1 - новичку проще один раздел. лучше LVM, но с ним тоже надо освоиться. можно и без LVM. свежие Ubuntu/Mint по дефолту предлагают один раздел, даже подкачу в виде файла. что бы не нервничать по поводу home в случае переустановки (а перестановка для новичка деле не редкое ;)) лайвхак - при повторной установке не обязательно форматировать раздел, можно просто удалить все, кроме home (не забыть включить отображение скрытых файлов). загрузочный сектор установщик перепишет сам
2 - со временем стоит расширить эрудицию о типовых назначениях папок. интересное решение предлагает OpenSUSE, на основе BtrFS. если LVM и позволяет комфортно изменять размер логических томов по мере надобности, они все таки там имеют фиксированный размер. BtrFS создает изолированные логические под тома, при этом всем доступно общее свободное пространство на диске (если не ошибаюсь лимиты тоже можно задавать, но сейчас не об этом). OpenSUSE по умолчанию выделяет в под тома не только home, temp и подобные, типовое расположение системных настроек программ (не самой ОСи, а типа СУБД и прочее), баз данных MySQL и Postgree, тоже сразу выделены в под тома, что позволяет их сохранить при переустановке и выполнить псевдоформатировние рута. но это уже следующий уровень игры ))
Перед тем, как начинает загружаться операционная система, специализированное программное обеспечение компьютера инициализирует все компоненты, проверяет их готовность к работе и только потом передает управление загрузчику ОС.
Раньше для этих целей использовался набор программ BIOS, но этот стандарт сейчас считается устаревшим, а ему на замену пришла технология UEFI, которая поддерживает защищенную загрузку, имеет приятный графический интерфейс настройки и много других преимуществ. Большинство современных материнских плат и ноутбуков выпускаются уже с UEFI. В этой статье мы рассмотрим как выполняется установка Linux на UEFI и с какими проблемами вы можете столкнуться.
Опции и синтаксис fdisk
Синтаксис утилиты ничем не отличается от других команд Linux:
$ fdisk опции устройство
Ей надо передать опции, согласно действия, которое вы хотите выполнить, а также раздел диска или устройство к которому эти действия надо применить. Давайте теперь рассмотрим опции fdisk:
- -B, --protect-boot - не стирать первые 512 байт диска чтобы не повредить загрузочную запись;
- -L, --color - настройка цветного вывода, возможные значения auto, never или always;
- -l, --list - вывести все разделы на выбранных устройствах или если устройств не задано, то на всех устройствах;
- -o, --output - указывает какие поля данных надо показывать в выводе программы, доступные поля рассмотрим ниже;
- -u, --units - настраивает формат вывода размера разделов, доступные значения: cylinders, sectors, по умолчанию используется sectors;
- -w, --wipe - режим стирания файловой системы или RAID с диска, возможные значения auto, never или always по умолчанию используется auto;
- -W, --wipe-partition - режим стирания файловой системы или RAID из только что созданного раздела. Возможные значения аналогичны предыдущей опции;
- -h, --help - показать справку по утилите;
- -v, --version - опция выводит версию утилиты.
Опции используются для настройки работы утилиты, мы рассмотрели только самые главные, которые могут вам пригодится, теперь перейдём к командам:
- a - включение или выключения флага boot для раздела;
- d - удалить раздел;
- F - показать свободное место;
- l - вывести список известных типов разделов;
- n - создать новый раздел;
- p - вывести таблицу разделов;
- t - изменение типа раздела;
- i - вывести информацию о разделе;
- I и O - записать или загрузить разметку в файл сценария sfdisk;
- w - записать новую таблицу разделов на диск;
- q - выйти без сохранения;
- g - создать пустую таблицу разделов GPT;
- o - создать пустую таблицу разделов MBR.
Теперь вы знаете основные опции и команды fdisk, давайте рассмотрим использование программы.
Шаг 1. Запись Linux на флешку UEFI в Linux
Для записи образа на флешку в Linux лучше использовать утилиту Etcher. Программа запишет носитель, который можно загружать как в UEFI, так и в обычной системе. После запуска программы надо выбрать образ системы:
Затем карту памяти и дождаться завершения записи:
Также можно записать образ на флешку вручную. Это проще чем для обычного BIOS, хотя и потребует больше действий. Сначала отформатируйте ваш носитель в FAT32. Это можно сделать в стандартной утилите управления дисками Gnome:
Затем распакуйте содержимое установочного образа в корень флешки:
sudo mount /путь/к/образу.iso /mnt
sudo mount /dev/sdb1 /media/flash/
sudo cp -r /mnt/* /media/flash
Здесь /dev/sdb1 - имя раздела вашей флешки. Вы можете выполнить все эти действия в файловой менеджере. Не обязательно использовать команды. Далее нужно установить на раздел флешки, куда вы распаковали свои файлы два флага - boot и lba. Это можно сделать с помощью Gparted. Просто запустите программу, выберите в списке дисков свою флешку:
Нажмите правой кнопкой по разделу, выберите Управление флагами и установите галочки на против флагов boot и lba.
Каким бы способом вы не пользовались, ваша флешка готова и вы можете с нее загружаться. Большинство образов Linux уже содержат загрузчик EFI и прошивка компьютера его найдет при следующей перезагрузке.
8. Загрузочный раздел
При загрузке компьютера с диска, на котором используется таблица разделов MBR, BIOS ищет раздел, отмеченный как загрузочный и начинает искать загрузчик именно на нём. Чтобы сделать раздел загрузочным если он ещё не загрузочный или наоборот сделать его не загрузочным используйте команду a:
Загрузочность отмечается звездочкой в выводе команды p. В таблице разделов GPT для записи загрузчика используется раздел с типом BIOS boot, а флага загрузочности здесь уже нет.
Шаг 1 (альтернатива). Запись Linux на флешку UEFI в Windows
Если вы решили записать Linux в Windows, то лучше использовать утилиту Rufus. В ней необходимо выставить такие параметры:
- Схема раздела и тип системного интерфейса: GPT для компьютеров с UEFI;
- Файловая система: FAT32.
Все остальные параметры - по умолчанию. После завершения записи ваша флешка готова к использованию.
Об отношении Linux к разделам винчестера
Linux очень забавно работает с различными устройствами и источниками данных. Для каждого такого объекта создаётся специальный файл, через который происходит «общение» этого объекта с системой. В частности, подобные файлы есть для винчестеров и разделов на них. И обычно при описании работы с винчестерами и разделами в качестве названий используются как раз имена этих файлов.
Винчестеры называются sda , sdb , sdc и т.д. ( sda - первый винчестер, sdb - второй и далее по аналогии). Кстати, подключаемые флешки и другие USB устройства так же идентифицируются как винчестеры и тоже получают имена вида sd* .
Разделы на винчестерах называются так: sda1 , sda2 , sda3 и т.д. Т.е. название раздела состоит из названия винчестера и номера раздела. Но тут есть некая хитрая особенность. Первые четыре цифры зарезервированы для основных разделов, внутри расширенного раздела нумерация логических начинается всегда с пяти. Например, рассмотрим такое разбиение винчестера:
Как видно, у нас имеется 2 основных раздела с Windows и 3 логических раздела c Ubuntu.
Обратите внимание, расширенный раздел - это всего лишь контейнер для логических, поэтому из ОС он недоступен и никакие данные на него записать нельзя.
На этом теория временно заканчивается, пора приступить непосредственно к разметке вашего винчестера.
Шаг 5. Вариант разметки дисков
Когда система предложит выбрать способ разметки можно позволить системе все разметить автоматически. Но это только в том случае, если вы у вас уже не установлена какая-либо операционная система. Иначе выбираем "Свой вариант":
Выводы
В этой статье мы рассмотрели как пользоваться fdisk в Linux, как создавать разделы с помощью этой утилиты, а также как выбрать тип диска. Несмотря на все возможности утилиты намного удобнее пользоваться gparted или же cfdisk если надо разметить диск в терминале. Последнюю мы разберем в одной из следующих статей.
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Установка Linux на платы с UEFI
Я буду рассматривать установку на примере Ubuntu, но все действия аналогичны и для других дистрибутивов. Сначала необходимо записать образ диска на флешку. Большинство дистрибутивов уже поддерживают загрузку в UEFI.
Шаг 6. Назначение разделов
Если вы выбрали другой вариант разметки, то перед вами откроется меню со списком всех разделов. Найдите внизу окна "Устройство для установки загрузчика" и выберите в списке раздел для EFI.
Затем кликните по разделу для EFI в списке и выберите "Системный раздел EFI":
Далее можно продолжить установку как обычно. Вам надо создать корневой раздел, и по желанию вы можете создать раздел для загрузчика, подкачки и домашний раздел. Подробнее про установку Ubuntu 18.04 вы можете прочитать по ссылке.
Примеры использования команды fdisk
1. Список дисков и разделов
Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:
Утилита покажет все блочные устройства. На снимке есть /dev/sda, это обычный жесткий диск и /dev/nvme0n1 - это M.2 накопитель, а также там есть есть несколько /dev/loop* устройств, созданных ядром, которые лучше не трогать.
Шаг 4. Создание раздела ESP
В Gparted нам необходимо создать только раздел ESP для UEFI. Для этого выберите "Незамеченно", а затем нажмите по нему правой кнопкой и выберите "New":
В качестве файловой системы для раздела надо выбрать FAT32, размер - 100 мегабайт. Далее нажмите кнопку "Apply" для применения изменений.
Затем нажмите "Manage Flags" и установите галочки напротив флагов "boot" и "efi".
Далее переходим к установщику Ubuntu.
Оцените статью:
Об авторе
3 комментария
Можно ли одной командой очистить диск полностью и, если можно, какой?
Банальное удаление: rm -rf
или форматирование: sudo mke2fs -t ext4 -L DATA /dev/sdb1
Если требуется действительно удалить данные с диска (забить диск нулями или случайными данными), а не просто удалить указатели на эти данные в файловой системе, то проще всего использовать nwipe
Выводы
В этой статье мы рассмотрели как установить Linux на UEFI, а также как управлять порядком загрузки в установленной системе. Теперь, если у вас возникнет желание установить эту операционную систему на свой новый ноутбук с EFI, то вы уже знаете как это сделать. Если у вас остались вопросы, спрашивайте в комментариях!
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
5. Создание разделов
Чтобы создать раздел используйте команду n. Команда спросит какой номер раздела надо присвоить этому разделу, затем спросит сектор начала раздела, эти значения можно оставить по умолчанию, так как утилита предлагает минимальные доступные. Далее надо указать размер раздела. Это можно сделать тремя способами:
- указать количество секторов раздела;
- указать последний сектор раздела;
- указать размер раздела в килобайтах, мегабайтах или гигабайтах, обозначения стандартные K,M,G.
Давайте создадим три раздела разными способами:
Первый раздел создадим с помощью обычных единиц измерения. Перед ними надо ставить плюс, так как это место, которое добавляется к первому сектору раздела.
Во втором способе укажем размер раздела в секторах. Для получения раздела размером 1 гигабайт нам понадобится примерно 2 000 000 секторов. По умолчанию размер сектора 512 байт, поэтому 2 000 000 * 512 получится примерно 1024 000 000 байт:
И в третьем способе с помощью калькулятора добавим к первому сектору раздела те же два миллиона:
На этом создание разделов fdisk завершено. А вот форматирование разделов в fdisk невозможно, для этого придется воспользоваться утилитой mkfs.
Оцените статью:
Об авторе
38 комментариев
Убунту устанавливает по умолчанию 512 Мб boot/esp. Из каких соображений вы рекомендуете 100 мб?
100 мб по умолчанию ставит window 10, и этого вполне достаточно что бы вписать в это пространство убунту при двойной установке. На русскоязычнорм форуме убунту тоже рекомендуют 100 мб. Хотя если не выходит то и 200 мб и 300 мб. В моём случае, если раздел esp создаёт установщик убунту, то никакие размеры никакого влияния не оказывают - убунту на мой ноут упорно не желает устанавливаться с uefi. Просто наотрез 🙂
Здравствуйте! Могу ли установить Ubuntu c UEFI без создания сист.раздела как вы описываете на сайте с помощью Gparted, а сразу начну с разметки разделов, где будет выделено место для этого раздела EFI в начале диска. - ?
Размер более 100 мб нужен на случай,если вы планируете ставить несколько систем рядом,возможно с несколькими ядрами . при обновлении системы (какой-либо) может элементарно не хватить места для еще одного ядра.
Какого такого ядра? Ядро лежит в /boot а не в /boot/efi
Точно,попутал малость. это для boot желательно более 100 МБ
Виндоус ставит исключительно для себя 100 Мб, а убунту приспосабливается- вынуждена. Если делать инсталляцию вручную, то желательно 200- 300 Мб, причем новый минт и убунту 18.04 берут по умолчанию 512 Мб. Некоторые линуксы (OpenSuse, например) всегда требовали для себя 512. У меня ZorinOS (на Ubuntu 16.04) стоит, я ему 300 Мб выделил- столько же, кстати, берет по умолчанию сегодняшний Manjaro. Я контролировал заполнение с gparted- 100 Мб- однозначно мало и мера вынужденная. Или постоянно чистить.
1. Как раз для Ubuntu отключить UEFI Secure Boot не обязательно. Они раньше всех подружили свою ОС с Windows. То же самое относится к продуктам от Red Hat.
2. ESP раздел /boot/efi желательно создавать больше 100 мб, чтобы потом не пришлось его чистить от старых установок и переустановок Linux
Согласен, никто уже дефолтными 100Иб не ограничивается, если даже флещки по 16Гб - норма. Я ставлю 256Мб (нравится цифра) или 256000Кб (тоже цифрка нравится, да еще поддерживается производителями накопителей, ну не любят они 1024Кб а лишь 1000Кб, и все тут, так накопителькажутся жирнее!)
В Linux существует множество способов разметки диска, создания на нём разделов и просмотра уже существующих. Это утилиты parted и cfdisk в терминале и графическая утилита gparted. Однако сегодня мы поговорим про самую простую утилиту для разметки диска в терминале - fdisk.
Именно она используется чаще всего, если надо посмотреть как диски и разделы доступны на компьютере. Далее рассмотрим основные опции утилиты, её синтаксис, а также примеры использования.
О разметке винчестера
Сначала немного скучной теории о разметке дисков. К сожалению, без неё никак. Итак, разделы винчестера бывают трёх типов: основные, расширенные и логические. Связаны они так: непосредственно винчестер делится на основные разделы, один из основных разделов может быть назначен расширенным и разделён на логические. При этом основных разделов может быть максимум четыре (с учётом расширенного), расширенный, если есть, то всегда один, а логических может быть сколько угодно. То есть если по-русски: вы можете разрезать винчестер максимум на 4 части, но одну из них вы можете спокойно поделить на сколько угодно кусков.
Учитывайте вышесказанное при разметке. Некоторые программы, например, спокойно позволят вам создать не один расширенный раздел, а несколько. Однако ни Ubuntu, ни уж тем более Windows не увидят логические диски на таких разделах.
3. Просмотр таблицы разделов
Чтобы посмотреть текущий тип таблицы разделов, а также доступные разделы на диске используйте команду p:
В данном примере на диске уже есть несколько разделов, а таблица разделов используется MBR (dos).
Разметка диска для установки Ubuntu
Сначала ещё немного полезных знаний. Возможно, вам известно, что зачастую существующего объёма оперативной памяти для нормальной работы всех приложений не хватает. В этом случае включается так называемый механизм подкачки, использующий свободное место на винчестере для увеличения объёма доступной оперативной памяти. Windows для этих целей использует обычные файлы, которые она размещает на доступных ей разделах. Linux тоже умеет так делать, однако из-за неэффективности подобного подхода обычно в Linux всё организовано немного по-другому. Для целей подкачки в Linux используется отдельный раздел со специальной файловой системой, называемый свопом ( swap по-английски).
Вы ничего не сможете записать на этот раздел, собственно, из системы вы его вообще не увидите, Linux сам управляет работой с ним. Обычно размер свопа выбирается равным объёму оперативной памяти или чуть больше, поскольку swap используется для сохранения состояния компьютера (то есть содержимого оперативной памяти) при использовании спящего режима (он же hibernate).
В принципе, если у вас много оперативной памяти и вам не нужно использовать спящий режим, вы можете отказаться от использования свопа, однако я настоятельно рекомендую не жалеть лишнего гигабайта-двух на вашем винчестере и создать своп раздел. Правда увлекаться тоже не стоит, выделять под своп слишком много места абсолютно бесполезно.
Итак, мы разобрались с первым необходимым для установки Ubuntu разделом. Но кроме свопа вам понадобится как минимум раздел собственно для файлов самой системы. Однако, если вы готовы выделить для Ubuntu хотя бы 15Гб места, то кроме системного раздела рекомендуется создать ещё и раздел для пользовательских документов и настроек. Дело в том, что Ubuntu устроена так, что все пользовательские данные, включая все настройки, полностью отделены от системных файлов и могут быть вынесены на отдельный раздел. Смысл так делать весьма прост: если вы что-то испортите, то всегда сможете переустановить Ubuntu просто отформатировав системный раздел и заново поставив туда систему, при этом вам не придётся особенно мучаться с сохранением настроек и данных, поскольку все они остануться на отдельном разделе.
Я буду описывать стандартную разметку, то есть один раздел под систему, один под пользовательские данные и один под своп. При этом для системного раздела нам потребуется 7 гигабайт, для свопа - столько, сколько у вас оперативной памяти, а для оставшегося раздела под пользовательские данные всё оставшееся свободное место. 2)
На самом деле Ubuntu занимает на винчестере чуть меньше 4 гигабайт, однако чтобы не возникало проблем с переполнением после установки дополнительных программ я рекомендую выделять под системный раздел около 7Gb.
Собственно, я рассказал уже всю необходимую для разметки информацию, дальше всё зависит от вашей текущей конфигурации винчестера и от ваших планов. Теперь я лишь покажу, как применить все полученные знания на практике на примере достаточно типичной ситуации, и можно будет перейти к установке Ubuntu на ваш компьютер.
Шаг 2. Выбор порядка загрузки
Для того чтобы ваша система смогла загрузиться с только что записанной флешки нужно отключить UEFI Secure Boot. Этот режим позволяет загружаться только подписанным операционным системам, а подписанными являются только ОС от Microsoft. Поэтому для Linux этот режим надо отключать. У меня эта настройка тоже есть на вкладке Boot:
Кроме того, надо установить на первое место флешку:
После этого можно перезагружать компьютер и приступать к установке. Если у вас появилось вот такое окно, значит все хорошо. Здесь надо выбрать "Try Ubuntu without installing", это обязательное условие:
Я не буду описывать все шаги установки, которые надо выполнить, они ничем не отличаются от установки обычной ОС, отличие только в установке загрузчика и разметке диска. На нем и остановимся далее.
Управление загрузчиком UEFI с помощью eifbootmgr
Когда система загрузится вы можете отобразить настройки UEFI по умолчанию выполнив команду:
Рассмотрим подробнее что означает каждый из параметров:
- BootCurrent - загрузчик, который был использован для запуска этой операционной системы;
- BootOrder - порядок загрузчиков, в котором менеджер загрузки будет их перебирать во время старта системы. Если первый загрузчик не сработал, то будет использован второй и так далее;
- BootNext - загрузчик, который будет запущен при следующей загрузке;
- Timeout - таймаут на протяжении которого будет показываться меню выбора загрузчика, перед тем, как он будет выбран автоматически;
- Пункты 0000 - 0004 - загрузчики которые можно использовать.
Вы можете изменить порядок загрузки с помощью опции -o, например, сделаем так чтобы первым загружалась ОС из оптического диска:
sudo efibootmgr -o 0,1,2,3
И вернем обратно на первое место Ubuntu:
sudo efibootmgr -o 3,0,1,2
Можно изменить таймаут, чтобы отображалось меню выбора системы:
sudo efibootmgr -t 20
Здесь мы установили таймаут в 20 секунд.
6. Тип раздела
Кроме обычных разделов для пользовательских файлов существуют и другие типы разделов, например раздел EFI, BIOS boot, Windows Recovery, Linux swap, этот тип влияет на назначение раздела, например, раздел EFI не будет использоваться пока для него не будет выбран правильный тип. Чтобы изменить тип раздела используйте команду t:
Для вывода всех доступных типов и их номеров используйте команду L:
Для выхода из списка разделов нажмите q, а затем просто наберите номер нужного типа:
9. Применение изменений
Все изменения, которые вы сейчас вносили, ещё не записаны на диск. Для их записи надо выполнить команду w:
После записи изменений программа завершится.
2. Интерактивный режим
Большинство операций fdisk по разметке дисков выполняются в интерактивном режиме. Чтобы запустить fdisk в интерактивном режиме передайте утилите блочное устройство которое надо разметить. В моём примере, это /dev/nvme0n1:
sudo fdisk /dev/nvme0n1
Вам не обязательно возвращаться к этой статье, когда вы захотите снова поработать с программой, посмотреть доступные команды можно выполнив команду m:
Шаг 7. Завершение установки
После того как все файлы распакуются и установится загрузчик установка Linux на UEFI будет завершена, вы можете перезагрузить комьпютер и пользоваться своей системой как обычно.
Но давайте еще рассмотрим управление пунктами меню и загрузчиками EFI.
Установка Linux на Legasy BIOS
Это вариант для владельцев плат UEFI, которые не хотят разбираться в тонкостях использования этой технологии и согласны использовать свое устройство как раньше с BIOS. Большинство материнских плат позволяют эмулировать режим BIOS. В этом режиме вы можете установить Linux безо всяких проблем и дополнительных разделов, так как это делалось в BIOS.
Чтобы включить режим Legasy BIOS надо войти в настройки BIOS/UEFI с помощью кнопки F2, Del или Shift+F2 и найти там соответствующий пункт. Например, у меня этот пункт находится на вкладке Boot. Здесь нужно выбрать режим загрузки UEFI или Legasy.
После сохранения настроек вы можете устанавливать свою операционную систему как обычно. Если же вас такой вариант не устраивает, дальше мы рассмотрим как установить Linux именно на UEFI.
Шаг 3. Разметка диска для UEFI
У UEFI в этом плане есть несколько отличий от BIOS. Во первых, это использование таблицы разделов диска GPT. Это новая технология, которая имеет массу преимуществ над MBR, среди которых очень большое количество первичных разделов (в MBR только четыре), восстановление при повреждениях, и многое другое. Подробнее о том чем GPT отличается от MBR читайте в отдельной статье. Второе отличие в том, что файлы загрузчика операционной системы больше не хранятся в первых 512 байтах жесткого диска. Все они хранятся на отдельном разделе, который называется ESP.
Перед тем, как нажать "Install Ubuntu" желательно подготовить диск с помощью Gparted. Откройте утилиту из главного меню образа. Затем выберите Device -> Create Partition Table:
В списке выберите таблицу разделов GPT:
Дальше переходим к созданию разделов.
4. Создание таблицы разделов
Давайте создадим новую таблицу разделов GPT. Для этого используйте команду g. Для таблицы разделов MBR нам бы понадобилась команда o.
Читайте также: