Форум сообщества Runtu.org
Февраль 22, 2018, 03:48:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Новости: Есть желание поддержать проект?

Сделайте пожертвование удобным Вам способом
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 2 3 »  Все   Вниз
  Печать  
Автор Тема: Usb-creator-gtk - создание загрузочной флешки  (Прочитано 17623 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« : Июнь 01, 2015, 09:29:31 »

Давайте разберем что делает программа Usb-creator-gtk.
Всю информацию можно посмотреть здесь: packages.ubuntu.com



Посмотрел код программы

С помощью parted может отформатировать флешку в fat32 (чтобы и на виндовс можно было открыть флешку) с флагами boot, lba


Проверяет версию системы в  .disk/info

Распаковывает iso образ на флешку через 7z

создает загрузочную запись с помощью syslinux и mtools (при этом в корне флешки создается файл ldlinux.sys)

потом переименовывает каталог isolinux и файл isolinux.cfg в syslinux и syslinux.cfg

для Ubuntu 10.10 в файле syslinux.cfg убирает строку с ui

еще может добавить сохранение изменений в лайв режиме,


« Последнее редактирование: Июнь 03, 2015, 13:24:53 от Пользователь. » Записан
FSnow
Global Moderator
*****
Offline Offline

Сообщений: 678



« Ответ #1 : Июнь 01, 2015, 09:52:34 »

Записывает образ командой

dd if=runtu-lite-14.04.1_20140914.iso of=/dev/sdx bs=1M
    Маловероятно. Флешки сделанные с помощью dd if=foo.iso... обычно имеют файловую систему CDFS,
а U-C-G дает на выходе флешки с fat32.
Записан
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #2 : Июнь 01, 2015, 10:16:10 »

Я в питоне не особо разбираюсь, лишь ищу знакомые слова.
Посмотри сам /usr/lib/python3/dist-packages/usbcreator/install.py

Спойлер  скрыт:
Код:
def diskimage_install(self):
        # TODO evand 2009-09-02: Disabled until we can find a cross-platform
        # way of determining dd progress.
        #self.initialize_progress_thread()
        self.progress_message(_('Writing disk image...'))
        failure_msg = _('Could not write the disk image (%s) to the device'
                        ' (%s).') % (self.source, self.device)
       
        cmd = ['dd', 'if=%s' % str(self.source), 'of=%s' % str(self.device),
               'bs=1M']
        if sys.platform == 'win32':
            cmd.append('--size')
            try:
                popen(cmd)
            except USBCreatorProcessException:
                self._failure(failure_msg)
        else:
            import dbus
            try:
                bus = dbus.SystemBus()
                obj = bus.get_object('com.ubuntu.USBCreator',
                                     '/com/ubuntu/USBCreator')
                obj.Image(self.source, self.device, self.allow_system_internal,
                          dbus_interface='com.ubuntu.USBCreator',
                          timeout=MAX_DBUS_TIMEOUT)
            except dbus.DBusException:
                self._failure(failure_msg)
Записан
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #3 : Июнь 01, 2015, 12:39:25 »

Понял.

Образ img записывается через dd (блок кода diskimage_install)
Образ iso распаковывается через 7z (блок кода cdimage_install)
Записан
sfs
Местный
*****
Offline Offline

Сообщений: 585


WWW
« Ответ #4 : Июнь 02, 2015, 11:45:38 »

Если там обычный dd гибридного iso - надо ли что-то больше
Если нужно именно гуй - в аттаче мой гуй к dd на yad
Записан

Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #5 : Июнь 02, 2015, 14:46:25 »

Нет, там все сложнее.

iso образы распаковывает на флешку через 7z, и устанавливает syslinux.

img образы записывает на флешку через dd.

-----------------------

Гибридные образы  конечно же можно просто записывать через dd.
Записан
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #6 : Июнь 03, 2015, 13:17:57 »

Нашел вики страницу по созданию загрузочных флешек в Ubuntu
https://wiki.ubuntu.com/LiveUsbPendrivePersistent




Сайт о загрузочных флешках с Linux: pendrivelinux.com
« Последнее редактирование: Июнь 04, 2015, 11:22:55 от Пользователь. » Записан
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #7 : Июнь 26, 2015, 13:31:58 »

Воспользовался всей этой информацией.

И сделал себе Live USB с сохранением изменений между перезагрузками.

В Gparted выбрал свою флешку размером 1 гигабайт, удалил все разделы, примемнил выбранные изменения.
Создал два раздела:
Первый для загрузчика и архива с системой, выделил 600 мегабайт так как iso образ около 500 мегабайт, файловая система fat 32, метку поставил любую (например runtu, можно и без метки).
Второй для сохранения изменений, выделил оставшиеся 400 мегабайт, файловая система ext2 (чтобы флешка не изнашивалась), метку поставил casper-rw (она как я понял нужна).

Применил изменения в Gparted.

Теперь выделил первый раздел правой кнопкой мыши, и выбрал пункт флаги, отметил флаг boot (это делает раздел загрузочным).
Применил изменения в Gparted.

Затем запустил usb-creator-gtk, и записал на первый раздел Runtu LITE 14.04.
Он распаковывает iso, затем записывает загрузочный код в начало раздела, изменяет название папки isolinux в syslinux и изменяет название файла isolinux/isolinux.cfg в syslinux.cfg.

Во время загрузки, когда появилось загрузочное меню рунту, нажимаю клавишу f6, ескейп
после boot=casper пишу слово persistent
нажимаю энтер и система загружается с сохранением изменений.

Осталось на флешке отредактировать загрузочное меню, чтобы не править при каждой загрузке.

--------------------

Загрузочное меню отредактировал.
В первом разделе, в каталоге syslinux, в файле txt.cfg
Не удивляйтесь, что там указана Lubuntu, нам отображается русский перевод этих слов, а параметры загрузки берутся от туда, то есть в русском переводе Lubuntu заменена словом Runtu  Веселый.
« Последнее редактирование: Июнь 26, 2015, 14:20:16 от Пользователь. » Записан
sfs
Местный
*****
Offline Offline

Сообщений: 585


WWW
« Ответ #8 : Июнь 26, 2015, 14:32:28 »

Для флэшки оптимальнее переконвертировать casper-rw в casper-ro.squashfs (положить рядом с filesystem.squashfs)
И грузить c параметром ядра toram
На выходе получаем увеличение скорости и экономию ресурса флэшки и батареи, т.к. все в памяти
Минус - изменения придется сохранять перепаковкой casper-ro.squashfs

Если хочется еще большего от флэшки -  UIRD
Записан

Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #9 : Июнь 27, 2015, 09:01:33 »

Спасибо за дополнительную информацию.

-------------------

Моя задача написать инструкцию о записи рунту на флешку.

-----------------

Попробовал записать на флешку Runtu LITE 14.04 программой dd, хотел проверить подготовлен ли образ для работы с флешки.
Оказалось не совсем готов, система грузится, но не может до конца выключиться, приходится нажимать кнопку отключения питания, а это нехорошо.

Да и файловая система CD диска на флешке - это неправильно, gparted не может работать с такой флешкой.

----------------

Выводы:
на флешке нужно использовать fat32 или ext2.
загрузочную флешку безопаснее и удобнее создавать в специальных графических программах.
кому нужно больше возможностей, те должны читать документацию.
Записан
Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #10 : Июнь 27, 2015, 11:10:15 »

Так как Gparted не может работать с флешкой на которую записан iso образ системы через dd.
Пришлось через dd забивать флешку нулями, подождать несколько секунд пока забьется нулями начало флешки, прервать клавишами Ctrl + C, затем достать флешку и вставить снова.



Открываем через Gparted:
создаем таблицу разделов msdos,
создаем раздел fat32,
у раздела ставим флаг boot (если флешка будет использоваться для загрузки системы),
остальное по желанию.
Записан
sfs
Местный
*****
Offline Offline

Сообщений: 585


WWW
« Ответ #11 : Июнь 29, 2015, 13:32:50 »

Моя задача написать инструкцию о записи рунту на флешку.
Добавил в шапку аттач про ключи casper
Вроде с гибридной (сделанной dd из iso) флэшкой gparted не работает, а cfdisk работает
Записан

Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #12 : Июнь 29, 2015, 22:36:16 »

Испробовал параметр toram + persistent с разделом casper-rw.
Система грузилась дольше, так как нужно было всю систему в оперативную память выгружать а не частями как обычно. Попробовал удостовериться, что точно система в оперативной памяти, достал флешку, все программы из iso образа запускались и работали без флешки, а диспетчеры процессов не кажут занятое пространство системой в памяти, кажут только сколько расходуют запущенные программы.

Затем решил проверить изменения из раздела casper-rw тоже в памяти или по прежнему читаются с флешки. При выдернутой флешке, отсутствовал доступ к изменениям, то есть установленная программа hardinfo не запустилась. Перезагрузил с теми же параметрами, при вставленной флешке hardinfo запустился.
То есть изменения из раздела casper-rw не выгрузились в оперативную память.

Конвертировать casper-rw как-то не хочется, так как из-за малейших изменений придется перепаковывать, а сейчас и файлы сохраняются в домашнем каталоге и настройки программ и программы можно устанавливать, но не стоит забывать что флешка сдохнет если много программ установить.

Еще кэш в браузере пришлось отключить, чтобы не изнашивал флешку, так как он в casper-rw запишется.
« Последнее редактирование: Июнь 29, 2015, 22:42:48 от Пользователь. » Записан
sfs
Местный
*****
Offline Offline

Сообщений: 585


WWW
« Ответ #13 : Июнь 30, 2015, 09:09:23 »

casper-rw не должен был загрузиться в память. И поэтому тоже я и писал , что casper - для флэшки - плохой вариант.
Под такое использование дистр надо специально затачивать (уменьшать главный модуль и т.п.) Но это уже другая история
Записан

Пользователь.
Редактор раздела
*****
Offline Offline

Сообщений: 3087


« Ответ #14 : Июнь 30, 2015, 09:30:07 »

Проанализировал плюсы и минусы toram и persistent.

toram
прироста производительности не заметил
система в два раза дольше загружалась
с ним можно достать флешку, чтобы вставить на ее место другое устройство


persistent
позволяет сохранять установленные программы, настройки, файлы
можно выключить компьютер и продолжить работу в системе в любое время без необходимости настраивать систему заново

То есть toram меня ничем не привлек, а вот persistent + раздел casper-rw очень понравился, пользуюсь с удовольствием.
Раньше каждый раз систему в Live USB приходилось настраивать, теперь отпала эта необходимость и могу даже там программы установить и файлы сохранить  Веселый
« Последнее редактирование: Июнь 30, 2015, 09:32:27 от Пользователь. » Записан
Страниц: 1 2 3 »  Все   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Valid XHTML 1.0! Valid CSS!