Видео ролики бесплатно онлайн

Смотреть анал видео

Официальный сайт janmille 24/7/365

Смотреть видео бесплатно

lwilis 17.06.2010 06:55

Жизнь в консолиУменьшение файловой системы с помощью /sbin/resize2fs

В наше гуевое время да при наличии утилиты parted задача из заголовка может показаться не очень актуальной. Редко, но случаются ситуации, когда остаешься в очень ограниченных условиях: специфический дистрибутив, с минимумом софта; либо ситуация нештатная. Всякое бывает. А еще есть такая потребность: хочу знать. Впрочем, я сегодня просто забыл про наличие parted, вот и освежил память.

В общем-то в наличии есть один диск, на нем файловая система, которая занимает диск целиком. Сама по себе файловая система заполнена не до конца. Нужно отрезать от нее свободный кусочек и создать еще одну фс на диске.
Краткий план мероприятия
Убедимся, что фс отмонтированаПроверяем фс на целостностьУменьшаем фсУменьшаем разделСоздаем новый разделСоздаем искомую фсОсновная часть

Убедимся, что фс отмонтирована


Здесь X — буква диска, N — номер раздела
1
$ mount|grep sdXN


Если в ответ тишина, продолжаем.

Проверяем фс на целостность


resize2fs не начнет работать, пока фс не пройдет проверку на целостность. Проверяем. У меня оказалась ext3. Ключ -f обязателен.
1
2
3
4
5
6
7
8
$ sudo /sbin/fsck.ext3 -f /dev/sdXN
e2fsck 1.41.8 (11-July-2009)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
backup: 29454/9609216 files (2.4% non-contiguous), 31809485/38409984 blocks


У fsck не возникло возражений. Обращаем внимание на нижнюю строчку вывода fsck. Занято 31809485 блоков, и всего 38409984 блоков.

Уменьшаем фс


1
$ sudo /sbin/resize2fs /dev/sdXN 31809490


Я задал новый размер фс чуть больше, чем на ней уже занято.

Уменьшаем раздел


Теперь нам нужно изменить размер раздела, на котором расположена наша фс. По сути, мы удалим старый раздел и создадим новый, но меньшего размера. Главное, чтоб начальные метки старого и нового раздела совпадали, а также размер раздела должен быть не меньше размера фс. Запустим fdisk и воспользуемся командой "p".
1
2
3
4
5
6
7
8
$ sudo /sbin/fdisk /dev/sdXN
Disk /dev/sdX: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x3f5a3f59

Device Boot Start End Blocks Id System
/dev/sdXN 1 19129 153653661 83 Linux


fdisk работает с блоками по 1K и с цилиндрами. Цилиндр — это произведение кол-ва головок (255) на кол-во секторов (63) и на размер сектора 512 байт. А fsck работает с фактическим размером блока, заданным для фс. У меня блоки по 4K. Узнать размер блока вашей файловой системы можно с помощью tune2fs
1
2
$ sudo /sbin/tune2fs /dev/sdXN -l|grep 'Block size'
Block size: 4096


Тогда умножаем новый размер (31809490) фс на 4, получим ее в размерности 1K на блок. Составляем пропорцию (19129/x) = (153653661/(31809490*4)) и получим x примерно 15850. Тут лучше немного прибавить на всякий случай. Теперь командой d удаляем старый раздел, командой n создаем новый. Первый цилиндр задаем как было (1), конечный 15850. Теперь создадим еще один раздел, сохраним изменения с помощью команды w. Осталось только создать новую фс.

Создаем искомую фс


1
$ sudo /sbin/mkfs.ext4  -L Black_Label /dev/sdXM


Готово.


Тэги: e2fsprogs fdisk fsck mke2fs mkfs parted resize2fs блок головка сектор цилиндр
+ 8 -
Похожие Поделиться

Смотреть онлайн бесплатно

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн