Условная разблокировка пароля в файловой системе, доступной только для чтения

Рассмотрите возможность пропуска строк, содержащих "platform-domino" с помощью команды n:

sed '/platform1-domino/ n; s/platform1-.*:platform/platform1-06:hybrisb/g' file

Или поиск и замена, но с исключением букв как возможных для совпадения:

sed 's/platform1-[^d][^o][^m][^i][^n][^o].*:platform/platform1-06:hybrisb/g' file
1
24.11.2016, 02:03
1 ответ

В итоге я использовал что-то вроде (внутри initrd):

if is_dev_mode ; then
    chroot $ROOTFS_MOUNT /usr/bin/passwd --delete root
else
    chroot $ROOTFS_MOUNT /usr/bin/passwd --lock root
fi
sync

Это происходит до того, как rootfs перемонтируется только для чтения. Мне это не очень нравится, но я думаю, что это лучше, чем использовать еще один unionfs (их уже несколько). passwd в initrd'е не имеет таких причудливых опций, как в основной ОС, но chroot работает так же хорошо.

0
28.01.2020, 01:07

Теги

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