Примечание: Рисунки, которые Вы видите, получены на другом компьютере, поскольку я не умею делать снимок экрана в консольном режиме, а графика у меня не работает. Но отличия заключаются только в том, что на old-lin те же сообщения выдаются белыми буквами на черном фоне, и, естественно, сообщение об ошибках в ситуации, приведенной на рисунке, не появилось. В остальном содержание сообщений абсолютно одинаковое. Заметьте также, что программу можно запускать как с консоли, так и в окне терминала.

Не зная поначалу, что делать дальше, я ввел в строке подсказки знак вопроса. И получил список возможных команд, который вы можете также точно получить по команде help (рис.36).

Как видите, программа даже русифицирована, хотя и не полностью. Но все равно понятно не все.
Однако ясно, что начинать надо с команды print. Ввожу эту команду, вновь появляется предупреждение о неправильной таблице разбиения диска, и
после того, как я снова соглашаюсь его проигнорировать, получаю перечень имеющихся на диске разделов. (Показать вам на рисунке сообщения, выдаваемые программой parted по команде print
и последующим командам я не могу, поэтому буду просто описывать результаты.) Перечень этот представлен в виде таблички примерно такого вида:
| Minor |
Start |
End |
Type |
Filesystem |
Flag |
| 1 |
0,031 |
2000,280 |
primary |
fat |
|
| 2 |
2000,281 |
2306,206 |
extended |
||
| 5 |
2000,312 |
2306,206 |
logical |
linux-swap |
|
| 3 |
2306,237 | 4314,331 |
primary | ntfs |
|
| 4 |
4314,331 |
6142,038 |
primary | ext3 |
Из этой таблички становится ясно, что такое параметр MINOR в командах программы, - это просто номер раздела, который выдается той же командой.
Работу с программой я решил начать с удаления первого раздела (его тип FAT). После ввода команды
(parted) rm 1
очень быстро вновь появляется приглашение (parted) и команда print выдает ту же таблицу 1, но без первого раздела. Что ж, можно создать на освободившемся месте новый раздел
(parted) mkpart 0 2000,000
Запрашивается тип раздела, задаю primary. Потом программа просит
снова ввести начало и конец раздела и появляется ее приглашение. По
команде
(parted) print
убеждаюсь, что раздел создан и узнаю его младший номер (тот самый MINOR). Создаю на нем файловую систему ext2
(parted) mkfs 1 ext2
(команды
(parted) mkpart 0 2000,300 и
(parted) mkfs 1 ext2
можно было, по-видимому, выполнить за один прием, командой
(parted) mkpartfs p ext2, но я делал так, как сказано выше).
После этого я вышел из программы parted (командой q) и подмонтировал новый раздел к своей системе. Все прошло нормально, я убедился, что раздел монтируется нормально (записывал туда файлы, отключал, монтировал вновь и убеждался, что файлы скопировались не в каталог монтирования, а именно на вновь созданный раздел).
Снова удаляю первый раздел. Раз уж я занялся этой программой, то поиграюсь с ней побольше, и познакомлюсь с ее возможностями поближе! На тестовом-то компьютере я могу себе такие игры позволить!Снова запускаю программу parted и решаю перенести swap-раздел в начало диска на первичный раздел. Ввожу команду
(parted) move 5 0 306,000
Программа выдает предупреждение, что раздел используется, которое я
опять игнорирую. После этого она заново запрашивает начало и конец
раздела, после чего отказывается выполнить перемещение, сообщая, что не
может передвинуть раздел сам в себя. Конечно, этот результат нельзя
назвать неожиданным, я и предполагал, что логический раздел переместить
в первичный не удастся. Может быть, можно преобразовать тип раздела? Пытаюсь выполнить команду
(parted) set 5
однако предлагаются только варианты boot/hidden/скрытый/raid/lba
(это, по-видимому, и есть те флаги, которые могут появляться в
последней графе таблицы 1). Приходится жать
<Ctrl>+<D>. Тогда создаю на освободившемся
пространстве новый раздел
(parted) mkpartfs swap 0 306,000
(при этом создать swap-раздел не удается, приходится создать ext2). Команда print
сообщает, что создан раздел номер 1, начинающийся на 0,031,
заканчивающийся на 305,925. Ну ладно, превратить его в swap можно будет
потом командой mkswap
[1]. А пока пойдем дальше. Удалять раздел 2 (расширенный) не решаюсь,
удаляю ntfs-раздел, после чего пытаюсь передвинуть поближе к разделу 4
раздел 2 (extended). Однако оказывается, что программа не может двигать
расширенные разделы.
Хорошо, попытаюсь его удалить, вначале преобразовав новый первый раздел
в swap и подключив его к системе. Выхожу из программы parted (для
этого достаточно ввести в командной строке программы букву q) и
выполняю команды
[root] mkswap /dev/hda1
[root] swapon /dev/hda1
После этого команда
[root] parted /dev/hda/ print
(обратите внимание на возможность задать команду для программы parted прямо в командной строке консоли) сообщает, что теперь раздел 1 (то есть /dev/hda1) является swap-разделом. После этого удаляю раздел 5 (операция завершается успешно) и раздел 2 (тоже успешно). Осталось у меня 2 раздела: hda1 (swap) и hda4 (ext3). Теперь можно попытаться расширить существующий раздел 4 (обратите внимание - в работающей с этого раздела системе!)
(parted) resize 4
На запрос о начале раздела ввожу 3000, конец - 6142,0381. Выдается
предупреждение о том, что файловая система не была правильно
размонтирована и необходимо выполнить команду e2fsck. Попытка
игнорировать это предупреждение к успеху не привела - появилось
сообщение что операция не выполнена, потому что файловая система имеет
какое-то странное расположение (rather strange layout). Parted can't
resize this (yet!). Я так понимаю, что parted (пока!) не умеет
работать с ext3fs.
Такое же сообщение выдается при попытках выполнить команду
(parted) move 4 306 2306
Тогда создаю раздел 2 и пытаюсь скопировать в него существующий раздел
(parted) cp 4 2
Тоже отказ! Создать на новом разделе разделе файловую систему ext3
тоже невозможно. Но ведь можно сделать это средствами операционной
системы. Выхожу из программы parted, и пытаюсь выполнить команду mkfs -t ext3 /dwv/hda2.
Неудачно, получаю сообщение о том, что раздел имеет нулевой размер.
Вспоминаю, что при создании раздела было сообщение, что для подключения
раздела надо перезапустить систему. Что и делаю. При загрузке
появляются сообщения о невозможности подключить swap-раздел /dev/hda5,
еще какие-то сообщения об ошибках, но система грузится успешно. И
так же успешно завершается выполнение команды
[root] mkfs -t ext3 /dwv/hda2
Снова запускаю parted и пытаюсь скопировать 4-ый раздел на 2-ой. Результат отрицательный - не умеем работать с ext3fs.
Это что касается прямого опыта использования программы. Теперь несколько слов о том, что мне удалось почерпнуть из документации (я имею в виду man и info). Кратко перечислю, что бросилось в глаза при просмотре этих документов.
Подведем промежуточный итог. По сравнению с программой Partition Magic (PM) программа parted не производит сильного впечатления. PM умеет работать с разными типами файловых систем (умеет их создавать, перемещать и изменять в размерах), работает в графическом режиме даже при запуске с дискеты, дискеты можно создать прямо с помощью самой программы PM, ну и так далее (все сразу и не вспоминается). Так что, пожалуй, я пока предпочту работать с Partition Magic.
Что такое случилось дальше, я даже как-то не могу понять. Стал я
перечитывать то, что написал выше, перепроверять свой текст (как
обычно делаю со своими заметками), и, чтоб проверить, что команда parted не запускается от обычного пользователя, переключился во второй виртуальный терминал и попытался запустить там команду parted.
Она, естественно, не запустилась. Но после переключения в первый
терминал (где я работал от имени суперпользователя) и попытки снова
просмотреть разбиение на разделы, чтобы что-то еще сделать, оказалось,
что разделов на диске нет вообще. Выдавались только заголовки столбцов,
приведенные в первой строке таблице 1. А последующие строки
отсутствовали. Команда rescue 4000 6000 работала минут 8, но в
результате ничего не восстановила (там же у меня ext3). При попытке
перезапустить систему появилось приглашение загрузчика grub и ВСЕ!
Систему я грохнул! Я не уверен, что причиной явилась попытка запустить
parted в двух терминалах. Восстановить свои действия по шагам (даже в
памяти) я уже не могу. Но результат налицо. Меня он не сильно огорчил,
поскольку я все равно собирался начать установку системы заново, с
целью, в частности, ликвидировать те дефекты в разбиении диска на
разделы, о которых сообщали программы parted и PM.
Заодно я хочу пересмотреть свои заметки заново, а точнее переписать
их. При этом не буду разбивать их по дням, а разобью на части по темам,
примерно таким образом: Инсталляция, Unicode, Настройка сервисов, Офис,
Графика, Звук, Мультимедиа, Сеть, Samba, Apache, Parted и так далее.
При этом еще раз все перепроверю, дополню и подредактирую.