Я хотел бы изменить цель символической ссылки из bash script. Проблема в том, что символическая ссылка очень важна (это /bin/sh
, а именно), и я бы сделал это по-модулю, чтобы:
- Новая цель будет доступна сразу после удаления старого, т.е. не будет никакой возможности, что что-то заметит его исчезновение,
- Не будет никакой возможности, что изменение не будет выполнено в середине, то есть оставить пользователя с удаленной символикой и не будет новой.
Я подумал о двух методах. Либо используя обычный ln
:
ln -fs /bin/bash /bin/sh
или используя mv
:
ln -s /bin/bash /bin/sh.new
mv /bin/sh.new /bin/sh
Какой из них лучше подходит моим потребностям? Есть ли вероятность, что один из них попытается заменить цель symlink вместо самой символической ссылки?