[devel] Hook-и для регистрации shell-ов в /etc/shell

Vladimir D. Seleznev vseleznv на altlinux.org
Чт Май 21 17:02:27 MSK 2020


On Thu, May 21, 2020 at 07:28:27AM +0300, Alexey V. Vissarionov wrote:
> On 2020-05-20 23:44:48 +0300, Aleksey Cheusov wrote:
> 
>  > Просмотрел несколько спеков на пакеты группы Shells и не нашел
>  > никаких хуков для регистрации шелов в /etc/shells. Я правильно
>  > понимаю, что в AltLinux их просто нет,
> 
> Да.
> 
>  > и сисадмин руками вписывает туда разрешенные шелы?
> 
> Нет:
> 
> %post
> fgrep -qx ^/bin/csh /etc/shells || echo /bin/csh >> /etc/shells
> fgrep -qx ^/bin/tcsh /etc/shells || echo /bin/tcsh >> /etc/shells
> 
> %postun
> sed -i -re '/^\/bin\/t\?csh/d' /etc/shells

В таком виде никуда не годится. Если удалять шелл при удалении пакета,
то обязательно с проверкой условия:

%postun
if [ $1 -eq 0 ]; then
    # то, что нужно сделать
fi

Иначе запись о шелле удалится при обновлении пакета.

https://www.altlinux.org/SpecTips/triggers

> Как нетрудно догадаться, это про tcsh, но можно использовать и для
> других шеллов после тривиальных изменений.

-- 
   WBR,
   Vladimir D. Seleznev


Подробная информация о списке рассылки Devel