У того, кто впервые устанавливает Линукс, наверняка возникает много вопросов. Самые первые из них: на какую файловую систему ставить Линукс и как разбить разделы?
Вариантов здесь, действительно много. Линукс -- это вам не Виндовз, где всего-то существует 2-3 ФС и разделы обычно разбиваются очень просто: на диск С - система, на диск D - рабочие файлы, музыка, фильмы и пр. Да, в Виндовз раньше было всего 2 ФС: FAT32 (не будем вспоминать про давно устаревшие FAT8 и FAT16) и NTFS. Сравнительно недавно появилась ФС EXFAT (EXtended FAT или, по-другому, FAT64).
В Линукс выбор гораздо богаче: ext2, ext3, ext4, ReiserFS, xfs, jfs,btrfs и другие. В большинстве дистрибутивов по умолчанию используется ext4, но Вам не обязательно придерживаться именно этой ФС. У всех этих ФС есть свои плюсы и минусы. Да, ext4 считается наиболее надёжной, и большинству новичков можно посоветовать именно её, но я уже на протяжении нескольких лет ставлю корень системы (/) на BTRFS. Есть мнение, что эта ФС ещё не достаточно стабильна, но по своему опыту пользователя могу сказать, что это не так. Итак, какие плюсы и удобства может предложить BTRFS? Я не буду пересказывать статьи об этой ФС, желающие могут найти их в интернете. Скажу о практической стороне использования. Описывать буду установку Линукс Минт на BTRFS.
Несколько слов о разделах. Линукс можно ставить целиком в один раздел, а можно выделить несколько разделов, причём каждый раздел может находиться на отдельном жёстком диске. Но это в теории, на практике никто так делать не будет. Выделять отдельные разделы под /usr, /var, /tmp, /opt имеет смысл только на серверах, для домашнего пользования можно выделить отдельные разделы /boot, / и /home. Для установки Минт на BTRFS я бы предложил создать 2 раздела: /boot в ext2 -- размером 1-2 Гб и / в BTRFS -- размером от 20 Гб и до сколько есть или не жалко. В целом же 40-50 Гб должно хватать за глаза (при условии, конечно, что фоно- и видеотека у Вас находятся на отдельном жёстком диске или на другом разделе, общем, скажем, с Виндовз).
Я сделаю установку на раздел одного из своих жёстких дисков, чтобы показать, как это происходит. Поскольку я делаю это только для примера и ограничен имеющимися разделами, создавать отдельный /boot я не стану, но по примеру создания корневого BTRFS-раздела желающие легко смогут создать раздел /boot. Подчеркну ещё раз: /boot должен быть отформатирован в ext2. Я не знаю, как обстоит дело сейчас, но раньше BTRFS не умела запускать grub, поэтому при создании разделов лучше выделять отдельный /boot и оставлять в самом начале жёсткого диска 1-2 Мб неразмеченного пространства.
При установке Минт создавать самим подтома (subvolume) не нужно, установщик сделает это за Вас. Сразу скажу, что данная инструкция не годится для установки Дебиан, Арч, ЦентОС или Федора, там всё происходит иначе. Первым делом нужно из загруженного Линукс (например, с LiveCD или LiveUSB) вызвать GРarted и создать разделы /boot и /.
Затем, вызвав эмулятор терминала сочетанием клавиш Ctrl+Alt+T (или мышкой через меню, кому как удобнее), набрать команду sudo mount /dev/sdX№ /mnt (где /dev/sdX№ -- Ваш корневой раздел; например, /dev/sda2), эта команда монтирует Ваш созданный раздел (имя которого Вы, конечно, записали или запомнили, когда создавали разделы в GParted) в точку монтирования /mnt.
BTRFS поддерживает сжатие данных. Причём, система со сжатыми данными работает почти в 2 раза быстрее, чем с несжатыми. И, естественно, сжатая ФС занимает меньше места на носителе. НО включать сжатие нужно ДО установки системы, так как сжиматься будут только вновь записываемые файлы. Наилучшим вариантом буквально вчера был алгоритм сжатия LZO, но месяца три назад в ядро Линукс включили новый улучшенный алгоритм ZSTD. Итак, включаем сжатие (лучше для всего раздела, а не только для подтома): sudo btrfs property set /mnt compression lzo (или zstd). Проверим: sudo btrfs property get /mnt. Всё в порядке. Теперь отмонтируем раздел и приступаем к установке Линукс Минт.
Нажимаем Install Linux Mint и следуем указаниям установщика. Описывать весь процесс установки я не буду, в интернете масса подробных инструкций. Я же остановлюсь лишь на значимых моментах.
Итак, самое главное при установке -- правильно указать разметку диска.
Сначала выберем, на какой жёсткий диск (если их несколько) будем ставить загрузчик Grub. Загрузчик ставится не на раздел, а именно на диск, в неразмеченную область в самом начале диска.
Затем выбираем созданный ранее раздел /boot, нажимаем "Изменить" и выбираем пункты: "Использовать как ext2", "Форматировать", "Точка монтирования" - /boot. (Я уже сказал, что сам в этом примере /boot создавать не буду, поскольку у меня нет физической возможности создать на HDD ещё один лишний раздел). Далее выбираем созданный со включённым сжатием корневой раздел (у меня это на картинке теперь /dev/sdc3) и продолжаем так же: "Изменить", "Использовать как btrfs", "Точка монтирования - /". НЕ ставим галочку "Форматировать", иначе вся предыдущая операция с включением сжатия окажется бесполезной. Установщик повозмущается, попереспрашивает, но Вы должны твёрдо стоять на своём. Ну, а дальше "Установить", создать пользователя, пароли, выбрать свой часовой пояс и идти пить чай.
По завершении установки перезагрузиться, вынув флешку не раньше начала перезагрузки, и грузиться с того диска, на который установили Grub, выбрав его в BIOS.
Итак, Линукс Минт успешно загрузился. Теперь желательно отредактировать файл /etc/fstab, который отвечает за монтирование разделов. Здесь я хочу отметить, что BTRFS на данный момент единственная (из известных мне по крайней мере) ФС, которая полностью поддерживает SSD и отлично под неё оптимизирована. Если Вы устанавливали Минт в BTRFS на SSD, пропишите для корневой системы следующие опции монтирования (привожу пример своего fstab):
Для этого запустите эмулятор терминала и наберите команду sudo cp -a /etc/fstab /etc/fstab_bak, чтобы создать на всякий случай копию Вашего файла fstab (вот теперь, в установленной системе у Вас запросится пароль. Вводим свой пароль, при этом отображаться он не будет даже звёздочками. Так и должно быть). Если Вы напортачите в своём fstab, всегда сможете вернуть оригинал файла командой sudo cp -a /etc/fstab_bak /etc/fstab. Затем набираем команду sudo nano /etc/fstab или sudo gedit /etc/fstab (смотря какой текстовый редактор у Вас установлен. Обычно nano есть всегда и очень прост и удобен). Внеся изменения, сохраните на всякий случай файл, нажав в nano Ctrl+o затем Enter. Nano пока не закрывайте.
Ни в коем случае на SSD не нужно включать опцию autodefrag: в этом не только нет необходимости на твердотельных накопителях, но это значительно сократит срок службы Вашего SSD. И никогда не нужно делать на SSD дефрагментацию и балансировку. Также ни BTRFS, ни SSD не любят торренты и образы виртуальных машин, поэтому они должны находиться только на HDD (чуть ниже я немного скажу о символических ссылках). Также для меньшего износа SSD стоит включить монтирование некоторых разделов в tmpfs (виртуальную файловую систему, создаваемую в оперативной памяти). Привожу пример из своего fstab:
Действительно, зачем писать временные файлы и кэшы браузеров на SSD, пусть пишутся в оперативку. При обесточивании ПК они безвозвратно исчезнут, но их и не нужно постоянно хранить.
В строчке монтирования кэшей браузеров (у меня /home/rrb/.cache) Вам нужно будет указать свой путь: /home/USER/.cache.
Теперь про торренты и загрузки. У меня ни торренты, ни загрузки (ведь в загрузках часто попадаются одноразовые файлы, которые не требуются для долговременного использования) не пишутся на SSD. В моём разделе /home каталоги (папки) torrents и Загрузки являются симлинками (символическими ссылками) на каталоги, расположенные на HDD. Для того, чтобы они нормально работали, соответствующие разделы жёсткого диска должны быть прописаны для автомонтирования в файле fstab. Пример из моего fstab:
Узнать UUID раздела очень просто: в эмуляторе терминала нужно набрать команду sudo blkid и ввести свой пароль.
Точку монтирования нужно прописать в /media/XXX, где ХХХ -- всё, что взбредёт Вам в голову, лишь бы Вы понимали, что это значит. ФС раздела тоже можно посмотреть в выхлопе blkid. Закончив изменения, сохраним файл (Ctrl+o, Enter) и закроем редактор nano (Ctrl+x). Затем нужно будет перезагрузиться, чтобы fstab смонтировал всё по-новому. И теперь можно создать символические ссылки.
Снова открываем эмулятор терминала и пишем команду ln -s /media/XXX/torrents ~/torrents. Где /media/XXX -- точка монтирования Вашего раздела на hdd, /media/XXX/torrents -- каталог на HDD, на который создаём ссылку; это может быть не torrents, а, скажем Загрузки или Фильмы, то есть то, как этот каталог называется у Вас (если его нет, надо предварительно создать), а ~/torrents (или как названо у Вас) -- символическая ссылка в Вашем /home.
И последнее на сегодня: BTRFS позволяет создавать снапшоты. Очень удобно для восстановления системы, если Вы случайно её поломали. Открываем эмулятор терминала, монтируем наш корневой раздел в /mnt: sudo mount /dev/sdX№ /mnt. Смотрим ls /mnt. Ага, видим @ и @home -- это соответственно корень (/) и /home (домашний раздел пользователя, в котором хранятся Ваши файлы и настройки). Обычно делать снапшот /home не имеет смысла, а вот с корнем лучше обезопаситься. Набираем команду sudo btrfs sub snapshot /mnt/@ /mnt/@_copy (или /mnt/@_1, или /mnt/@_bak, как хотите, лишь бы Вы понимали, что это значит). Смотрим ls /mnt. Снапшот создан, всё прекрасно. Можно отмонтировать раздел: sudo umount /mnt.
Теперь, если Вы случайно поломаете систему, нужно загрузиться с другого Линукс (например с той же установочной флешки), проверить нумерацию разделов командой lsblk или sudo blkid, или если мало что понятно, запустив GParted, после чего смонтировать корневой раздел в /mnt и переименовать снапшоты: sudo mv /mnt/@ /mnt/@_old и sudo mv /mnt/@_copy /mnt/@. Затем sudo umount /mnt и перезагрузка. Удалить ненужный снапшот можно командой sudo btrfs sub delete /mnt/@_old.
Чуть не забыл: если Вы устанавливали Минт (или другой Линукс) на BTRFS, но на HDD, пропишите в опциях монтирования fstab: autodefrag, вместо noatime -- relatime, вместо 0 0 -- 0 1. Если у Вас достаточно оперативной памяти, монтирование в tmpfs лучше тоже использовать, поскольку это ускорит работу компьютера, симлинк на Загрузки можно не делать, но на торренты обязательно, или хотя бы отключить для каталога с торрентами COW (как это сделать можно прочитать в инструкциях и описаниях BTRFS).
И про swap. В Виндовз это, кажется, называется раздел подкачки. На SSD делать swap не нужно и вредно. На HDD тоже не вижу большого смысла, если только у Вас не очень маленькая оперативка (меньше 1 Гб, но в наше время сложно найти ПК с такой маленькой оперативной памятью). Я лично создаю swap... в оперативной памяти, как ни парадоксально это звучит. Да, в Линукс возможно и такое. Но это тема для отдельной статьи, как-нибудь напишу, а если кто-то заинтересовался уже сейчас, поищите в интернете статьи про ZRAM.