-Поиск по дневнику

Поиск сообщений в Linux_Loader

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 20.04.2008
Записей: 743
Комментариев: 2542
Написано: 7716


parted, fdisk, mount... подробнее

Понедельник, 29 Сентября 2008 г. 22:25 + в цитатник
Я давно хотел научиться двум вещам. Размечать винчестеры из консоли и править текстовые файлы оттуда же. До первой руки-таки дошли. Сначала я потерпел полное поражение, т.к. маны привели меня в полное недоумение, но я так просто не сдался и в итоге у меня кое-что получилось .

Вообще, по ходу дела вспоминались мне лабораторные работы на физике в школе, когда проводили якобы "опыты" (проведённые миллионы раз до нас) и аккуратно всё конспектировали. Только я вместо конспекта делал короткие шпаргалки лично для себя, на будущее .

Так вот. Дан винчестер 500 ГБ /dev/sdc, терминал и GParted, сугубо для наглядного мониторинга результатов. Нужно сделать один первичный раздел и один расширенный с двумя логическими дисками.

Получаем привилегии суперпользователя и отмонтируем все разделы этого винчестера:

sudo su
umount /dev/sdc*

Создаём новую метку, основной раздел 235ГБ, точнее 235000МБ (будущий /dev/sdc1) и дополнительный (/dev/sdc2) на всё оставшееся пространство:

parted /dev/sdc mklabel msdos
parted /dev/sdc mkpart primary 0 235000
parted /dev/sdc mkpart extended 235000 100%

Синтаксис комманд таков:
parted [устройство] [mkpart (от make partition)] [тип - основной, расширенный, логический] [начало] [конец]

Логические диски, естественно, можно создавать только на существующих расширенных разделах. Начало и конец можно задавать разными единицами. В качестве разменной монеты принимаются проценты, сектора, мегабайты, ещё какая-то херомантия, в которую я не вникал. Мегабайты, как еденицу по умолчанию, обозначать никак не надо.

Теперь то, над чем я сначала завис... Как сделать логические диски на sdc2? Всё понятно, но как правильно определить начало и конец? Я, дурак, не понял, относительно чего отмечать границы... Всего винта или расширенного раздела? Дело в том, что parted размечает вроде как винчестер, а логические диски размечаются на разделе... Короче, немного потормозив, я сообразил, что отсчитывать нужно от общего рамера винта))). Вообще-то тут 2 варианта. Например:

parted /dev/sdc mkpart logical 235000 335000
parted /dev/sdc mkpart logical 335000 100%

Но у меня программа в одном случае промолчала и всё сделала как надо, а в другом начала ругаться и предложила свои границы лог.диска. Я наивно согласился и она меня обманула, т.к. пару гигов остались висеть не размеченными. И обманывает она каждый раз, так что вестись на этот развод не нужно
Просто понятие мегабайта, как некоторого адреса, весьма расплывчато))).

Я решил указать эти величины в секторах. Тут есть один нюанс. Сначала нужно просмотреть текущее состояние устройства.

fdisk -lu


Получим в ответ инфу о винте и всех его разделах с размерами и границами в секторах:

Диск /dev/sdc: 500.1 ГБ, 500107862016 байт
255 heads, 63 sectors/track, 60801 cylinders, всего 976773168 секторов
Units = секторы of 1 * 512 = 512 bytes
Disk identifier: 0x000ec256

Устр-во Загр    Начало     Конец       Блоки         Id     Система
/dev/sdc1             1           458984375   229492187+   83   Linux
/dev/sdc2   458984376   976768064   258891844+   83   Расширенный

Как видно, sdc2 начинается с сектора 458.984.376, поэтому первый логический диск начнётся с 458.984.377 . Рассчитать его размер прийдётся на калькуляторе))), либо использовать значение в мегабайтах. 1 сектор = 512 байт. Если нужен диск размером 100ГБ, то
100.000.000.000B/512B=195.312.500s.

Или, точнее
107.374.182.400B/512B=209.715.200s.

Тогда конец диска равен начало+размер
458.984.377+209.715.200=668.699.577

parted /dev/sdc mkpart logical 458984377s 668699577s

Либо, если такая точность ни к чему, то просто

parted /dev/sdc mkpart logical 458984377s 335000


И последний диск делаем от 668699578s до конца.

А к чему mount в заголовке? Просто я выкупил прикол, пока всё это делал. Комманда mount -l показывает все монтированные ФС с именами томов. Если работаешь в консоли или незнакомой графичской среде - может пригодиться)))
Метки:  

Humiliating   обратиться по имени Понедельник, 29 Сентября 2008 г. 23:27 (ссылка)
hum@hum:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb3 28736988 5539616 21749116 21% /
varrun 1684420 160 1684260 1% /var/run
varlock 1684420 0 1684420 0% /var/lock
udev 1684420 64 1684356 1% /dev
devshm 1684420 12 1684408 1% /dev/shm
lrm 1684420 39776 1644644 3% /lib/modules/2.6.24-21-generic/volatile
gvfs-fuse-daemon 28736988 5539616 21749116 21% /home/hum/.gvfs
/dev/sdb1 455113384 80234500 374878884 18% /media/CBAJIKA
Ответить С цитатой В цитатник
Linux_Loader   обратиться по имени Вторник, 30 Сентября 2008 г. 13:00 (ссылка)
Это мы знаем))) Хотя, признаюсь честно, во время вышеописанного эксперимета я об этом как раз подзабыл . А если добавить ключ -T, то покажет ещё типы ФС.

Я имел ввиду, что mount -l показывает это всё именно с именами томов. Иногда это нагляднее, тем более, что ещё оно выдаёть опции монтирования. То есть, она говорит, что куда и как примонтировано.
Ответить С цитатой В цитатник
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку