
Как создать символическую ссылку, которая будет работать примерно так:
Есть символическая ссылка,
/home/user/
называемаяwww
Я хочу сделать так, чтобы «пользователь» мог зайти в символическую ссылку, и все принадлежало бы «пользователю», но в реальном каталоге все принадлежало бы «www-data».
Я знаю, что объясняю bindfs
, но это ужасно с точки зрения масштабируемости bindfs
.
Просто используя, bindfs
чтобы разрешить 2 разработчикам доступ к веб-сайтам клиентов, это сталооченьМне ясно, что как только у меня появятся клиенты, которым понадобится FTP-доступ, будет нелегко сделать это автоматически, сохранив при этом удобство обслуживания.
решение1
Вы объясняете bindfs. То, что вы хотите сделать, не может быть сделано чем-то существенно более простым. Символические ссылки не влияют на разрешения, они не решат вашу проблему.
Утверждение, что «это ужасно для масштабируемости», не опирается ни на один факт, который я могу придумать. Bindfs довольно прост в использовании — просто вызовите команду bindfs
для создания представления файловой системы и вызовите, fusermount -u
когда вам это представление надоест. Если вы что-то не можете понять, не стесняйтесь задавать вопросы здесь.
Однако bindfs может быть не тем, что вам нужно, поскольку указанное вами требование не является хорошей идеей в большинстве случаев. Обычно плохая идея иметь файл, который одновременно принадлежит www-data
, т. е. предназначен для управления веб-приложением, и к которому другие пользователи имеют прямой доступ. Если файл должен бытьчитатьприложением и управляется другими пользователями, то вам нужно установить ACL, который позволяет пользователю www-data
читать файлы. СмотритеПочему у меня нет доступа на чтение к файлам с измененным ACL?
Если вам нужно, чтобы разработчики могли изменять веб-сайт, торазработчики никогда не должны трогать файлы в процессе производства, вместо этого вам следует использовать систему развертывания.