J'ai un dossier / data (en fait une partition) pour toutes les données qui devraient être accessibles à tous les utilisateurs (dans ce cas, les membres de la famille). Nous avons tous des comptes d'utilisateurs individuels et sommes souvent tous connectés à tout moment sur ce PC.
Comment puis-je configurer des autorisations pour que nous conservions tous l'accès aux fichiers, peu importe qui les crée, y compris les nouveaux dossiers? Si je crée un dossier, il obtient mon utilisateur et mon groupe, donc personne d'autre ne peut y écrire.
permissions
shared-folders
steevc
la source
la source
chmod -R g+s /parentdir
. Remarque: exécuterchmod -R
avant cela si nécessaire-R
indicateur tochmod
est très rarement utile car nous voulons rarement que les répertoires (qui ont toujours besoin d'une autorisation d'exécution) et les fichiers ordinaires (qui ont rarement besoin d'une autorisation d'exécution) aient les mêmes autorisationsRéponses:
Une autre approche consiste à utiliser les listes de contrôle d'accès, un sur-ensemble d'autorisations de fichiers.
Tout d'abord, nous devons installer le package acl :
Avant Ubuntu 14.04 , la partition doit être montée avec l'option
acl
pour que les éléments suivants fonctionnent. Il pourrait être ajouté/etc/fstab
, comme dansou pour un système de fichiers déjà monté
Ensuite, vous devez créer un nouveau groupe, auquel tous les utilisateurs autorisés à accéder au partage en mode lecture / écriture seront ajoutés. Je l'appelle
usershare
. Un groupe déjà existant pourrait être utilisé.Maintenant, nous ajoutons les utilisateurs
enzotib
etsteevc
à ce groupe:(en vigueur à la prochaine connexion).
Ensuite, nous ajoutons une ACL avec des
rwx
autorisations pour le groupeusershare
à tous les fichiers déjà dans/media/shared
Enfin, nous ajoutons une ACL par défaut avec des
rwx
autorisations pour le groupeusershare
pour tous les fichiers créés à partir de maintenant à l'intérieur/media/shared
Maintenant, tous les utilisateurs du
usershare
groupe ont des autorisations complètes sur tous les fichiers sous/media/shared
. Les autorisations de chaque utilisateur sur son répertoire personnel et sur les autres ne sont pas affectées.J'ai testé cette solution et semble fonctionner, mais les suggestions et corrections sont les bienvenues.
Remarque : les nouveaux fichiers et répertoires créés dans le répertoire considéré auront une autorisation d'écriture pour le
usershare
groupe, mais les fichiers copiés ou déplacés dans le dossier conserveront leurs autorisations d'origine. Si l'utilisateur, si je comprends bien, n'a besoin que d'un accès en écriture aux répertoires nouvellement créés, ce n'est pas un problème. Sinon, il devrait modifier les autorisations à la main. Voir cette réponse sur la façon de surmonter cela en définissant le umask des utilisateurs002
.la source
usershare
groupe?/etc/fstab
/remount
n'est pas requise, car elleext4
devrait être montée avec l'acl
option active par défaut.Créer un dossier.
Par exemple:
Si vous avez besoin de monter une partition sur eux ... si ext4 tout ce dont vous avez besoin
/etc/fstab
estCréez le groupe myfam.
Ajouter des utilisateurs à ce groupe
Maintenant, prenez et donnez la permission.
Je pense que vous devriez commencer à changer
umask
.Autorisations et droits d'accès par défaut du système de fichiers dans 12.04
Maintenant le plus important. Cette ligne crée
setgid
tout ce que vous créez sous ce dossier avec vos utilisateurs comme propriétaire et groupemyfam
. Cela permet au système de remplacer le groupe principal d'utilisateurs.la source
La chose la plus simple qui me vient à l'esprit est d'ajouter chaque utilisateur au groupe de tous les autres utilisateurs.
Ensuite, changez le umask de chaque utilisateur de 022 à 002, cela pourrait être fait en
/etc/profile
.Éditer
La première étape pourrait être remplacée par la suivante: faire en sorte que tous les utilisateurs appartiennent au
users
groupe en tant que groupe principal.Edi2
Comme l'a suggéré @James_Henstridge, il peut être pratique de définir le bit setgid sur le répertoire principal, afin que les nouveaux fichiers et répertoires créés aient leur même groupe, indépendamment de l'utilisateur. De cette façon, vous pouvez éviter l'ensemble
users
comme groupe principal pour les utilisateurs.la source
/data
afin que les nouveaux fichiers héritent de la propriété du groupe./data
dossier, les autorisations ne sont pas héritées, donc les anciens fichiers avec les autorisations gw ne seront pas modifiables par d'autres. edit4: définirusers
comme groupe principal etumask
0002 n'est certainement pas une bonne idée car n'importe qui de ce groupe pourra modifier n'importe lequel de vos fichiers nouvellement créés.users
groupe que les utilisateurs autorisés à avoir un accès rw au partage. C'était une question de commodité, cela pourrait également créer un autre groupe pour cela. Concernant votre edit3, il n'est pas correct, le fichier copié acquiert le groupe de dossiers.users
c'est mon groupe principal et qu'il y a plus d'utilisateurs dans ce groupe alors ils peuvent modifier mes fichiers même en dehors du répertoire partagé; edit3 - J'ai écrit des autorisations , PAS un groupe de dossiers.Cela ressemble à un travail pour les ACL. Giles a une réponse très complète sur le site SE Unix et Linux qui m'a aidé à résoudre le même problème.
la source
Je ne comprends pas, sont tous linux-linux, linux-windows, linux - ???, en utilisant Samba ?, SSH ?, Pigeons ?; de toute façon, vous devez inclure les autres dans le groupe avec votre nom d'utilisateur (votre groupe), et ils obtiendront les mêmes autorisations que vous.
la source
Je suis tombé sur cette question en cherchant des réponses à mon problème de PERMISSION DE GROUPE. J'ai lu la question et il semble que j'implémente déjà ce que la question essaie d'accomplir.
J'ai donc pris la peine d'y répondre.
J'ai déjà configuré un partage pour tous les utilisateurs de mon réseau avec lecture et exécution uniquement, et seul mon compte a la permission d'écrire sur les dossiers partagés.
J'ai un serveur polyvalent sur mon réseau local qui utilise Ubuntu 12.04 LTS Desktop Edition. J'ai un mélange de machines clientes de Linux et Windows.
Voici comment je l'ai mis en place:
1.Sur mon serveur, j'ai des comptes d'utilisateurs nommés
admin
etclientone
Le
admin
compte est le compte créé lorsque j'ai installé ubuntu et leclientone
compte est le compte créé à l'aide du menu COMPTES UTILISATEUR dans ubuntu. Il ne dispose que d'une autorisation standard, pas de privilèges d'administrateur et il est ajouté auusers
groupe. Vous pouvez bien sûr les faire en utilisant uniquement le terminal. Ajoutez des comptes d'utilisateurs supplémentaires pour vos machines clientes.2.La partition / le dossier partagé est monté automatiquement dans fstab en utilisant uniquement l'option par défaut.
3. Mon réseau est dans un environnement de groupe de travail et il est sur un
mylan
groupe de travail.Toutes les machines de mon réseau sont configurées pour utiliser le
mylan
groupe de travail.4.Mon dossier partagé nommé contient
shared
déjà des fichiers. Je change donc le propriétaire et le groupe de manière récursive en utilisant la commande ci-dessous.5.J'ai également défini l'autorisation de dossier et de fichier sur le
/shared
dossier de manière récursive à l'aide de la commandeles machines invitées de mon
mylan
groupe de travail n'ont pas accès au partage à l'aide de chmod 750vous pouvez utiliser
Tous les futurs comptes d'utilisateurs du
users
groupe ne disposent que de l'autorisation d'exécution en lecture.6.Dans ma machine cliente (Windows XP), je configure un compte d'utilisateur nommé
clientone
. Le même nom d'utilisateur et le même mot de passe que ceux créés sur mon serveur Ubuntu. Un deuxième compte nomméclienttwo
est également créé sur le serveur ubuntu et c'est le même compte utilisateur que celui utilisé sur ma deuxième machine (linuxmint 15).7.Dans ma machine cliente, une fois connecté en utilisant le
clientone
compte, j'exécute la commande puis entre192.168.10.254
est l'adresse IP de mon serveur ubuntu,/shared
est le dossier partagé sur mon serveur ubuntu Sur ma machine cliente deux (linuxmint 15), je vais dans Menu> Réseau et dans la barre de dialogue Emplacement: j'ai tapé:Si un mot de passe vous a été demandé, entrez le mot de passe de votre compte utilisateur. Et aussi votre mot de passe de trousseau si KEYRING est activé sur vos machines Linux.
Celui-ci fonctionne pour moi dans ma propre configuration réseau. Mon serveur est un serveur polyvalent servant de serveur squid, de serveur xbmc et mediatomb et de serveur amahi.
Je cherche toujours des moyens d'améliorer la partie de partage de fichiers de ma configuration. Les instructions ci-dessus ne sont pas une solution à l'épreuve des balles, achetez-la, vous pouvez l'essayer. Je teste et essaie la chose ACL avec les dossiers partagés à montage automatique. Comme votre exigence de partage de dossiers devient compliquée, les instructions ci-dessus ne vous garantiront pas le succès.
Informations ajoutées:
J'ai Amahi Server installé sur mon serveur, je l'ai également utilisé pour créer des comptes utilisateurs auxquels je voulais avoir accès aux dossiers partagés. Je l'ai également utilisé pour créer de nouveaux partages de dossiers.
Lorsque vous souhaitez une autorisation utilisateur plus complexe pour différents utilisateurs, ACL est la solution idéale.
la source
J'ai des fichiers vidéo à mon nom, mais lorsque je me connecte avec le nom de mes filles, son compte ne peut pas voir les fichiers vidéo. Donc, ce que j'ai fait, c'est allé dans les comptes d'utilisateurs, déverrouillé (en haut à droite), puis changé son type de compte de "standard" en "administrateur (qui est mon compte), et maintenant tous les fichiers vidéo, vraiment tout, s'affichent lorsqu'elle est connectée sous son compte.
la source