Где установить модули NSS на CoreOS?

У меня есть собственный модуль NSS, который я написал, и я обычно устанавливаю его, копируя библиотеку вот так ...

cp libnss_mymodule.so.0 /lib64/

... затем я добавляю свой модуль в /etc/nsswitch.conf . ..

$ grep mymodule /etc/nsswitch.conf
passwd: mymodule files usrfiles sss systemd
group: mymodule files usrfiles sss systemd

У меня это работает в CentOS 7, но не работает в CoreOS, потому что / lib64 находится в файловой системе только для чтения. Где я могу разместить библиотеку общих объектов в CoreOS, которая будет видна nsdispath ()?

РЕДАКТИРОВАТЬ: Я попытался добавить файл в / opt / me / lib64 и поместить его в переменную среды LD_LIBRARY_PATH . Похоже, это не помогло.

1
задан 12 April 2019 в 20:41
2 ответа

Я заставил его работать, поставив библиотеки /opt/mything/lib64, а затем модифицировав следующие системные конфигурации:

Добавил следующую строку в /etc/environment:

LD_LIBRARY_PATH=/opt/mything/lib64

Добавил следующую строку в /etc/systemd/system. conf:

DefaultEnvironment=LD_LIBRARY_PATH=/opt/mything/lib64

Затем выполнили следующую команду:

sudo systemctl daemon-reload

Это позволило NSS найти пользовательские модули NSS, которые я собрал.

.
0
ответ дан 3 December 2019 в 23:05

Создайте новый образ, содержащий ваши изменения, с помощью SDK разработчика.

CoreOS называет себя неизменным; это сделано намеренно.

1
ответ дан 3 December 2019 в 23:05

Теги

Похожие вопросы