Cоздание своего дистрибутива Linux с помощью Remastersys Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:cоздание_своего_дистрибутива_linux [2013/10/29 01:10]
[1. УСТАНОВКА]
wiki:cоздание_своего_дистрибутива_linux [2018/10/16 21:41] (текущий)
[5. ОЧИСТКА СБОРКИ ОТ ЛИШНЕГО]
Строка 9: Строка 9:
  
 ==== 1. УСТАНОВКА ==== ==== 1. УСТАНОВКА ====
-Для установки ​лучше воспользоваться терминалом. Открываем терминал и вводим по очереди следующие строки: +Для установки ​Remastersys необходимо скачать ​и установить вручную , например, через программу gdebi, 2 пакета**remastersys_3.0.x-2_all.deb** и **remastersys-gtk_3.0.x-2_all.deb** \\  
-<​code>​wget -q -O- http://www.remastersys.com/​ubuntu/​remastersys.gpg.key | sudo apt-key add -  +Для Ubuntu 10.04 14.04 скачать ​ [[http://turbobit.net/​igefdv3mxdie.html |отсюда]] \\ 
-sudo apt-add-repository '​deb ​http://www.remastersys.com/ubuntu precise main' ​   +Для Ubuntu ​16.04 - 17.04 скачать ​ [[http://turbobit.net/​zfu81s0fm8sd.html |отсюда]]\\ 
-sudo apt-get update +Для Ubuntu ​17.10  ​скачать ​ [[http://turbobit.net/c22aciwfevsw.html ​|отсюда]]\\ 
-sudo apt-get install remastersys remastersys-gtk</​code>​ +Для Ubuntu 18.04  ​скачать  [[http://turbobit.net/​gzt6863y5rw6.html |отсюда]]\\
- +
-Вторая ​строчка в данном коде для Ubuntu 12.04 Precise.\\ +
-Для Ubuntu ​12.10 Quantal заменить на:\\ +
-<​code>​sudo apt-add-repository '​deb ​http://www.remastersys.com/ubuntu quantal main'</​code>​ +
- +
-Для ​всех остальных версий ​Ubuntu ​придется ​скачать [[http://www.remastersys.com/​downloads/ |отсюда]] ​и установить вручную 2 пакета**remastersys_3.0.3-1_all.deb** и **remastersys-gtk_3.0.3-1_all.deb**.+
  
 ==== 2. ПЕРВЫЕ ШАГИ ==== ==== 2. ПЕРВЫЕ ШАГИ ====
  
-Запускаем Система => Администрирование => Remastersys (Я использую Мате 1.6. С другими рабочими столами расположение может отличаться). Видим вот такое окно:+Запускаем Система => Администрирование => Remastersys (Я использую Мате 1.6. С другими рабочими столами расположение может отличаться). Видим вот такое окно:\\
 {{:​wiki:​создание_своего_дистрибутива_linux:​снимок-remastersys.png}}\\ {{:​wiki:​создание_своего_дистрибутива_linux:​снимок-remastersys.png}}\\
 Коротко об основных кнопках:​\\ Коротко об основных кнопках:​\\
Строка 85: Строка 79:
 то всё в порядке и использовать опцию ​ //-comp xz// можно смело. то всё в порядке и использовать опцию ​ //-comp xz// можно смело.
  
 +<​note>​**С версии 3.06** включение компрессии //xz// вместо //gzip// заменено на вкл./​выкл. флажка
 +
 +{{:​wiki:​снимок_экрана_в_2018-10-16_22-24-15.png?​direct|}}</​note>​
 ==== 4. ЗАГРУЗОЧНОЕ МЕНЮ ==== ==== 4. ЗАГРУЗОЧНОЕ МЕНЮ ====
 По-умолчанию Remastersys создает загрузочное меню сборки довольно-таки скучное и однообразное. Одно только радует,​ что меню достаточно функциональное. Я долго искал простой способ включения своего меню без пересборки всего образа. Все дальнейшие действия не были задуманы авторами Remastersys и являются своего рода моими уловками и обходными способами,​ к которым я шел несколько месяцев различными экспериментами. Поэтому этот раздел не претендует на правильную инструкцию по Remastersys.\\ По-умолчанию Remastersys создает загрузочное меню сборки довольно-таки скучное и однообразное. Одно только радует,​ что меню достаточно функциональное. Я долго искал простой способ включения своего меню без пересборки всего образа. Все дальнейшие действия не были задуманы авторами Remastersys и являются своего рода моими уловками и обходными способами,​ к которым я шел несколько месяцев различными экспериментами. Поэтому этот раздел не претендует на правильную инструкцию по Remastersys.\\
Строка 101: Строка 98:
 **isolinux.cfg** - конфигурационный файл загрузочного меню.\\ **isolinux.cfg** - конфигурационный файл загрузочного меню.\\
 //​vesamenu.c32,​ isolinux.bin//​ - системные файлы.\\ //​vesamenu.c32,​ isolinux.bin//​ - системные файлы.\\
-Смело меняем файл ​загрузочного меню на свой. Тип файла и название должно остаться таким же. Размер изображения обязательно ​ 640х480 точек на дюйм.\\+Смело меняем фон загрузочного меню на свой. Тип файла и название должно остаться таким же. Размер изображения обязательно ​ 640х480 точек на дюйм.\\
 Далее я выложил листинг отредактированного конфигурационного файла isolinux.cfg. За основу взят стандартный конфигурационный файл Remastersys. Я постарался максимально понятно написать комментарии к строкам. Почти вся информация в интернете на английском языке и очень краткая,​ поэтому много времени потратил на эксперименты,​ чтобы узнать,​ что и как работает. Далее я выложил листинг отредактированного конфигурационного файла isolinux.cfg. За основу взят стандартный конфигурационный файл Remastersys. Я постарался максимально понятно написать комментарии к строкам. Почти вся информация в интернете на английском языке и очень краткая,​ поэтому много времени потратил на эксперименты,​ чтобы узнать,​ что и как работает.
 <​code>​ <​code>​
-default vesamenu.c32\\ +default vesamenu.c32 
-prompt 0\\ +prompt 0 
-timeout 100\\ +timeout 100 
-font cyr_a8x16.psf\\ +font cyr_a8x16.psf 
-# Фон загрузочного меню\\+# Фон загрузочного меню
 menu background splash.png menu background splash.png
  
-# Цвет имеет первые два регистра прозрачности значение от 0 (прозрачно) до 255 (непрозрачно) в HEX.\\ +# Цвет имеет первые два регистра прозрачности значение от 0 (прозрачно) до 255 (непрозрачно) в HEX. 
-# Остальные 6 цифр цвет в режиме HEX (код цвета можно взять из GIMPa). Сначала пишется цвет букв, потом фона, потом 3 режима тени (none, std, all)\\+# Остальные 6 цифр цвет в режиме HEX (код цвета можно взять из GIMPa). Сначала пишется цвет букв, потом фона, потом 3 режима тени (none, std, all)
  
-# Цвет заголовка\\ +# Цвет заголовка 
-menu color title * #ff00923F #00000000 none\\ +menu color title * #ff00923F #00000000 none 
-# Цвет оконтовки меню (бордюра)\\ +# Цвет оконтовки меню (бордюра) 
-menu color border * #00000000 #00000000 none\\ +menu color border * #00000000 #00000000 none 
-# Цвет выбранной строки меню\\ +# Цвет выбранной строки меню 
-menu color sel * #7fffffff #00000000 none\\ +menu color sel * #7fffffff #00000000 none 
-# Цвет невыбранной строки меню\\ +# Цвет невыбранной строки меню 
-menu color unsel * #ffC4613B #00000000 none\\ +menu color unsel * #ffC4613B #00000000 none 
-# Цвет неактивной строки (отключенной но отображающейся на экране)\\ +# Цвет неактивной строки (отключенной но отображающейся на экране) 
-menu color disabled * #ffC4613B #00000000 none\\ +menu color disabled * #ffC4613B #00000000 none 
-# Цвет строки tabmsg расположенной под меню (с надписью Нажмите ENTER для загрузки или TAB для редактирования меню)\\ +# Цвет строки tabmsg расположенной под меню (с надписью Нажмите ENTER для загрузки или TAB для редактирования меню) 
-menu color tabmsg * #ffCC623E #00000000 none\\ +menu color tabmsg * #ffCC623E #00000000 none 
-# Цвет строки timeout (с надписью Автоматическая загрузка начнется через)\\ +# Цвет строки timeout (с надписью Автоматическая загрузка начнется через) 
-menu color timeout_msg * #ffCC623E #00000000 none\\ +menu color timeout_msg * #ffCC623E #00000000 none 
-#​Отступ с верху, строк\\+#​Отступ с верху, строк
 menu vshift 1 menu vshift 1
  
-#​Количество строк меню\\+#​Количество строк меню
 menu rows 6 menu rows 6
  
-# Положение строки tabmsg\\ +# Положение строки tabmsg 
-menu tabmsgrow 11\\ +menu tabmsgrow 11 
-# Положение строки timeout\\ +# Положение строки timeout 
-menu timeoutrow 12\\ +menu timeoutrow 12 
-menu AUTOBOOT Автоматическая загрузка начнется через # сек\\ +menu AUTOBOOT Автоматическая загрузка начнется через # сек 
-menu tabmsg Нажмите ENTER для загрузки или TAB для редактирования меню\\+menu tabmsg Нажмите ENTER для загрузки или TAB для редактирования меню
 menu cmdlinerow 11 menu cmdlinerow 11
  
-#​Ширина меню, количество символов\\+#​Ширина меню, количество символов
 menu width 80 menu width 80
  
-#​Отступ символов слева от края (как табуляция)\\+#​Отступ символов слева от края (как табуляция)
 menu margin 12 menu margin 12
  
  
-#menu title Ubuntu 12.04 Desktop Mate 1.6\\ +#menu title Ubuntu 12.04 Desktop Mate 1.6 
-label live\\ +label live 
-# menu label live - boot the Live System\\ +# menu label live - boot the Live System 
-menu label Загрузить систему с LiveDVD диска\\ +menu label Загрузить систему с LiveDVD диска 
-kernel /​casper/​vmlinuz\\+kernel /​casper/​vmlinuz
 append file=/​cdrom/​preseed/​custom.seed boot=casper initrd=/​casper/​initrd.gz quiet splash -- append file=/​cdrom/​preseed/​custom.seed boot=casper initrd=/​casper/​initrd.gz quiet splash --
  
-label install\\ +label install 
-menu label Установить Ubuntu 12.04 LTS Mate 1.6\\ +menu label Установить Ubuntu 12.04 LTS Mate 1.6 
-kernel /​casper/​vmlinuz\\ +kernel /​casper/​vmlinuz 
-append file=/​cdrom/​preseed/​custom.seed boot=casper only-ubiquity initrd=/​casper/​initrd.gz quiet splash --\\ +append file=/​cdrom/​preseed/​custom.seed boot=casper only-ubiquity initrd=/​casper/​initrd.gz quiet splash -- 
-# Сделать строку меню не активной\\+# Сделать строку меню не активной
 # menu disable # menu disable
  
-label check\\ +label check 
-menu label Проверить диск на ошибки\\ +menu label Проверить диск на ошибки 
-kernel /​casper/​vmlinuz\\ +kernel /​casper/​vmlinuz 
-append boot=casper integrity-check initrd=/​casper/​initrd.gz quiet splash --\\+append boot=casper integrity-check initrd=/​casper/​initrd.gz quiet splash --
  
-label memtest\\ +label memtest 
-menu label Проверить память\\ +menu label Проверить память 
-kernel /​install/​memtest\\+kernel /​install/​memtest
 append - append -
  
-label hd\\+label hd
 menu label Загрузиться с первого жесткого диска\\ menu label Загрузиться с первого жесткого диска\\
-localboot 0x80\\+localboot 0x80
 </​code>​ </​code>​
 Кодировка файла //​isolinux.cfg//​ должна быть обязательно CP 866. Можно сохранять и редактировать в Cooledit (текстовый редактор Midnight Commandera),​ в OpenOffice и др. Взять мой отредактированный файл //​isolinux.cfg//​ можно [[http://​yadi.sk/​d/​DwLmqraWAomdc | здесь]].\\ Кодировка файла //​isolinux.cfg//​ должна быть обязательно CP 866. Можно сохранять и редактировать в Cooledit (текстовый редактор Midnight Commandera),​ в OpenOffice и др. Взять мой отредактированный файл //​isolinux.cfg//​ можно [[http://​yadi.sk/​d/​DwLmqraWAomdc | здесь]].\\
Строка 207: Строка 204:
 После удаления языковых файлов рекомендую переустановить пакет //​locales//,​ иначе возникнут проблемы при установке языковых пакетов в сборке. Переустановка вернет лишь настройки локалей с возможностью установки других языков. Никаких языковых пакетов скачиваться не будет. После удаления языковых файлов рекомендую переустановить пакет //​locales//,​ иначе возникнут проблемы при установке языковых пакетов в сборке. Переустановка вернет лишь настройки локалей с возможностью установки других языков. Никаких языковых пакетов скачиваться не будет.
  
-Следующим этапом будет очистка кэша программ. В корне системы есть папка **/var**. В ней программы оставляют свои временные файлы, нужные до поры до времени. Дальше я перечислю папки, в которых можно удалить все файлы, не причинив вреда системе,​ и тем самым уменьшить размер сборки.+Следующим этапом будет очистка кэша программ. В корне системы есть папка **/var**. В ней программы оставляют свои временные файлы, нужные до поры до времени. Дальше я перечислю папки, в которых можно удалить все файлы, не причинив вреда системе,​ и тем самым уменьшить размер сборки.\\ 
 +<​note>​**С версии 3.06** и выше временные файлы удаляются автоматически</​note>​
 **/​var/​backups**\\ **/​var/​backups**\\
-**/​var/​cache/​apt**\\+**/​var/​cache/​apt/** - не удалять папку archives\\ 
 +**/​var/​cache/​apt/​archives** - не удалять папку partial и файл lock \\
 **/​var/​cache/​apt-xapian-index**\\ **/​var/​cache/​apt-xapian-index**\\
 **/​var/​cache/​flashplugin-installer**\\ **/​var/​cache/​flashplugin-installer**\\
 **/​var/​crash**\\ **/​var/​crash**\\
-**/​var/​lib/​apt/​lists**\\ +**/​var/​lib/​apt/​lists** ​- не удалять папку partial и файл lock \\ 
-**/​var/​lib/​update-notifer/​package-data-downloads**\\ +**/​var/​lib/​update-notifer/​** - не удалять папки ​package-data-downloads ​и user.d\\ 
-**/​var/​lib/​update-notifer/​user.d** - __удалять обязательно,​ иначе выдает окно ошибки__ \\+**/​var/​lib/​update-notifer/​package-data-downloads** - не удалять папку partial и файл lock \\ 
 +**/​var/​lib/​update-notifer/​user.d** - __удалять ​все файлы ​обязательно,​ иначе выдает окно ошибки__ \\
 **/​var/​tmp**\\ **/​var/​tmp**\\
 +\\
 Remastersys ​ в начале установки копирует содержимое папки /var в свою временную папку ///​home/​remastersys/​remastersys/​dummysys/​var//,​ откуда потом и включает в сборку файлы. Учитывая,​ что после копирования Remastersys проводит еще подготовительные операции,​ у нас есть примерно 5 минут удалить лишнее из папки ​ ///​home/​remastersys/​remastersys/​dummysys/​var//​. Тем более, что даже, если мы удалили из папки ///​var/​cache/​apt//​ файлы, они всё-равно создаются и копируются в папку ///​home/​remastersys/​remastersys/​dummysys/​var/​cache/​apt// ​ , утяжеляя сборку.\\ Remastersys ​ в начале установки копирует содержимое папки /var в свою временную папку ///​home/​remastersys/​remastersys/​dummysys/​var//,​ откуда потом и включает в сборку файлы. Учитывая,​ что после копирования Remastersys проводит еще подготовительные операции,​ у нас есть примерно 5 минут удалить лишнее из папки ​ ///​home/​remastersys/​remastersys/​dummysys/​var//​. Тем более, что даже, если мы удалили из папки ///​var/​cache/​apt//​ файлы, они всё-равно создаются и копируются в папку ///​home/​remastersys/​remastersys/​dummysys/​var/​cache/​apt// ​ , утяжеляя сборку.\\
 В эти же 5 минут у Вас есть возможность почистить папку ///root//. В ней оставляйте только те файлы, которые есть в папке ///​etc/​skel//​ и папку Desktop. В эти же 5 минут у Вас есть возможность почистить папку ///root//. В ней оставляйте только те файлы, которые есть в папке ///​etc/​skel//​ и папку Desktop.
Строка 226: Строка 226:
   * Настройки новых пользователей хранятся в папке ///​etc/​skel//​. Если Вы хотите,​ чтобы все пользователи имели какие-то одинаковые настройки отличные от по-умолчанию(дефолтных),​ то копируйте нужные файлы из своей папки ///​home/​[ваш логин входа в систему]//​ в эту папку, не забывая менять права со своих на права root. Всё подряд копировать туда не нужно, это может привести к определенным конфликтам. Обычно для каждой программы это 2-3 файла настроек. Помните,​ чем меньше вы туда скопируете,​ тем профессиональнее будет сборка и меньше проблем у пользователей.   * Настройки новых пользователей хранятся в папке ///​etc/​skel//​. Если Вы хотите,​ чтобы все пользователи имели какие-то одинаковые настройки отличные от по-умолчанию(дефолтных),​ то копируйте нужные файлы из своей папки ///​home/​[ваш логин входа в систему]//​ в эту папку, не забывая менять права со своих на права root. Всё подряд копировать туда не нужно, это может привести к определенным конфликтам. Обычно для каждой программы это 2-3 файла настроек. Помните,​ чем меньше вы туда скопируете,​ тем профессиональнее будет сборка и меньше проблем у пользователей.
   * Программы запуска для всех пользователей отредактировать,​ добавить,​ удалить лучше в папке ///​etc/​xdg/​autostart//,​ не засоряя папку ///​etc/​skel//​   * Программы запуска для всех пользователей отредактировать,​ добавить,​ удалить лучше в папке ///​etc/​xdg/​autostart//,​ не засоряя папку ///​etc/​skel//​
-  * Если Вы хотите сделать сборку с рабочим столом отличным от имеющегося в дистрибутиве,​ то лучше воспользоваться минимальной сборкой без графического окружения,​ включающей в себя ядро и самый минимум пакетов,​ который позволяет запускает систему в режиме консоли. И уже поверх этой системы доустанавить нужные пакеты и проводить нужные настройки. Такой метод имеет меньше ошибок,​ чем если брать готовую полную сборку и пытаться выпилить из нее ненужное.\\ Здесь все возможные mini.iso для Ubuntu от релиза ​8.04 до 13.10 https://​help.ubuntu.com/​community/​Installation/​MinimalCD+  * Если Вы хотите сделать сборку с рабочим столом отличным от имеющегося в дистрибутиве,​ то лучше воспользоваться минимальной сборкой без графического окружения,​ включающей в себя ядро и самый минимум пакетов,​ который позволяет запускает систему в режиме консоли. И уже поверх этой системы доустанавить нужные пакеты и проводить нужные настройки. Такой метод имеет меньше ошибок,​ чем если брать готовую полную сборку и пытаться выпилить из нее ненужное.\\ Здесь все возможные mini.iso для Ubuntu от релиза ​12.04 до 16.04 https://​help.ubuntu.com/​community/​Installation/​MinimalCD
  
 Удачи! И пусть мир узнает Ваши творения!\\ Удачи! И пусть мир узнает Ваши творения!\\
  
 ===== Ссылки ===== ===== Ссылки =====
-  * http://​mkcdlinux.blogspot.ru/​2013/​10/​blog-post.html+  * http://​mkcdlinux.blogspot.ru/​
  --- [[user>​BaaTLT]] //​2013/​10/​18 15:28//  --- [[user>​BaaTLT]] //​2013/​10/​18 15:28//