Как изменить разрешения всех файлов, которые будут загружены в папку в будущем? [dубликат]

У меня есть папка / data (фактически раздел) для всех данных, которые должны быть доступны всем пользователям (в данном случае членам семейства).

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

16
задан 20 May 2016 в 01:45

11 ответов

Это похоже на работу для ACL. У Giles очень подробный ответ на сайте SE Unix и Linux, который помог мне решить ту же проблему.

2
ответ дан 18 July 2018 в 12:52

Самое простое, что приходит на ум - это добавить каждого пользователя в группу всех других пользователей.

Затем измените umask каждого пользователя с 022 на 002, это можно сделать в /etc/profile.

Edit

Первый шаг можно заменить на следующее: сделать всех пользователей принадлежностью к группе users в качестве основной группы.

Edit

Как предложил @James_Henstridge, может быть удобно установить бит setgid в основной каталог, чтобы созданные новые файлы и созданные каталоги его же группы, независимо от пользователя. Таким образом, вы можете избежать установки users в качестве основной группы для пользователей.

3
ответ дан 18 July 2018 в 12:52

Я столкнулся с этим вопросом во время поиска ответов на мою проблему GROUP PERMISSION. Я прочитал вопрос и кажется, что я уже реализую то, что пытается выполнить этот вопрос.

Поэтому я потрудился ответить на него.

У меня уже есть настройка доли для всех пользователей на моем компьютере с чтением и исполнением, и только моя учетная запись имеет разрешение на запись в общих папках.

У меня есть многоцелевой сервер на моем компьютере, который использует ubuntu 12.04 LTS Desktop Edition , У меня есть клиентские машины для микширования linux и windows.

Вот как я это установил:

1. На моем сервере у меня есть учетные записи пользователей с именем admin и clientone

Учетная запись admin - это учетная запись, созданная при установке ubuntu, а учетная запись clientone - это учетная запись, созданная с использованием меню USER ACCOUNTS в ubuntu. Он имеет только стандартное разрешение, никаких привилегий администратора и добавляется в группу users. Разумеется, вы можете использовать только терминал. Добавьте дополнительные учетные записи пользователей для своих клиентских машин.

2. Общий раздел / папка автоматически обновляется в fstab, используя только параметр по умолчанию.

3. Моя сеть находится в рабочей среде , и он находится на рабочей группе mylan.

Все машины в моем lan настроены на использование рабочей группы mylan.

4. Моя общая папка с именем shared уже имеет файлы в нем. Таким образом, я меняю владельца и группу на рекурсивно, используя следующую команду:

sudo chown -Rv admin:users /shared

5. Я также реплицирую папку и папку для /shared папки, используя команду

sudo chmod -Rv 750 /shared

гостевые машины в моей рабочей группе mylan не имеют доступа к общему ресурсу с помощью chmod 750

, вы можете использовать

sudo chmod -Rv 755 /shared

Все будущие учетные записи пользователей в папке users группа только прочитала разрешение на выполнение.

6. На моем клиентском компьютере один (windows xp) настроил учетную запись пользователя с именем clientone. То же имя пользователя и пароль, что и тот, который был создан на моем сервере ubuntu. Вторая учетная запись с именем clienttwo также создается на сервере ubuntu, и она является той же учетной записью пользователя, которая использовалась на моем втором компьютере (linuxmint 15).

7.В моей машине-клиенте один при входе в систему с помощью clientone, я иду, чтобы запустить команду, затем введите

//192.168.10.254/shared

192.168.10.254 - это ip-адрес моего сервера ubuntu, /shared - это папка, распространенная на моем сервере ubuntu. На моей клиентской машине два (linuxmint 15), я перехожу в Меню> Сеть и в диалоговом окне Расположение:

smb://192.168.10.254/shared

Если вам было предложено ввести пароль, введите свой пароль пользователя. А также ваш пароль для ключей, если KEYRING включен в ваших Linux-машинах.

Этот работает для меня в моей собственной настройке сети. Мой сервер - многоцелевой сервер, служащий сервером squid, сервером xbmc и mediatomb и сервером amahi.

Я все еще ищу способы улучшить часть совместного использования файлов моей установки. Указанная выше инструкция не является доказательством пули, купите, вы можете попробовать ее. Я тестирую и пытаюсь использовать ACL вместе с общими папками для автоматической установки.

Добавлено Info:

У меня установлен сервер Amahi на моем сервере, я также использовал его для создания пользователя что я хотел иметь доступ к общим папкам. Я также использовал его для создания новых общих папок.

Если вам нужны более сложные пользовательские разрешения для разных пользователей, ACL - это один из них.

0
ответ дан 18 July 2018 в 12:52

У меня есть видеофайлы на моем имени, но когда я вхожу с моими дочерьми, ее учетная запись не может видеть видеофайлы. Итак, что я сделал, я пошел в учетные записи пользователей, разблокировался (вверху справа), а затем изменил тип своей учетной записи с «стандартного» на «администратора» (это то, что у меня есть), и теперь все видеофайлы, действительно все, появляются при регистрации в ее учетной записи.

0
ответ дан 18 July 2018 в 12:52

Я не понимаю, все linux-linux, linux-windows, linux - ???, используя Samba ?, SSH ?, Pigeons ?; в любом случае вам нужно включить других в группу с вашим именем пользователя (вашей группой), и они получат те же права, что и вы.

0
ответ дан 18 July 2018 в 12:52

Это похоже на работу для ACL. У Giles очень подробный ответ на сайте SE Unix и Linux, который помог мне решить ту же проблему.

2
ответ дан 24 July 2018 в 20:03
  • 1
    Я не знаю acl очень хорошо, вы можете протестировать и скопировать файл с разрешениями, такими как rw-r-r--, из вашей домашней папки в общую папку и посмотреть, будут ли разрешения изменяться на ваш rwx по умолчанию для usershare группа? – arrange 12 July 2011 в 03:04
  • 2
    @arrange: нет, он не работает должным образом. Отправляемся в ответ. спасибо – enzotib 12 July 2011 в 06:51
  • 3
    Это сработало! Я видел другие ответы, используя ACL, но это единственный, который я видел, который изменяет разрешения не только новых файлов и каталогов, созданных в общей папке, но также и тех, которые были скопированы или перемещены в нее. – ダンボー 19 July 2012 в 03:38
  • 4
    Я бы добавил, что шаг /etc/fstab / remount не требуется, потому что ext4 должен быть установлен с опцией acl по умолчанию. – enzotib 15 August 2012 в 13:14

Самое простое, что приходит на ум - это добавить каждого пользователя в группу всех других пользователей.

Затем измените umask каждого пользователя с 022 на 002, это можно сделать в /etc/profile.

Edit

Первый шаг можно заменить на следующее: сделать всех пользователей принадлежностью к группе users в качестве основной группы.

Edit

Как предложил @James_Henstridge, может быть удобно установить бит setgid в основной каталог, чтобы созданные новые файлы и созданные каталоги его же группы, независимо от пользователя. Таким образом, вы можете избежать установки users в качестве основной группы для пользователей.

3
ответ дан 24 July 2018 в 20:03
  • 1
    Вы можете отредактировать свой ответ, а также предложить установить бит setgid во всех каталогах в /data, чтобы новые файлы наследовали владение группой. – James Henstridge 11 July 2011 в 06:04
  • 2
    edit3 :) Если вы скопируете файл в папку /data, разрешения не наследуются, поэтому старые файлы с разрешениями g-w не будут модифицироваться другими. edit4: установка users в качестве основной группы и umask 0002 определенно не является хорошей идеей, так как любой из этой группы сможет изменить любой из ваших вновь созданных файлов. – arrange 11 July 2011 в 15:30
  • 3
    @arrange: в отношении вашего edit4 я предложил ввести users группу только пользователям, которым разрешен доступ к ресурсу rw. Это было вопросом удобства, он также мог создать для этого еще одну группу. Что касается вашего edit3, это неверно, скопированный файл получит группу папок. – enzotib 11 July 2011 в 15:38
  • 4
    @enzotib: повторить мою точку зрения другими словами: edit4 - если users - моя основная группа, и в этой группе больше пользователей, то они могут изменять мои файлы даже вне общего каталога; edit3 - Я написал permissions , НЕ группу папок. – arrange 11 July 2011 в 16:23
  • 5
    @arrange: ваша точка верна, я просто ответил на другой ответ, может быть интересно услышать ваше мнение. – enzotib 12 July 2011 в 01:23

Я столкнулся с этим вопросом во время поиска ответов на мою проблему GROUP PERMISSION. Я прочитал вопрос и кажется, что я уже реализую то, что пытается выполнить этот вопрос.

Поэтому я потрудился ответить на него.

У меня уже есть настройка доли для всех пользователей на моем компьютере с чтением и исполнением, и только моя учетная запись имеет разрешение на запись в общих папках.

У меня есть многоцелевой сервер на моем компьютере, который использует ubuntu 12.04 LTS Desktop Edition , У меня есть клиентские машины для микширования linux и windows.

Вот как я это установил:

1. На моем сервере у меня есть учетные записи пользователей с именем admin и clientone

Учетная запись admin - это учетная запись, созданная при установке ubuntu, а учетная запись clientone - это учетная запись, созданная с использованием меню USER ACCOUNTS в ubuntu. Он имеет только стандартное разрешение, никаких привилегий администратора и добавляется в группу users. Разумеется, вы можете использовать только терминал. Добавьте дополнительные учетные записи пользователей для своих клиентских машин.

2. Общий раздел / папка автоматически обновляется в fstab, используя только параметр по умолчанию.

3. Моя сеть находится в рабочей среде , и он находится на рабочей группе mylan.

Все машины в моем lan настроены на использование рабочей группы mylan.

4. Моя общая папка с именем shared уже имеет файлы в нем. Таким образом, я меняю владельца и группу на рекурсивно, используя следующую команду:

sudo chown -Rv admin:users /shared

5. Я также реплицирую папку и папку для /shared папки, используя команду

sudo chmod -Rv 750 /shared

гостевые машины в моей рабочей группе mylan не имеют доступа к общему ресурсу с помощью chmod 750

, вы можете использовать

sudo chmod -Rv 755 /shared

Все будущие учетные записи пользователей в папке users группа только прочитала разрешение на выполнение.

6. На моем клиентском компьютере один (windows xp) настроил учетную запись пользователя с именем clientone. То же имя пользователя и пароль, что и тот, который был создан на моем сервере ubuntu. Вторая учетная запись с именем clienttwo также создается на сервере ubuntu, и она является той же учетной записью пользователя, которая использовалась на моем втором компьютере (linuxmint 15).

7.В моей машине-клиенте один при входе в систему с помощью clientone, я иду, чтобы запустить команду, затем введите

//192.168.10.254/shared

192.168.10.254 - это ip-адрес моего сервера ubuntu, /shared - это папка, распространенная на моем сервере ubuntu. На моей клиентской машине два (linuxmint 15), я перехожу в Меню> Сеть и в диалоговом окне Расположение:

smb://192.168.10.254/shared

Если вам было предложено ввести пароль, введите свой пароль пользователя. А также ваш пароль для ключей, если KEYRING включен в ваших Linux-машинах.

Этот работает для меня в моей собственной настройке сети. Мой сервер - многоцелевой сервер, служащий сервером squid, сервером xbmc и mediatomb и сервером amahi.

Я все еще ищу способы улучшить часть совместного использования файлов моей установки. Указанная выше инструкция не является доказательством пули, купите, вы можете попробовать ее. Я тестирую и пытаюсь использовать ACL вместе с общими папками для автоматической установки.

Добавлено Info:

У меня установлен сервер Amahi на моем сервере, я также использовал его для создания пользователя что я хотел иметь доступ к общим папкам. Я также использовал его для создания новых общих папок.

Если вам нужны более сложные пользовательские разрешения для разных пользователей, ACL - это один из них.

0
ответ дан 24 July 2018 в 20:03

У меня есть видеофайлы на моем имени, но когда я вхожу с моими дочерьми, ее учетная запись не может видеть видеофайлы. Итак, что я сделал, я пошел в учетные записи пользователей, разблокировался (вверху справа), а затем изменил тип своей учетной записи с «стандартного» на «администратора» (это то, что у меня есть), и теперь все видеофайлы, действительно все, появляются при регистрации в ее учетной записи.

0
ответ дан 24 July 2018 в 20:03

Я не понимаю, все linux-linux, linux-windows, linux - ???, используя Samba ?, SSH ?, Pigeons ?; в любом случае вам нужно включить других в группу с вашим именем пользователя (вашей группой), и они получат те же права, что и вы.

0
ответ дан 24 July 2018 в 20:03
  • 1
    Это несколько пользователей на одном ПК. Я уверен, что должен быть способ получить разрешения на использование по умолчанию чего-то полезного. – steevc 11 July 2011 в 01:34
  1. Создать папку. Например:
    mkdir /mnt/family
    
    Если вам нужен раздел для монтирования ... если ext4 все, что вам нужно в /etc/fstab, это
    UUID=xxx    /mnt/family ext4    **rw,exec,defaults,auto,async   0   2**
    
  2. Создать группу myfam.
    addgroup myfam
    
  3. Добавьте некоторых пользователей в эту группу
    adduser papa myfam  
    adduser mom myfam
    
  4. Теперь возьмите и дайте разрешение. Я думаю, вы должны начать с изменения umask. Разрешения и права доступа к файловой системе по умолчанию в 12.04
    chown -R you.myfam /mnt/family  
    chmod -R g+rwx /mnt/family  
    
    Теперь самое главное. Эта строка создает setgid все, что вы создаете в этой папке, имеет своих пользователей как владельца и группу myfam. Это позволяет системе переопределять основную группу пользователя.
    chmod -R g+s /mnt/family   
    
15
ответ дан 16 August 2018 в 11:27

Другие вопросы по тегам:

Похожие вопросы: