Довольно часто в мой блог попадают с вопросом о создании файла casper-rw. Что это за файл такой? Это файл в котором хранятся изменения на загрузочной флешке с Ubuntu. Создание самой флешки уже я описывал на странице «Живая» флешка с Linux-ом (в разделе Persistent mode). Там же есть несколько ссылок на готовые файлы casper-rw. Но, всегда найдется тот, кому имеющиеся варианты не подходят, и нужно создать свой собственный. Вот для таких и написана данная заметка.
Должен сразу сказать, что данная инструкция предполагает ее выполнение на компьютере, работающем под управлением операционной системы Linux. Как это сделать из под Windows, я увы не знаю (ниже я скажу — почему).
Итак приступим. Первым делом нужно запустить консоль и авторизоваться в ней root-ом (ввести команду su, а потом в ответ на запрос — пароль администратора системы). После этого запускаем команду:
dd if=/dev/zero of=casper-rw bs=1M count=280
По этой команде:
- запускается программа dd;
- которая в выходной файл casper-rw (of=casper-rw);
- записывает нули (if=/dev/zero);
- в количестве 280 блоков (count=280);
- каждый блок размером в 1 Мегабайт (bs=1M)
По окончании работы программа выдает вот такой отчет о выполнении:
280+0 записей считано 280+0 записей написано скопировано 293601280 байт (294 MB), 5,72013 c, 51,3 MB/c
Таким образом мы получили тот самый файл с размером …. правильно — 280х1024х1024=293601280 байт. Чтож, задача выполнена? Почти! Файл действительно создан, размер выдержан (и при необходимости, я думаю, вы уже поняли, как сможете задать свой собственный любой требуемый размер). Единственный нюанс — пока что это по прежнему просто файл, забитый нулями. А casper-rw — это не «просто так файл», а файл … внутри которого создана файловая система ext3 (по крайней мере именно такая ФС требуется, если делать файл для использования с загрузочными флешками, создание которых описано в упоминавшейся выше заметке).
И вот теперь пару слов собственно, о том, почему я не знаю, как создать файл casper-rw из под Windows. Бог с ней, с командой dd — уже есть ее аналог для Windows. И устройство «zero», думаю, при необходимости найдется. Но вот как отформатировать файл и создать внутри него файловую систему, работая в ОС Windows, я увы не знаю…
Но вернемся к инструкции, тем более, что мы выполняем ее в Linux-е, и в нем «создать файловую систему внутри файла» я знаю как :)…
Для этого вводим команду:
mkfs.ext3 casper-rw
Первое сообщение, которое программа выведет, это будет запрос подтверждения указанного действия, так как мы пытаемся отформатировать не блочное устройство (читай — не диск). (В принципе, программа очень правильно утверждает — мы ведь действительно форматируем не диск, а файл 😉 ).
mke2fs 1.41.9 (22-Aug-2009) casper-rw is not a block special device. Proceed anyway? (y,n)
Естественно, соглашаемся и вводим на клавиатуре «y». Процесс займет некоторое время, после чего будет выведен отчет о его выполнении:
Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 71680 inodes, 286720 blocks 14336 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=67633152 35 block groups 8192 blocks per group, 8192 fragments per group 2048 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 29 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
Текста много, не спорю… Но весь он «о хорошем». Иными словами — «done» — это «выполнено». Таким образом форматирование завершено, и мы получили файл casper-rw, внутри которого сформирована файловая система ext3. (Кстати, если нужна другая ФС, просто используйте соответствующую команду, например, mkfs.ext2 для файловой системы ext2). Как нам проверить, что все хорошо? Есть простой способ — смонтируем для этого наш «файл-диск» в какую-нибудь папку:
mount casper-rw /mnt/temp -o loop
Обращаю внимание, что папка /mnt/temp, у меня уже была создана ранее. Вы можете использовать другую, а можете создать и такую же (команду mkdir никто не отменял)… Вернемся к монтированию — если ответом на команду «будет молчание», а не сообщения о каких бы то ни было ошибках, значит, монтирование прошло успешно. Перейдем в папку, куда смонтирован наш «диск»:
cd /mnt/temp
И введем команду:
ls
В ответ мы должны получить следующее:
lost+found/
То есть, на данном этапе единственным содержимым нашего диска является папка lost+found, которую полагается иметь каждому … диску (или разделу диска). Значит, все у нас хорошо! Проверка завершена. Отмонтируем наш «диск»:
umount /mnt/temp
Результатом выполнения описанной выше процедуры стал файл casper-rw, размером 280 Мб. Кстати, те, кому нужен именно такой файл, или те, у кого нет возможности выполнить это все в Linux-е, могут скачать готовый файл по вот этой ссылке. (Естественно, качать 280 Мб нулей не придется — файл сжат zip-ом, и его размер равен ~300 кб).
Ну и теперь вкратце об изменении в процедуре создания флешки с persistent mode, которые нужно нести в процедуру описанную на упоминавшейся уже странице. Перед запуском файла U810.bat (пункт 3-й инструкции) нужно новый (созданный или скачанный) файл casper-rw поместить в папку U810p, заменив им уже имеющийся там такой-же файл размером 1 Гб.
Ну и о размере, использованном в данном примере — он был выбран равным 280 Мб для того, чтобы загрузочную флешку Ubuntu с сохранением изменений можно было создать на драйве размером 1 Гб.
Здравствуйте! Вот решил попробовать выше описанное! И споткнулся сразу же на первом шаге, на команде: su
Я её ввёл, потом набрал свой пароль, а терминал в ответ выдаёт:
Сбой при проверке подлинности!
Пробовал занава набрать пароль, менял регистр, но всё равно выдаёт это же! Я являюсь единственным пользователем Линя, и почему везде этот пароль подходит, а здесь нет? Или проблема не в пароле?
В Ubuintu надо вводить
sudo su
(в таком случае, система запросит именно ваш пароль).
Если же вы вводите
su
система запрашивает пароль root-а, которого в убунту по умолчанию нет
Большое спасибо, что так быстро отреагировали! Но я, порывшись у вас, нашёл статью как стать root-ом и с лёгкостью им стал! Ещё раз Большое спасибо! И вообще у вас СУПЕРСКИЙ БЛОГ!!!