Modifier l'entrée fstab pour que tous les utilisateurs puissent lire et écrire sur un volume EXT4

44

J'ai une boîte Ubuntu 10.04 avec une partition EXT4. Cette partition est configurée pour monter automatiquement dans /etc/fstab. Aux fins de cet article, nous allons l' appeler: /media/foo.

Malheureusement, seuls rootpeuvent créer / supprimer des fichiers / répertoires sur le système de fichiers racine de foo. Pour que les autres utilisateurs puissent exécuter fichier / io sur ce volume, il rootfaut créer un répertoire et chmodles autorisations correspondantes.

Je voudrais monter le volume de sorte que quiconque puisse lire / écrire sur le volume sans avoir rootà le faire chmod.

Ci-dessous mon fstabentrée:

/dev/sda8    /media/foo    ext4    rw,user,exec 0 0

L'entrée avait à l'origine defaultsau lieu de rw,user,exec. J'ai ajouté les entrées supplémentaires, à savoir, rwpour que tout utilisateur puisse lire / écrire.

Malheureusement, l' fstabentrée ne fonctionne pas. Ça monte bien, mais il faut quand même rootintervenir.

Et, juste au cas où quelqu'un le demanderait, tout simplement en cours d'exécution: chmod -R 777 *sur /media/foocomme rootne fonctionne pas.

Phanto
la source

Réponses:

45

L'option de montage userpermet uniquement au système de fichiers d'être monté par n'importe quel utilisateur. L' rwoption rend le système de fichiers pas en lecture seule. Vous devrez utiliser des autorisations pour rendre le répertoire parent accessible en écriture.

chmod 777 /media/foo

La chmodcommande que vous présentez affecte uniquement les fichiers existants au sein /media/foo .

En pause jusqu'à nouvel ordre.
la source
2
Quel est le meilleur endroit dans Ubuntu pour ajouter cette commande au démarrage?
Ivan Balashov
@ IvanBalashov: Vous pouvez utiliser une @rebootentrée /etc/crontabentre autres possibilités.
pause jusqu'à nouvel ordre.
3
@ DennisWilliamson Merci. Je l'ai mis /etc/rc.localsi cela fait une différence. Ce qui me dérange dans l’ensemble, c’est qu’il faut vraiment le configurer fstab. Si ce n'est pas le cas, le point de montage peut changer, et les scripts doivent aussi changer, la maintenance.
Ivan Balashov
Wow, je dois commencer à deviner ces choses: D merci beaucoup.
erm3nda
1
Acceptez le chmod, mais ajoutez a: chmod + t / media / foo pour permettre aux utilisateurs de créer leur propre sous
user1251840
25

Je pense qu'il serait plus simple de modifier l'entrée fstab en:

/dev/sda8    /media/foo    ext4    rw,user,exec,umask=000 0 0

umask=000signifie que n'importe qui peut lire, écrire ou exécuter n'importe quel fichier ou répertoire dans foo. La valeur par défaut habituelle est 022, ce qui signifie que les utilisateurs ne peuvent pas écrire.

quelqu'un
la source
32
umask n'est une option que pour les partitions ntfs / vfat. mount n'aimera pas umask sur un système de fichiers ext.
Daniel
8

J'ai eu le même problème sur openSUSE, mais je pense que la solution peut aussi s'appliquer à cela. Tous les utilisateurs que je veux partager avec le système de fichiers monté appartiennent au même groupe principal: utilisateurs

J'ai la ligne suivante dans mon fstab:

/dev/<partition> <mount_point>          ext4       rw,acl       0 0

et j'ai lancé les commandes suivantes:

sudo chgrp -R users <mount_point>
sudo setfacl -d -m g::rwx <mount_point>

afin que les fichiers ou répertoires nouvellement créés obtiennent ces autorisations. Cela implique que le paquet acl est installé.

dario
la source
S'il s'agit d'un répertoire crypté, /homeest-ce qu'il sera monté dans le /etc/crypttabfichier?
George Udosen
2

D'une part, vous voulez vous assurer que le répertoire de / media / foo lui-même est accessible en écriture. Si ce n'est pas déjà le cas, lancez la commande suivante:

chmod +w /media/foo

N'oubliez pas que star ne s'applique qu'au contenu visible du répertoire, pas au répertoire lui-même, ni aux fichiers non visibles.

Hotei
la source
1

Essayer,

sudo setfacl -R -d -m u::rwx,g::rwx,o::rwx <mount_point>
utilisateur247046
la source
0

Il y a quelques années, j'ai défini le groupe du point de montage sur le groupe plugdev et ajouté l'utilisateur à ce groupe. De cette manière, en créant de nouveaux groupes, il est possible de donner des autorisations par utilisateur. Pour un usage domestique, il suffit de définir les autorisations du point de montage sur les autres utilisateurs: lecture / écriture / exécution comme indiqué ci-dessus.

Je l'ai fait avec 'sudo nautilus &' dans le terminal et un clic droit -> propriétés -> droits, mais tout autre gestionnaire de fichiers fonctionnant en tant que root conviendrait.

Doom3d
la source