LINUX.ORG.RU
решено ФорумAdmin

Динамическая символьная ссылка


0

2

Здравствуйте. Пытаюсь сделать ссылку из каталога /usr/src в домашний каталог текущего пользователя, и чтобы она менялась в зависимости от текущего пользователя.

Давать права на папку src не хочется, а значит удалять ссылку нельзя, а изменение ссылки с ключами -sfn пересоздает что равносильно созданию новой.

Пока получилось сделать так: дал права на изменение в папке src, сделал скрипт создания ссылки для текущего пользователя и скрипт для удаления ссылки, для входа и выхода пользователя соответственно.

Хотелось бы узнать как это можно сделать «по-умному». Заранее спасибо


Симлинки не бывают динамическими, к сожалению. Тоже иногда возникает такая потребность, но мне нужен симлинк в хомяк из read-only фс. Решаю таким костылём:

1. Ссылка указывает на (несуществующий) /tmp/progname-home.

2. В скрипте перез запуском нужной программы делается ln -s $HOME/.local/share/progname /tmp/progname-home.

Соответственно тебе можно поступить так же — чтобы не давать права на изменение сразу всем и всего src, сделать симлинк куда-то, где все могут редактировать (например в /tmp), а там уже скриптом создавать-удалять нужный симлинк.

Psych218 ★★★★★
()
Последнее исправление: Psych218 (всего исправлений: 1)

Возможно стоит покопаться в login, pam или что у тебя в дистрибутиве отвечает за авторизацию пользователя.

А что должно произойти, если залогинено несколько пользователей одновременно?

В принципе цепочка из двух симлинков тоже возможна.

Xenius ★★★★★
()
Последнее исправление: Xenius (всего исправлений: 1)

Через unionfs типа aufs или overlayfs такое делается.

vel ★★★★★
()

По умному - вместо ссылки использовать переменную $HOME

Но не всегда проканает. Если именно ссылка нужна, то печалька, только в автозапуск скрипты пихать.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)

Ссылка на /proc/self/cwd — самое близкое, что можно сделать без fuse на пару строк, но она будет указывать на текущую рабочую директорию того, кто читает, а не на домашнюю.

x3al ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.