Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> Файловая система —> bsdlabel

bsdlabel - программа для разметки диска

Автор: lissyara.


    bsdlabel - программа для изменения (а также проверки и установки новой) метки диска. До кучи может устанавливать код начальной загрузки (MBR, короче). Раньше она называлась disklabel (До FreeBSD 5.1). C её помощью можно сохранять старую метку в файл и восстанавливать её из него, ну и, разумеется, менять её прямо на диске.
   Ковырять диски будем под VmWare - т.к. в этом деле требуется аккуратность - за ошибки придётся расплачиваться содержимым диска... Начали:
/usr/home/lissyara/>su
/usr/home/lissyara/>dmesg | grep "ad[0-9]"
ad0: 16384MB <VMware Virtual IDE Hard Drive 00000001> at ata0-master UDMA33
ad1: 4096MB <VMware Virtual IDE Hard Drive 00000001> at ata0-slave UDMA33
Trying to mount root from ufs:/dev/ad0s1a
/usr/home/lissyara/>fdisk ad1
******* Working on device /dev/ad1 *******
parameters extracted from in-core disklabel are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
<UNUSED>
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
/usr/home/lissyara/>

В системе два диска, на первом (ad0) стоит система, второй пустой - его и будем ковырять. Для начала диск надо инициализировать, программой fdisk:
/usr/home/lissyara/>fdisk -BI ad1
******* Working on device /dev/ad1 *******
fdisk: Geom not found
/usr/home/lissyara/>fdisk ad1
******* Working on device /dev/ad1 *******
parameters extracted from in-core disklabel are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
    start 63, size 8388513 (4095 Meg), flag 80 (active)
        beg: cyl 0/ head 1/ sector 1;
        end: cyl 129/ head 15/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
/usr/home/lissyara/>
/usr/home/lissyara/>

После fdisk появился раздел типа 165 (BSD). Вот теперь пришла пора bsdlabel - размечаем диск, в данном примере - одним шматком:
/usr/home/lissyara/>bsdlabel -w ad1s1 auto
/usr/home/lissyara/>
/usr/home/lissyara/>bsdlabel ad1s1 > label_ad1
/usr/home/lissyara/>cat label_ad1
# /dev/ad1s1:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a:  8388497       16    unused        0     0
  c:  8388513        0    unused        0     0         # "raw" part, don't edit
/usr/home/lissyara/>

Если бы мне нужен бут сектор то это выглядело бы так:
/usr/home/lissyara/>bsdlabel -w -B ad1s1 auto
/usr/home/lissyara/>

Пожалуй и всё, по bsdlabel... Тока чтобы не выглядело всё это незаконченным - добьём начатое до конца:
/usr/home/lissyara/>newfs /dev/ad1s1c
/dev/ad1s1c: 4096.0MB (8388512 sectors) block size 16384, fragment size 2048
        using 23 cylinder groups of 183.77MB, 11761 blks, 23552 inodes.
super-block backups (for fsck -b #) at:
 160, 376512, 752864, 1129216, 1505568, 1881920, 2258272, 2634624, 3010976, 3387328,
 3763680, 4140032, 4516384, 4892736, 5269088, 5645440, 6021792, 6398144, 6774496,
 7150848, 7527200, 7903552, 8279904
/usr/home/lissyara/>mount /dev/ad1s1c /mnt
/usr/home/lissyara/>df -h
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/ad0s1a     15G    1.4G     12G    10%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/ad1s1c    3.9G    4.0K    3.6G     0%    /mnt
/usr/home/lissyara/>

Можно пользоваться :) И никаких sysinstall :)))



размещено: 2006-01-06,
последнее обновление: 2006-01-07,
автор: lissyara


glat, 2007-01-28 в 20:06:25

Лучший пример для чайников. Спасибо очень помог, не знал даже с чего начинать.

paranormal, 2007-06-06 в 13:36:28


/dev/ad1s1c


Ты бы сначала handbook почитал и sysinstallом попользовался

Может бы заметил что буква с предназначена совсем не для того чтобы на ней ffs нарезать

lissyara, 2007-06-06 в 13:43:19

Однако, можно нарезать и на ней.
Хотя, могут быть эксцессы - например автомоунт, через hal в kde, вызывает мгновенный ребут системы, при использовании таких фенечек.
А вот руками монтируется и работает нормально.

Kirgudu, 2007-07-04 в 13:13:17

Есть фича. bsdlabel поддерживает разделы только до 2TB, если хотите больше - юзайте sunlabel
sunlabel -w /dev/da0 auto
newfs -O2 -U /dev/da0
mount /dev/da0 /mnt/huge

Jungo, 2008-07-26 в 1:12:36

Тоже заметил что С использовано.
мне кажется не зря фря автоматом бьет всегда так что C unused

Serik, 2010-01-22 в 15:28:01

Спасибо за статью! )

kbakenov, 2010-03-10 в 12:57:08

Нормально!

kbakenov, 2010-03-10 в 12:57:10

Нормально!

Dusya, 2010-08-01 в 6:01:20

Охуитетительно!!!!!11111

Dmitriy_K, 2011-11-14 в 12:17:13

Тем, кто делает дисковую разметку во FreeBSD начиная с версии 8.0, часто приходится сталкиваться с ошибками вида "Class not found", которые не позволяют отработать по традиционным методам.
Я кое-что написал о возможном решении таких проблем в конференции:
http://forum.lissyara.su/viewtopic.php?f=8&t=22712&p=312929



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0489 секунд
Из них PHP: 23%; SQL: 77%; Число SQL-запросов: 86 шт.
Исходный размер: 26157; Сжатая: 6684