Сборка дистрибутивов в системе на systemd |
Поделиться |
Здравствуйте, гость ( Вход | Регистрация )
Сборка дистрибутивов в системе на systemd |
Поделиться |
18.10.2016, 22:50
Сообщение
#1
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Выделено из темы "Программа ДистроНавигатор"
При любой сборке даже стандартных шаблонах возникает ошибка. Код mki-copy-our2out: has started executing. './altinst' -> '/tmp/.private/rupor/distronavigator/mkimage-work-dir/mkimage.install2.2qcFodCr8/.out/altinst' cp: cannot create hard link '/tmp/.private/rupor/distronavigator/mkimage-work-dir/mkimage.install2.2qcFodCr8/.out/altinst' to './altinst': Operation not permitted make[2]: *** [pack-image] Error 1 make[2]: Leaving directory `/home/rupor/distronavigator/mpd/profiles/install2' make[1]: *** [install2] Ошибка 2 make[1]: Выход из каталога `/home/rupor/distronavigator/mpd/profiles' make: *** [install-dvd5.iso] Ошибка 2 Права на каталоге mkimage-work-dir 755. Не могу понять где проблема, может файлы создаются не с теми правами. Версия программы distronavigator 0.8.3 alt 2 Сообщение отредактировал IVK - 21.10.2016, 0:42 |
|
|
19.10.2016, 9:27
Сообщение
#2
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Подобная ошибка бывает, если система на systemd и перед сборкой не выполнена от рута команда
Код echo 0 > /proc/sys/fs/protected_hardlinks (о чём в Навигаторе написано на странице запуска сборки). -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
20.10.2016, 21:21
Сообщение
#3
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Код cp: невозможно создать жёсткую ссылку «/tmp/.private/rupor/distronavigator/mkimage-work-dir/mkimage.profiles.1p3J74g7n/chroot/.in/syslinux/.gitignore» на «./syslinux/.gitignore»: Неверная ссылка между устройствами cp: невозможно создать жёсткую ссылку «/tmp/.private/rupor/distronavigator/mkimage-work-dir/mkimage.profiles.1p3J74g7n/chroot/.in/Metadata/pkg-groups.tar» на «./Metadata/pkg-groups.tar»: Неверная ссылка между устройствами cp: невозможно создать жёсткую ссылку «/tmp/.private/rupor/distronavigator/mkimage-work-dir/mkimage.profiles.1p3J74g7n/chroot/.in/.disk/info» на «./.disk/info»: Неверная ссылка между устройствами make[1]: *** [copy-tree] Ошибка 1 make[1]: Выход из каталога `/home/rupor/distronavigator/mpd/profiles' make: *** [install-dvd5.iso] Ошибка 2 Не все же, что-то не так у меня настроено. |
|
|
20.10.2016, 21:34
Сообщение
#4
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
А в конфиге /etc/hasher-priv/system у тебя что? У меня:
Код prefix=~:/tmp/.private
allowed_mountpoints=/proc -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
20.10.2016, 22:14
Сообщение
#5
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Нашел такую тему.
https://bugzilla.altlinux.org/show_bug.cgi?id=30351 Попробовал несколько вариантов, но баг возвращается после перезагрузки. Код cat /etc/hasher-priv/system # Systemwide configuration for the hasher-priv(8) helper program. # See hasher-priv.conf(5) for details. prefix=~:/tmp/.private allowed_mountpoints=/proc system я исправлял сразу после установки навигатора. allowed_mountpoints=/proc добавил Сообщение отредактировал Koi.v2 - 20.10.2016, 22:17 |
|
|
20.10.2016, 22:28
Сообщение
#6
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Нашел такую тему. https://bugzilla.altlinux.org/show_bug.cgi?id=30351 Попробовал несколько вариантов, но баг возвращается после перезагрузки. Насколько я понимаю, это Код echo 0 > /proc/sys/fs/protected_hardlinks надо выполнять после каждой перезагрузки, иначе ничего собираться не будет. -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
20.10.2016, 23:08
Сообщение
#7
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Пожалуй, надо будет как-нибудь написать скрипт, запускаемый от рута и выполняющий то, что сам Навигатор делать не может, поскольку работает только от юзера. Скрипт положить в отдельный пакет, который прописать в зависимости Навигатора. Скрипт будет при установке добавлять (если ещё нет) в /etc/hasher-priv/system строку
Код allowed_mountpoints=/proc и при каждой загрузке (если systemd) выполнять Код echo 0 > /proc/sys/fs/protected_hardlinks Причём это ведь не только Навигатору может требоваться. Вот что-то в этом роде. Кто что посоветует? -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
20.10.2016, 23:35
Сообщение
#8
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Пожалуй, надо будет как-нибудь написать скрипт, запускаемый от рута и выполняющий то, что сам Навигатор делать не может, поскольку работает только от юзера. Скрипт положить в отдельный пакет, который прописать в зависимости Навигатора. Скрипт будет при установке добавлять (если ещё нет) в /etc/hasher-priv/system строку Я mkimage-preinstall смотрел там скрипт прям в спеке, можно зависимость сделать на него. Код allowed_mountpoints=/proc и при каждой загрузке (если systemd) выполнять Код echo 0 > /proc/sys/fs/protected_hardlinks Причём это ведь не только Навигатору может требоваться. Вот что-то в этом роде. Кто что посоветует? У меня после перезагрузки параметр не меняется на 1, но даже если выполнять команду каждый раз сборка все равно завершается ошибкой выше. Любопытно в чем же дело. Сообщение отредактировал Koi.v2 - 20.10.2016, 23:36 |
|
|
20.10.2016, 23:50
Сообщение
#9
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Я mkimage-preinstall смотрел там скрипт прям в спеке, можно зависимость сделать на него. Но там, как я понял, эта команда выполняется только при установке пакета. У меня после перезагрузки параметр не меняется на 1, но даже если выполнять команду каждый раз сборка все равно завершается ошибкой выше. Любопытно в чем же дело. И это, надо полагать, не только в Навигаторе, но и при сборке из консоли? -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
21.10.2016, 0:27
Сообщение
#10
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
И это, надо полагать, не только в Навигаторе, но и при сборке из консоли? Ага. Задал вопрос на альтовском форуме. https://forum.altlinux.org/index.php?topic=...97785#msg297785 Может общими усилиями решим проблему. |
|
|
21.10.2016, 20:20
Сообщение
#11
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Потестировал сборку на tde с инит, собирается и не буянит, значит проблема все же в systemd.
|
|
|
21.10.2016, 20:41
Сообщение
#12
|
|
Мастер Группа: Активный Пользователь Сообщений: 542 Регистрация: 4.2.2016 Вставить ник Цитата Пользователь №: 2850 Страна: Россия Город: Не указан Пол: Муж. Репутация: 2 |
Подобная ошибка бывает, если система на systemd и перед сборкой не выполнена от рута команда Код echo 0 > /proc/sys/fs/protected_hardlinks (о чём в Навигаторе написано на странице запуска сборки). Может галочку какую предусмотреть в дистронавигаторе, чтобы эта комнда автоматически вводилась на systemd и не надо было о ней помнить? |
|
|
21.10.2016, 21:18
Сообщение
#13
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Потестировал сборку на tde с инит, собирается и не буянит, значит проблема все же в systemd. Но народ ведь как-то собирает дистры и в системах на systemd Ау, есть тут такой народ? -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
21.10.2016, 21:25
Сообщение
#14
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Может галочку какую предусмотреть в дистронавигаторе, чтобы эта комнда автоматически вводилась на systemd и не надо было о ней помнить? Вся проблема в том, что Навигатор работает исключительно от юзера, и это принципиально, а команда эта, насколько я понимаю, может выполняться только от рута. И удобнее не кнопкой её запускать, а автоматически при запуске системы - или перед каждой сборкой нужно? или одноразово? просто сам не сталкивался, так что разбираться надо; я как-то думал, что вопрос давно решён и размышлять тут не о чем -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
21.10.2016, 22:15
Сообщение
#15
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Может галочку какую предусмотреть в дистронавигаторе, чтобы эта комнда автоматически вводилась на systemd и не надо было о ней помнить? В теории можно тянуть зависимость дистронавигатором пакет mkimage-preinstall, а он свою очередь поправит хардлинки. Либо в спеке навигатора прописать такую же команду как в mkimage-preinstall, тогда rpm навигатора вовремя установки заодно хардлинк исправит. Но народ ведь как-то собирает дистры и в системах на systemd Ау, есть тут такой народ? До каникулов я собирал на р7 там тоже systemd, но хватало echo 0 > /proc/sys/fs/protected_hardlinks Проблем не было. Судя по баг зиле на р8 такая проблема у всех. |
|
|
21.10.2016, 22:17
Сообщение
#16
|
|
Профессионал Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: 20 |
|
|
|
21.10.2016, 23:27
Сообщение
#17
|
|
Мастер Группа: Активный Пользователь Сообщений: 542 Регистрация: 4.2.2016 Вставить ник Цитата Пользователь №: 2850 Страна: Россия Город: Не указан Пол: Муж. Репутация: 2 |
Есть конечно, после того как система загрузилась в терминале под root-ом : Код sysctl -w fs.protected_symlinks=0 sysctl -w fs.protected_hardlinks=0 Никаких проблем. Один раз или каждый раз при загрузке? Или перед каждой сборкой? Надо эту информацию написать в окошке навигатора. |
|
|
21.10.2016, 23:42
Сообщение
#18
|
|
Профессионал Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: 20 |
При каждой загрузке , работает до следующей перезагрузки компьютера.
|
|
|
22.10.2016, 19:06
Сообщение
#19
|
|
Мастер Группа: Активный Пользователь Сообщений: 620 Регистрация: 11.5.2015 Вставить ник Цитата Пользователь №: 2810 Страна: Россия Город: Не указан Пол: Муж. Репутация: 4 |
Ааа... вот я балда, sysctl -w fs.protected_hardlinks=0 установлено, а sysctl -w fs.protected_symlinks=0 забыл.
Так собирается. Багу читал не внимательно там написано было о симлинке. |
|
|
22.10.2016, 19:14
Сообщение
#20
|
|
Профессионал Группа: Глоб. Модератор Сообщений: 10027 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: 30 |
Ясно, значит, в справке Навигатора устаревший рецепт решения проблемы; исправлю. Интересно только, а для систем на седьмой платформе этот новый рецепт тоже годится или там надо применять старый? И, раз уж это требуется при каждой перезагрузке, то mkimage-preinstall, получается, проблемы не решит.
-------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
23.10.2016, 10:13
Сообщение
#21
|
|
Профессионал Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: 20 |
Для 7-ой платформы тоже подходит , я только им и пользовался .
|
|
|
Текстовая версия | Сейчас: 18.4.2024, 15:31 | |