Summary: | Не работает установка по HTTP с нераспакованного образа, если указан ramdisk_size=... | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | obidinog <obidinog> | ||||||||
Component: | make-initrd-bootchain | Assignee: | Leonid Krivoshein <klark> | ||||||||
Status: | CLOSED NOTABUG | QA Contact: | qa-sisyphus | ||||||||
Severity: | normal | ||||||||||
Priority: | P5 | CC: | antohami, boyarsh, klark, mike, rider, sem | ||||||||
Version: | unstable | ||||||||||
Hardware: | all | ||||||||||
OS: | Linux | ||||||||||
See Also: | https://bugzilla.altlinux.org/show_bug.cgi?id=42967 | ||||||||||
Attachments: |
|
Created attachment 16412 [details]
screen2
Компонент выбран неверно. Это make-initrd-bootchain-altboot отвечает за загрузку по сети. Укзан неверный параметр загрузки. Чтобы загрузить iso целиком, нужно указать параметр type:iso так: ip=dhcp automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name>,type:iso stagename=altinst Подробности в баге 42967. (Ответ для Антон Мидюков на комментарий #2) > ip=dhcp > automatic=method:http,server:<ip-server>,directory:/share/<iso_name>,type: > iso stagename=altinst Данное решение не помогло(см.скрин3) Created attachment 16417 [details]
screen3
(Ответ для obidinog@basealt.ru на комментарий #4) > Создано вложение 16417 [details] [подробности] > screen3 Неверный путь до образа. Перепроверьте. Я правильно понимаю, что прописано directory:/share/1.iso/altinst ? Нужно directory:/share/1.iso Путь указан верно, «directory:/share/1.iso» Полная команда: ip=dhcp automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name>,type:iso stagename=altinst (Ответ для obidinog@basealt.ru на комментарий #7) > Путь указан верно, «directory:/share/1.iso» > Полная команда: > ip=dhcp > automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name>,type: > iso stagename=altinst Опечатались. (Ответ для obidinog@basealt.ru на комментарий #7) > Полная команда: > ip=dhcp > automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name>,type: > iso stagename=altinst опечатка. UPD: Полная команда: ip=dhcp automatic=method:http,server:<ip-server>,directory:/share/1.iso,type:iso stagename=altinst (Ответ для obidinog@basealt.ru на комментарий #9) > (Ответ для obidinog@basealt.ru на комментарий #7) > > Полная команда: > > ip=dhcp > > automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name>,type: > > iso stagename=altinst > > опечатка. > UPD: > Полная команда: > ip=dhcp > automatic=method:http,server:<ip-server>,directory:/share/1.iso,type:iso > stagename=altinst А можно совсем полную привести? Начиная с linux Попробуйте убрать из параметров загрузки ramdisk_size=..., а также проверьте логи на сервере, куда стучится altboot, правильно ли указаны пути. См. https://git.altlinux.org/gears/m/make-initrd-bootchain.git?p=make-initrd-bootchain.git;a=blob;f=bootchain-doc/testing/mksrvdata.sh#l287 и в этом же скрипте со строки 62 -- в этом файле все возможные варианты параметров altboot. На всякий случай: на третьем скриншоте видно, что используется модуль download не в том режиме, независимо от type=iso, на это указывает to=RD. Полный ISO-образ не может быть загружен в RAM-disk. Поэтому шаг download воспринимает параметр directory как каталог на сервере, в котором должен лежать файл stagename, отсюда столь странный путь /share/1.iso/altinst. Т.е. достаточно убрать ramdisk_size=... (Ответ для Leonid Krivoshein на комментарий #12) > На всякий случай: на третьем скриншоте видно, что используется модуль > download не в том режиме, независимо от type=iso, на это указывает to=RD. > Полный ISO-образ не может быть загружен в RAM-disk. Поэтому шаг download > воспринимает параметр directory как каталог на сервере, в котором должен > лежать файл stagename, отсюда столь странный путь /share/1.iso/altinst. Т.е. > достаточно убрать ramdisk_size=... Из этого я делаю вывод, что ошибка есть. И состоит она в том, что при явном указании типа загружаемого образа эвристика не отключается. Это нужно исправить. Загрузка по http начинает работать при удалении ramdisk_size=... и добавлении ip=dhcp automatic=method:http,server:<ip-server>,directory:/share/<iso>.iso,type:iso stagename=altinst (In reply to Антон Мидюков from comment #13) > Из этого я делаю вывод, что ошибка есть. И состоит она в том, что при явном > указании типа загружаемого образа эвристика не отключается. Это нужно > исправить. Логика для методов ftp и http описана в #42967#c4, тут нет ошибки: 1. Если указан ramdisk_size=..., сквош сначала грузится в RAM-диск; 2. При наличии automatic=type:iso,..., ISO-образ грузится целиком в TMPFS; 3. Если ramdisk_size=... не указан, сквош грузится в TMPFS. При этом параметр lowmem не имеет значения. ramdisk_size -- параметр ядра, оно либо создаёт RAM-диски, либо не создаёт. Нужный размер RAM-диска под целый ISO определить заранее и записать на тот же ISO-образ невозможно. Раз параметр (ramdisk_size) прописан, значит это старый способ загрузки сквошаб эвристика тут уместна. По твоему настоянию в эту логику был добавлен п.3, т.е. по умолчанию мы теперь грузим сквош в TMPFS, а не в RAM-диск, достаточно просто убрать в m-p параметр ramdisk_size. Так как: (Ответ для Leonid Krivoshein на комментарий #15) >ramdisk_size -- параметр ядра, оно либо создаёт RAM-диски, либо не создаёт. то действительно всё правильно сейчас работает. Исправлять нечего. *** Bug 51545 has been marked as a duplicate of this bug. *** |
Created attachment 16411 [details] screen1 Пакет: installer 1.15.9-alt1 Шаги: Настроить сервер http 1)Установить пакет веб-сервера Apache: # apt-get install -y apache2 2)В файле /etc/httpd2/conf/sites-enabled/000-default.conf заменить содержимое: # cat > /etc/httpd2/conf/sites-enabled/000-default.conf << '_EOF_' <VirtualHost *> ServerAdmin webmasterr@localhost DocumentRoot "/srv/public/netinst/mnt/" <Directory /> Include conf/include/Directory_root_default.conf </Directory> ErrorLog /var/log/httpd2/error_log LogLevel warn <IfModule alias_module> Alias /share/ "/mnt/sharefolder/" </IfModule> </VirtualHost> _EOF_ 3)В файле /etc/httpd2/conf/include/Directory_root_default.conf заменить строку: # sed -i "s|Require all denied|Require all granted|g" /etc/httpd2/conf/include/Directory_root_default.conf 4)Перезапустить сервис Apache: # systemctl restart httpd2 # systemctl enable httpd2 5)Создать папку для хранилища ISO-образов и поместить туда образ: # mkdir -p /mnt/sharefolder Клиент: 1) Клиент с загруженным образом Sisyphus 2) В меню установки выбрать Установить... и нажать клавишу E 3) В параметрах ядра добавить следующую опцию: ip=dhcp automatic=method:http,server:<ip-server>,direcroty:/share/<iso_name> stagename=altinst 4)Нажать F10 Результат: Образ не загружается, ошибка "Connection error or specified URL unavailable now!" Но с сервером http проблем нет, работает корректно, образ загружается. Ожидаемый результат: Успешная загрузка образа Дополнительно: В P10 ошибка не воспроизводится (с этим же сервером) Прикладываю скрины ошибок