Bug 36034

Summary: mkimage-preinstall: запись в /proc/sys/fs/ в контейнере
Product: Sisyphus Reporter: mikhailnov <mikhailnov>
Component: mkimage-preinstallAssignee: Alexey Gladkov <legion>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: glebfm, legion, mike
Version: unstable   
Hardware: all   
OS: Linux   

Description mikhailnov 2019-02-03 23:15:22 MSK
При обновлении mkimage-preinstall в systemd-nspawn ошибка:

mkimage-preinstall: allowing to hardlink non-owned files...
/root/tmp/rpm-tmp.PTxeqv: line 3: /proc/sys/fs/protected_hardlinks: Read-only file system
warning: %post(mkimage-preinstall-0.2.24-alt1.noarch) scriptlet failed, exit status 1
Couldn't write '0' to 'fs/protected_hardlinks', ignoring: Read-only file system
Couldn't write '0' to 'fs/protected_hardlinks', ignoring: Read-only file system
Done.

Если в /proc/sys/fs/ нельзя записать, значит так надо, это действие можно закрыть жабой ||: и не создавать дупликатов пакетов при неуспешности этого действия.

(Моя система установлена на голое железо, но обновлялась в systemd-nspawn)
Comment 1 Alexey Gladkov 2019-02-04 00:59:02 MSK
Пакет ведёт себя ровно так как должен. Он приносит настройки необходимые для mkimage и вносит необходимые изменения. Если он этого сделать не может, то происходит ошибка. В вашем случае она и случилась.
Comment 2 mikhailnov 2019-02-04 01:29:36 MSK
Тонкая грань. Файлы-конфиги в /etc/sysctl.d/ он же положил.
А включение опции до перезагрузки необязательная задача пакета, особенно при обновлении, а не установке.
Comment 3 Alexey Gladkov 2019-02-04 01:39:15 MSK
(In reply to comment #2)
> Тонкая грань. Файлы-конфиги в /etc/sysctl.d/ он же положил.
> А включение опции до перезагрузки необязательная задача пакета, особенно при
> обновлении, а не установке.

Это обязательная задача. mkimage активно использует жёсткие ссылки между чрутами и от этого он не будет отказываться. Если не отключить эту защиту, то mkimage будет неработоспособен. Эта настройка не прихоть, а необходимость.