В Linux можно сменить владельца или владельца группы символической ссылки (символическая ссылка). Мне было интересно, почему кто-то хотел бы сделать это, так как разрешения символической ссылки не используются при доступе к файлу через него.
Я могу только вообразить один случай использования, где это может быть полезно: позволить пользователю удалить символическую ссылку в каталоге с закрепленным битом.
Знаете ли вы другие случаи, когда было бы полезно изменить владельца или владельца группы символической ссылки?
mv myfile foo
, и root в конечном итоге сменит владельцаmyfile
. Ноmyfile
это должен быть файл, который Ева может создать или переместить в этот каталог, это не может быть файл в системе.chown -h
в качестве меры предосторожности при смене владельца файла, который не должен быть символической ссылкой, но все же может быть (крайний случай, IMO). Это не объясняет, почему кто-то может захотеть изменить владельца файла, который на самом деле предназначен для символической ссылки, что и было задано в вопросе.chown
менять владельца «файла вне дерева» - это все, что вы меняете, это владелец каталога?chown -R
, которая вызывает(l)chown
системный вызов для каждой записи каталога. Если запись в каталоге является символической ссылкой, вы не должны вызыватьchown
системный вызов, потому что это повлияет на цель ссылки, которая может находиться за пределами дерева.Apache можно настроить так, чтобы он следовал по символическим ссылкам, только если владелец ссылки совпадает с владельцем пункта назначения. Это может помешать пользователям создавать ссылки для веб-доступа к файлам, которые им не принадлежат (например, / etc / passwd).
... так скажем, вы, как пользователь root, хотели , чтобы apache перешел по ссылке для отображения определенного файла журнала, который принадлежал xymon или что-то в этом роде, но вы не хотели ослаблять безопасность apache, позволяя ему следовать символическим ссылкам независимо от владельца , Тогда вы можете сделать xymon владельцем символической ссылки.
источник
/etc/passwd
, то злоумышленник мог иметь доступ на чтение к этому файлу без какого-либо другого локального доступа - но был бы заблокирован символической ссылкой, принадлежащей apache.Первый ответ, кажется, не затрагивает вопрос, а второй относится только к Apache.
Одна вещь, о которой я могу думать в целом о linux, - это то, что обычный пользователь может сделать жесткую ссылку на символическую ссылку, только если пользователь является владельцем символической ссылки. Почему кто-то захочет сделать такую ссылку, я не знаю.
Другое дело, что обычный пользователь может изменить владение группы файлом, только если пользователь владеет файлом (и также является членом группы, в которую добавляется файл). Это поднимает вопрос о том, кому принадлежит группа. символическая ссылка делает. В организации это может быть полезно в качестве тега, чтобы указать, какой команде понадобится ссылка.
Кроме того, по крайней мере в Ubuntu любой может обновить временную метку символической ссылки. Тем не менее, могут быть некоторые системы, которые позволяют только владельцу. Чем хороша временная метка для символической ссылки, я не уверен, но она может дать некоторую полезную информацию о том, как часто она используется.
Редактировать: я только что понял еще одну причину, почему право собственности было бы важно. Ссылка может быть внутри липкой директории, где только владелец файла может удалить или переименовать его.
источник
У меня есть программа, которая добавляет в файл журнала. Эти файлы журнала создаются ежемесячно, каждый с другим именем. Вместо того, чтобы программа определяла точное имя файла, я использую «общее» имя файла (скажем, data.log), которое является символической ссылкой, указывающей на текущий файл за этот месяц. Это автоматизировано на работе cron.
Теперь, когда создается новый ежемесячный файл, ему необходимо указать символическую ссылку на новый файл. Если существует конфликт владения / группы, программное обеспечение не может изменить символическую ссылку. Таким образом, вам нужно иметь права владельца / записи группы, чтобы изменить символическую ссылку.
источник
Если вы хотите, чтобы на начальном экране была ссылка на файл, символическая ссылка должна быть в
"/ Главная / имя пользователя / Desktop"
каталог.
Кроме того, сама символическая ссылка должна обладать правами root: root (0: 0), в противном случае ссылка не работает.
(Ubuntu / Debian и т. Д.)
источник