- Создание iso образа linux ubuntu
- Как создать ISO образ диска в Linux или как виртуалить в Ubuntu
- Создание собственного дистрибутива на базе Ubuntu с нуля
- Содержание
- Фронт работ
- Создание изолированной системы
- Установка программы установки
- Дополнительная подготовка
- Очистка Чрута.
- Настройка окружающей среды по умолчанию
- Создание папки для CD диска и ее заполнение
- Инструкции при загрузке при создании Remix
- Настройка загрузчика
- Формальности.
- Создание манифеста.
- Сжатие изолированной системы.
- Создание diskdefines
- Признание LiveCD подлинной
- Вычисление MD5
- Создание iso со своим образом Ubuntu и набором программ
- Подготовка
- Устанавливаем зависимости на хост-систему
- Монтируем оригинальный образ ISO в mnt
- Копируем содержимого mnt в extract-cd
- Расжимаем файловую систему squashfs и перемещаем содержимое в edit
- Подготавливаем рабочую среду
- Кастомизация своего образа Ubuntu
- Ставим необходимые пакеты
- Кастомизация
- Проверка и сборка ISO образа
- Проверяем, что нет пользователя UID=999
- Пересобираем initrd
- Очищаем образ
Создание iso образа linux ubuntu
Если Вас встревожила проблема создания ISO образа CD/DVD-диска в ОС Linux Ubuntu, то эта информация для Вас.
Передо мной лежал DVD-диск, который необходимо было превратить в ISO-образ на жестком диске. Как это сделать, если в наличии есть только ОС без всяких там Brasero и K3B? Оказывается выход есть и он очень простой.
Используем команду Linux — genisoimage. С помощью данной команды можно создавать ISO-диски с кириллическими названиями файлов и директорий, что в наше виндунизированное время занимает не последнее место.
Для решения данной задачи потребовалось в консоли набрать команду:
После дождаться окончания процесса (процесс создания ISO образа будет отображаться в качестве процентов) и все — образ готов!
В результате, Вас в Домашней папке будет ждать новоиспеченный ISO-образ.
На первый взгляд команда выглядит устрашающе и громоздко, но разобравшись в параметрах можно понят, что -V label_iso — это метка будущего образа, -o
/name.iso — указываем куда поместить ISO-образ,/media/cdrom0 — это источник (если Вам нужно завиртуальить диск, то этот диск должен быть примонтирован в системе).
В качестве источника можно выбрать директорию, тогда в результате получится ISO-образ с содержимым указанной директории
Источник
Как создать ISO образ диска в Linux или как виртуалить в Ubuntu
Если Вас встревожила проблема создания ISO образа CD/DVD-диска в ОС Linux Ubuntu, то эта информация для Вас.
Есть DVD , который необходимо превратить в ISO -образ на жестком диске. Как это сделать, если в наличии есть только ОС без всяких там Brasero и K3B? Оказывается выход есть и он очень простой.
Используем команду Linux – genisoimage. С помощью этой команды можно создавать ISO -диски с кириллическими названиями файлов и директорий, что в наше виндунизированное время занимает не последнее место.
Для создания ИСО образа в линукс потребовуется в консоли набрать команду:
После дождаться окончания процесса (процесс создания ISO образа будет отображаться в качестве процентов) и все – образ готов!
В результате, Вас в Домашней папке будет ждать новоиспеченный ISO -файл.
На первый взгляд команда genisoimage выглядит устрашающе и громоздко, но разобравшись в параметрах можно понят, что:
- -V label_iso – это метка будущего образа,
- -o
/name.iso – указываем куда поместить ISO -образ,
В качестве источника можно выбрать директорию, тогда в результате получится ISO -образ с содержимым указанной директории.
Источник
Создание собственного дистрибутива на базе Ubuntu с нуля
Содержание
Конечно очень радостно, что существуют такие инструменты как Reconstructor и Ubuntu Customization Kit, однако они всё выполняют в автоматическом режиме и не очень-то подходят для тонкой настройки под себя. В этой статье я постараюсь рассказать как можно руками сделать всё то, что делают вышеназванные инструменты и как изменить многие недоступные им параметры.
Фронт работ
Для создания Ubuntu Custom Live CD нужно продумать три важных момента: 1) В какой системе мы будем строить наш диск. Надеюсь, все Вы прекрасно понимаете, что мы ведем речь про компьютер под управлением Ubuntu. Если Ubuntu у Вас не установлена, то Вы можете поставить ее на виртуальную машину и там уже строить образ диска. Помимо этого, нам нужно поставить следующие пакеты для создания живого диска: SYSLINUX, Squashfs-tools, genisoimage Первый пакет — загрузчик ядра, второй — файловая система SquashFS, а третий — создатель образа диска.
2) Папка для образа диска. Образ диска — это то, что будет записано на CD/DVD/BluRay/USB (в зависимости от того кому что нравится). Просто создайте отдельную папку для образа диска. Для образа нужно скопировать: — Загрузчик ISOLinux — Ядро с initrd и изолированной системой — Дополнительные файлы для указания времени загрузки и других важных (и не очень) параметров
Папка для образа диска создается отдельно от корня будущей изолированной системы.
3) Изолированная система
Изолированная система — это та система, которая будет загружена в LiveCD. Ей не нужны ни ядро, ни загрузчик, если Вы собираетесь устанавливать ОС с помощью установщика Ubiquity. Для того чтобы провести автоматическое определение и настройку оборудования, потребуется живая система под символичным названием Casper. Ее нужно установить в initrd, а ядро Casper скопировать в папку образа диска.
Изолированная система хранится и выполняется в виде файла, сжатого в файл SquashFS. На данный момент ИС будет сохранена в виде папки в хост-системе.
Создание изолированной системы
Для начала, установим debootstrap в хост-системе с помощью командной строки, после чего создадим папки «work» (для работы) и «image» (для изолированной системы). После установки запускаем debootstrap
Обратите внимание: Версия debootstrap для Ubuntu содержит файлы для загрузки только следующего релиза Ubuntu! Т. е. Вы не сможете скачать базовую систему для raring (Ubuntu 13.04) в precise (Ubuntu 12.04 LTS ). На наше счастье, обойти это ограничение легко обойти, скачав debootstrap из репозитория raring или взяв последнюю версию из папки pool и установив его с помощью dpkg. Помимо того, у debootstrap нет зависимостей, а значит его установка вручную не вызовет никаких проблем в Вашей системе
Обратите внимание: Если Вы хотите собрать следующий релиз Ubuntu, но не можете его загрузить, воспользуйтесь следующей хитростью:
Важно установить приложения вроде MySQL, Virtualbox после того как были скачаны ядро Linux (а оно у нас не скачано!(настолько у нас минимальна система)) и установлены общие настройки, потому что эти приложения требуют установки своих модулей ядра для полной настройки.
Если Вы планируете установить что-либо, использующее метапакеты окружений рабочего стола (например xfce4), Вам также потребуется связать файл в изолированной системе как следует (не только с помощью devpts). Иначе, GRUB при установке выдаст ошибку и Вы не сможете настроить пакеты. Чтобы этого избежать свяжите устройства с помощью команды:
Аналогично нужно примонтировать proc, sysfs и devpts Теперь скопируем системные файлы (их можно взять на любой машине с Ubuntu, подключенной к интернету):
Если Вам нужно, Вы можете подправить sources.list и добавить туда сторонний репозиторий. Если Вы добавляете PPA репозиторий, то Вам помимо самого репозитория нужно добавить еще и OpenPGP ключ для пакетного менеджера в изолированной системе. Его можно найти на странице описания репозитория (он может выглядеть вот так: 1024/12345678). Скопируйте или запишите часть после косой черты (как здесь: 12345678). Этот ключ нужно добавить как можно скорее, как только мы чрутнемся в изолированную систему.
Отсутствие этого файла вызывает массу проблем в изолированных системах во всех системах, начиная с Ubuntu 9.10: https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/430224
Решением может стать символическая ссылка на /bin/true:
Если Вы этого не сделаете, то консоль выругается:
Обновите пакеты, если хотите :
Установите пакеты, необходимые для живой системы:
Ранее, до Ubuntu 10.10 пакет discover назывался discover1.
Если Вы загружаете ОС Ubuntu 10.04, то Вам нужно поставить следующие пакеты: grub2 plymouth-x11
Для ранних релизов (заканчивая версией 9.04) была характерна следующая проблема: ОС вешала сеть, если был установлен Network Manager. На наше счастье, данная проблема была устранена в релизе 9.10. Команда для установки NM:
Далее, установите те программы какие Вы захотите. На данном этапе Вы создаете свою систему. Заполняйте ее тем, чем хотите. Однако перед этим поставьте программу ubuntu after install для установки тех программ, которые Вы добавить забыли. После наполнения ПО возвращайтесь к данному руководству.
Установка программы установки
Для GTK интерфейса — Unity, GNOME, XFCE и LXDE
Unity — стандартная ОРС для ubuntu, самая красивая ОРС (по моему мнению) GNOME — что-то по-новому от старого доброго Mac OS X XFCE и LXDE — это ОРС, не нагружающие ресурсы. Рекомендованы для установки на старых компьютерах
Для Qt интерфейса — KDE
KDE — это Windows-подобное окружение рабочего стола и пожалуй, во всем хочет походить на своего старшего собрата (например это ОРС самое большое по объему данных)
Дополнительная подготовка
На данном этапе я расскажу, как создать файлы initrd.lz и casper-uuid-generic, необходимые для нормальной работы образа. В chroot выполняем
В том же терминале открываем вторую вкладку и выполняем:
Возращаемся в первую вкладку и удаляем из /tmp все:
Очистка Чрута.
Если Вы установили все программы, то убедитесь что будет работать
Ранее в этом руководстве я просил Вас сделать бекап /sbin/initctl. Вы его сделали? Он сейчас может потребоваться. Если эта команда не сработает, восстановите /sbin/initctl из бекапа.
Если у Вас более одного ядра Linux, удалите старые ядра:
После чего проведите очистку:
Если у Вас все еще подключен /dev, отключите его:
То есть, Вы вошли в изолированную систему, установили пакеты, провели очистку и вышли.
Настройка окружающей среды по умолчанию
Данный пункт не является обязательным. При загрузке окружения рабочего стола (в моем случае Unity 7) хочется настроить программы на боковой панели, настроить часы, которые выглядят ужасно в обычной версии Unity. Поэтому здесь я расскажу как можно настроить unity 7. Общеизвестно, что Unity 7 настраивается через dconf. Файлы настроек по умолчанию находятся в папке
и имеют имена соответствующие иерархии в dconf-editor. Мы изменим некоторые из них:
Листинг com.canonical.Unity.gschema.xml
Листинг com.canonical.indicator.datetime.gschema.xml
Листинг org.gnome.nautilus.gschema.xml
Создание папки для CD диска и ее заполнение
Создайте папку для cd с тремя подкаталогами:
# То же самое можно сделать командой ‘mkdir image image/casper image/isolinux image/install’ Во-первых, Вам нужно скопировать ядро и initrd, созданное с помощью Casper в изолированной системе. Скопируйте их куда-нибудь вне изолированной системы и проведите следующее:
Во-вторых, если у Вас возникли проблемы с копированием ядра или инитрд — может быть, у Вас этот файл не один — тогда используйте следующие команды:
Теперь надо поставить ISOLinux и SBM командами:
Инструкции при загрузке при создании Remix
Для того чтобы дать какие-либо инструкции при загрузке пользователю нужно создать файл image/isolinux/isolinux.txt, например:
Графика во время загрузки может отсутвовать, но это не главное. Главное состоит в том, что в тексте сверху есть спецсимвол, указывающий на файл splash.rle. Чтобы создать этот хитрый символ нужно:
1. Скопировать текст и потом его изменить.
2. Использовать следующую команду:
и изменить файл emptyfile, используя любой текстовый редактор. Добавьте имя файла после символа и затем со следующей строки напишите то, что Вы хотите вывести на экран в качестве приветствия. Сохраните данный файл как isolinux.txt и дело в шляпе!
3. (Способ для Ъ-линуксоидов!) Используйте vi, нажмите Ctrl+v и затем Ctrl+x для того чтобы создать спецсимвол. Это не работает ни в nano, ни в gedit, ни в каком редакторе, похожем на них!
Для того чтобы создать файл splash.rle, создайте изображение 640*480, конвертируйте его в 15 цветов и сохраните файл в формате .bmp. После установите NetPBM и выполните команды:
Если Вы хотите использовать анимированные изображения, такие как Usplash, убедитесь в том что Вы добавили «VGA=RRR», где RRR — ширина изображения.
Настройка загрузчика
Создайте файл image/isolinux/isolinux.cfg для настройки загрузчика. Пожалуйста, прочтите инструкцию по созданию конфига в /usr/share/doc/syslinux для того чтобы узнать все возможности конфигурирования. Здесь я выложу образец конфига (если что, сверяйтесь с ним):
Не забудьте выбрать правильное расширение для initrd (initrd.gz или initrd.lz). Теперь в CD можно войти, по крайней мере после того, как мы создадим образ.
Помимо этого зададим нужную нам локаль при запуске с помощью стандартной темы ubuntu. Для этого выполним
Формальности.
Следующие действия нужны для нормальной работы LiveCD. Нравится Вам это или нет, это нужно сделать.
Создание манифеста.
Сжатие изолированной системы.
Для того чтобы сжать систему в один файл, нужно ввести команду:
Эта команда создаст на диске filesystem.squashfs с сжатой ОС. Если Вам нужно установить с LiveCD, оставьте раздел /boot в покое. Если Вы хотите создать LiveCD только для демонстрации, то /boot можно удалить. Тогда команда, указанная выше, будет иметь вид:
Да, и еще: если Вы создаете Убунту на версии, которая вышла раньше, то нужно установить пакет из той версии, какую Вы хотите создать! (Иначе Ваш LiveCD не загрузится) Например, у Вас установлена Ubuntu 12.04, а Вы хотите создать сборку Ubuntu 14.04. Тогда Вам потребуются инструменты из trusty (14.04) репозитория. Помимо файла сжатой файловой системы, нужно написать файл с размером этой ФС. Для этого выполним команду
Создание diskdefines
Признание LiveCD подлинной
Создайте жесткую ссылку ubuntu на папку с образом диска и папку «.disk». Без этого LiveCD будет загружаться но USB Creator работать не будет. На всякий пожарный, создайте файлы со следующей информацией:
Вычисление MD5
Это вычислит контрольные суммы md5 для всех файлов в будущем образе.
Источник
Создание iso со своим образом Ubuntu и набором программ
Я собирал собственный образ ISO Ubuntu 18.04 по инструкции LiveCDCustomization на системе Ubuntu 14.04.
Мне необходимо было поставить некоторые программы, чтобы они были доступны сразу с LiveCD, без установки. Это удобно, особенно без наличия интернета.
В оригинальной инструкции LiveCDCustomization есть некоторые неясные моменты и неточности. Сама инструкция устарела, и частично не работала.
Поэтому я делал по шагам и записывал выполняемые действия.
Важно понимать, что вы делаете: вся кастомизация LiveCD проходит под chroot, и на рабочую систему (ту, где вы сейчас работаете) влияния не оказывает.
Но если выйти из chroot, все введенные команды применяются к рабочей системе. Это требуется в некоторых местах инструкции: при первичной подготовке, и в конце, при сборке. Смотри не перепутай
Подготовка
Устанавливаем зависимости на хост-систему
Потребуется 2 пакета, один занимается работой со сжатой файловой системой squashfs, другой для создания ISO-образа CDROM (ISO-9660):
Странно, но у меня уже были установлены эти пакеты. Ради интереса найдем, когда эти пакеты были установлены, для чего поищем в истории apt:
Также потребуется виртуальная машина для быстрого тестирования. Я использовал Virtualbox
Монтируем оригинальный образ ISO в mnt
Скачиваем оригинальный ISO образ Ubuntu, который будем модифицировать под свои нужны. Допустим, образ скачан и находится в
Подмонтируем этот ISO образ в каталог
/livecdtmp/mnt для дальнейшей работы:
Копируем содержимого mnt в extract-cd
Расжимаем файловую систему squashfs и перемещаем содержимое в edit
Подготавливаем рабочую среду
Копируем resolv.conf с рабочей системы, чтобы было сетевое соединение внутри чрута, также делаем это для сети::
resolv.conf в следующих шагах оказался пустым, надо понять почему, и исправить
Чрутимся, и начинаем работать со своим кастомизированным образом.
dbus-uuidgen из оригинальной инструкции я пропустил
Файл /etc/resolv.conv оказался пустым, значит что-то я сделал не так. Отредактируем его вручную, скопировав содержимое /etc/resolv.conv из рабочей системы:
Теперь сеть у нас доступна внутри чрута, проверим
Кастомизация своего образа Ubuntu
Ставим необходимые пакеты
Смотрим установленные пакеты:
Если хотим, обновляем пакеты:
Устанавливаем свои пакеты:
Следующие пакеты поставить не удалось, так как их нет в /etc/apt/ :
узнать, какие репо следует добавить для установки
Установить программы можно и из deb-пакетов, на примере Atom:
У меня установка не удалась, так как этот пакет зависит от gconf2 и gconf-service . Эти зависимости apt не сумел разрешить. Чтобы это исправить, требуется добавить в /etc/apt/ дополнительные репо. какие?
Кастомизация
Это по-желанию: читаем оригинальную инструкцию LiveCDCustomization, раздел Customizations и настраиваем фон рабочего стола, шрифты, региональные настройки и прочее. Первый шаг dbus-uuidgen и dpkg-divert можно пропустить, для Ubuntu 18.04 они не повлияли на работу apt .
Проверка и сборка ISO образа
Проверяем, что нет пользователя UID=999
В оригинальной мане указано, что если существует пользователь с UID 999, с LiveCD невозможно будет загрузиться. Такой пользователь может возникнуть при установке Virtualbox.
есть есть, то выполнить usermod -u 500 $hit , где $hit — имя проблемного пользователя
Пересобираем initrd
После модификации ядра, скриптов загрузки или добавления модулей ядра, нужно пересобрать initrd.gz и переместить его в каталог casper
Очищаем образ
Удаляем все, что не установилось и чистим систему:
Источник