2017-09-13 6 views
0

Je fais un devoir pour une classe Linux que je prends et je dois faire en sorte que les utilisateurs autres que le propriétaire ne puissent pas lister, supprimer ou créer des fichiers dans un répertoire. Ils doivent également être autorisés à accéder aux fichiers (en supposant qu'ils connaissent le répertoire et le nom du fichier car ils ne sont pas autorisés à le lister), mais ne sont pas autorisés à modifier ou s'exécuter. Je l'ai déjà pour que les utilisateurs ne puissent pas modifier ou s'exécuter avec le chmod, mais je ne sais pas comment empêcher les utilisateurs d'afficher ou de supprimer des fichiers dans le répertoire.Sous Linux, comment définir des autorisations pour un répertoire qui empêche un utilisateur d'afficher, de supprimer ou de créer des fichiers?

Répondre

1

Si votre nom d'utilisateur est alex et le nom du dossier est devoirs,

  1. essayer
    chmod -R 700 devoirs

de votre connexion

  1. Assurez-vous que le propriétaire est alex. Autre propriété de changement à l'aide de la commande

chown alex: devoirs alex

Connectez-vous maintenant en utilisant un autre nom d'utilisateur et exécuter

ls devoirs

vous devez obtenir la permission refusée erreur

+0

bien merci. Pour permettre aux utilisateurs autres qu'Alex d'accéder au fichier, mais pas encore de le modifier ou de l'exécuter, est-ce que je ne ferais que chmod 744? Que fait -R? Encore une chose, je suis obligé de prendre des permissions d'exécution de alex, mais après cela, je ne suis pas autorisé (comme alex) à lister ou même modifier le répertoire même si read ou write est toujours activé. Donc, je suppose que la question ici est ce que la capacité d'exécution permet exactement de faire? – Alex5775

+0

@ Alex5775 Oui 744 devrait fonctionner. -R est récursif ce qui signifie que le 700 s'applique à tous les fichiers contenus dans les devoirs du dossier. Vous pouvez seulement exécuter, mais ne pouvez pas lire/écrire quand vous venez d'activer le 'x' dans rwx. – Deepaklal

+0

Merci encore, vous m'avez vraiment aidé à mieux comprendre le système d'exploitation jusqu'à présent, mais dans l'exemple que j'ai donné, j'ai pris l'exécution et laissé lire et écrire comme permis, donc je me demande pourquoi je ne peux pas lister les éléments , cd dans les devoirs, ou créer un nouveau fichier ou répertoire dans lisible quand je prends seulement l'autorisation d'exécution loin. – Alex5775

0

"Utilisateurs autres que le propriétaire"

Nous parlons des groupes et d'autres

« Impossible de supprimer, créer [...] Modifier ou l'exécuter »

Retirez les droits WX pour les autres et les groupes:

chmod -R g-wx o-wx /path/to/your/file 

récapituler chmod rapide:

  1. u = propriétaire du fichier (utilisateur)
    g = groupe propriétaire (groupe)
    o = toute personne sur le système (autre)

  2. permission add (+)
    supprimer la permission (-)

  3. r = autorisation de lecture
    w = autorisation d'écriture
    x = autorisation d'exécution

A propos de les empêcher de l'inscription d'une répertoire, je ne sais pas si c'est possible mais vous pouvez probablement trouver ce que vous cherchez en lisant ici:
http://www.penguintutor.com/linux/file-permissions-reference
et ici: https://askubuntu.com/questions/200911/how-to-prevent-access-to-a-folder-by-other-users