Смотрю какие диски подключены
geom disk list Geom name: ada0 Providers: 1. Name: ada0 Mediasize: 500107862016 (466G) Sectorsize: 512 Mode: r2w2e3 descr: ST3500312CS lunid: 5000c5004431432e ident: 5VV7W5RG rotationrate: 5900 fwsectors: 63 fwheads: 16 Geom name: ada1 Providers: 1. Name: ada1 Mediasize: 500107862016 (466G) Sectorsize: 512 Mode: r0w0e0 descr: MB0500EAMZD lunid: 5000c5002e16e5ba ident: 9WJ15Y0A rotationrate: 7200 fwsectors: 63 fwheads: 16 Geom name: ada2 Providers: 1. Name: ada2 Mediasize: 500107862016 (466G) Sectorsize: 512 Mode: r0w0e0 descr: MB0500EAMZD lunid: 5000c5002e16f34d ident: 9WJ15YET rotationrate: 7200 fwsectors: 63 fwheads: 16
Можно использовать команду
camcontrol devlist <ST3500312CS SS16> at scbus0 target 0 lun 0 (pass0,ada0) <MB0500EAMZD HPG3> at scbus1 target 0 lun 0 (pass1,ada1) <MB0500EAMZD HPG3> at scbus2 target 0 lun 0 (pass2,ada2)
Проверяю разметку на жестких дисках
gpart show ada0 => 40 976773088 ada0 GPT (466G) 40 1024 1 freebsd-boot (512K) 1064 984 - free - (492K) 2048 16777216 2 freebsd-swap (8.0G) 16779264 959993856 3 freebsd-zfs (458G) 976773120 8 - free - (4.0K) gpart show ada1 gpart: No such geom: ada1. gpart show ada2 gpart: No such geom: ada2.
Диск ada0 - содержит разметку, диски ada1 и ada2 без разметки. Если разметка существует и её нужно изменить, выполняю команду
gpart destroy -F ada1
Создаю разметку GPT и проверяю результат
gpart create -s gpt /dev/ada1 ada1 created gpart show ada1 => 40 976773088 ada1 GPT (466G) 40 976773088 - free - (466G) gpart create -s gpt /dev/ada2 ada2 created gpart show ada2 => 40 976773088 ada2 GPT (466G) 40 976773088 - free - (466G)
Диск, начиная с LBA 40 и заканчивая LBA 976773088 пуст. LBA 0−40 — зарезервированы системой под таблицу разделов.
Если установка производится на современные жесткие диски, у которых размер сектора = 4 кб, то при создании разделов (партиций) необходимо использовать выравнивание. Можно поступить двумя способами: 1) если указываем параметры раздела в блоках, то номер блока вводить кратным 8, например: -b 40; 2) если указываем размер раздела в байтах, либо не указываем вообще начало и размер, использовать параметр -a 4k, который подгонит начало и конец раздела под секторы, размером 4 кб. Так как мы в данном примере производим тестовую установку на виртуальный жесткий диск, то этого можно не делать. В любом случае перед созданием разделов нужно точно знать размер сектора вашего накопителя, иначе это выльется жуткими тормозами в работе.
Теперь создадим разделы. Для этого существует команда gpart add с различными параметрами. Первый параметр -t — указывает на тип создаваемой файловой системы. В нашем случае будет использовано два типа: freebsd-swap и freebsd-ufs. Далее идут два необязательных параметра: -b — указывает на номер LBA, начиная с которого необходимо создать раздел. Если не указать данный параметр, то раздел будет создан автоматически с первого свободного LBA. -s — указывает на размер раздела в LBA. Размер одного блока LBA = 512 байт. Желательно указывать в количестве блоков LBA, но можно и в кило/мега/гига/… байтах (суффикс k/M/G). Если не указать данный параметр, то раздел будет создан до максимально возможного LBA в пределах пустой области. Также в качестве параметра можно указать метку раздела, например: -l swap1 — в этом случае будет создана метка /dev/gpt/swap1, по которой можно более удобно обращаться к разделу. Последним обязательным параметром идет путь к диску. В нашем случае: /dev/ada1.
Создаю разделы
gpart add -t freebsd-ufs /dev/ada1 ada1p1 added gpart show ada1 => 40 976773088 ada1 GPT (466G) 40 976773088 1 freebsd-ufs (466G) gpart add -t freebsd-ufs /dev/ada2 ada2p1 added gpart show ada2 => 40 976773088 ada2 GPT (466G) 40 976773088 1 freebsd-ufs (466G)
Разделы типа swap форматировать нет необходимости. А вот разделы типа ufs перед использованием должны быть отформатированы. Правильнее сказать: на них должна быть создана файловая система.
Для того, чтобы создать файловую систему на втором разделе, достаточно выполнить следующую команду:
newfs -U /dev/ada1p1 /dev/ada1p1: 476940.0MB (976773088 sectors) block size 32768, fragment size 4096 using 762 cylinder groups of 626.09MB, 20035 blks, 80256 inodes. with soft updates super-block backups (for fsck_ffs -b #) at: 192, 1282432, 2564672, 3846912, 5129 ...
В данном случае использовался параметр -U — он говорит о том, что в данной файловой системе должен использоваться механизм Soft Updates. Вы можете не использовать этот параметр, чтобы не включать данный механизм.
Для монтирования использую команду:
mount /dev/ada2p1 /mnt/backup/ df -h | grep ada2 /dev/ada2p1 451G 8,0K 415G 0% /mnt/backup
Для автоматического монтирования при старте системы, вношу изменения в файл /etc/fstab:
/dev/ada1p1 /mnt//torrent ufs rw 0 0 /dev/ada2p1 /mnt/backup ufs rw 2 2
Для того, чтобы перемонтировать все разделы согласно файла /etc/fstab, используется команда:
mount -a
Информацию по SWAP можно посмотреть командой:
swapinfo Device 1K-blocks Used Avail Capacity /dev/ada0p2 8388608 0 8388608 0%
Чтобы смонтировался SWAP, необходимо его включить специальной командой:
swapon /dev/ada0p2
Для отключения раздела SWAP используется команда
swapoаа /dev/ada0p2
Дано: жесткий диск /dev/ada1
Цель: удалить существующую разметку, создать новую разметку GPT, создать два раздела: подкачка и данные и подключить их к рабочей системе.
После каждого действия выполняйте gpart show, чтобы наблюдать за результатом. Последовательность действий:
Удалить существующую разметку:
gpart destroy -F ada1
Создать новую разметку:
gpart create -s gpt /dev/ada1
Создать два раздела: подкачка и данные:
gpart add -t freebsd-swap -s 2097152 /dev/ada1 gpart add -t freebsd-ufs /dev/ada1
Создать файловую систему UFSv2 на втором разделе:
newfs -U /dev/ada1p2
Добавить в файл /etc/fstab строки для автомонтирования при загрузке:
/dev/ada1p1 none swap sw 0 0 /dev/ada1p2 /mnt ufs rw 2 2
Смонтировать новый раздел (команда монтирует все разделы из файла /etc/fstab):
mount -a
Включить в работу новый раздел swap командой:
swapon /dev/ada1p1
На этом настройка завершена.
Ссылки:
https://blog.denisbondar.com/post/freebsd-add-new-hdd
https://1cloud.ru/help/bsd/montirovanie-diska-vo-freebsd