Que signifie le troisième symbole en mode de fichier «rw-» dans la page de manuel OS X ls?


11

J'ai du mal à comprendre lsle manuel concernant un fichier qui a un rw-mode. Voici la citation:

  1. Si r, le fichier est lisible ; si , il n'est pas lisible.

  2. Si w, le fichier est accessible en écriture; si , il n'est pas accessible en écriture.

  3. Le premier des éléments suivants qui s'applique:

    S     Si dans les autorisations du propriétaire, le fichier n'est pas exécutable et le mode set-user-ID est défini. Si dans les autorisations de groupe, le fichier n'est pas exécutable et le mode set-group-ID est défini.

    s     Si dans les autorisations du propriétaire, le fichier est exécutable et le mode set-user-ID est défini. Si dans les autorisations de groupe, le fichier est exécutable et le mode setgroup-ID est défini.

    x     Le fichier est exécutable ou le répertoire est consultable.

        Le fichier n'est ni lisible , ni inscriptible, ni exécutable, ni set-user-ID, ni set-group-ID, ni collant.

En particulier, il semble que deux sections en gras se contredisent: selon la première, puisque le mode commence par r, le fichier est lisible, mais selon la dernière, le fichier n'est pas lisible. Mais, évidemment, ce n'est pas le cas.

Alors, qu'est-ce que cette troisième section signifie que le fichier n'est "ni lisible ni inscriptible ..."?


Bibliographie

  • apple.com semble être la source du texte cité ci-dessus.  Ceci est la page de manuel (pour OS X version 10.9, intitulée "BSD General Commands Manual"), et ceci est une page de discussion qui la cite.
  • ss64.com possède également une copie de la lspage de manuel OS X.
  • tuhs.org a la page de manuel 4.4 BSD. Attention: il utilise wwoorrddpour gras et _w_o_r_dpour souligner.
  • freebsd.org contient la page de manuel FreeBSD 10.1, datée du 15 mars 2013.
  • unix.com a une copie de la mauvaise page sous le répertoire man-page / freebsd (pour FreeBSD 11.0). Notez qu'ils ont également une copie de la page correcte sous man-page / posix .
  • La "Série d'ordinateurs A + 4 Real StudyExam4Less" contient le texte cité dans la question, plus quelques paragraphes sur Tet t, mais pas la page de manuel entière. Il s'agit d'OS X. Vous pouvez voir les pages de deux versions légèrement différentes (éditions?) De ce livre sur books.google.com ici et ici .   certiguide.com semble les citer.
  • stevens.edu est un fichier PDF contenant la version BSD (General Commands Manual) de ls(1). Il est daté du 24 septembre 2011.

Meilleur:

  • quora.com a le même texte, mais avec une mise en forme (indentation) si corrompue que la signification est ambiguë.

Mieux encore:

  • cyberciti.biz et hurricanelabs.com ont le même texte, mais avec l'indentation corrigée au point que l'on pourrait dire que c'est essentiellement OK. Mais ils sont tous les deux vraiment en désordre.


1
rwx - lecture / écriture / exécution
emirjonb

@emirjonb Je ne sais pas comment cela répond à ma question.
Max Yankov

2
@sawdust Selon cet extrait de manuel, un rw-fichier est simultanément lisible ( r), inscriptible ( w) et ni lisible ni inscriptible ( -).
gronostaj

1
@CML Je ne pense pas que vous ayez lu la question.
Max Yankov

Réponses:


16

Cette réponse a déjà été publiée sur Stack Exchange, avant que je remarque que la question était déplacée.

Chaque point numéroté de votre devis s'applique à son tour à chacun des trois caractères.

Si le premier caractère est 'r', le fichier est lisible

Si le deuxième caractère est «w», le fichier est accessible en écriture

Si le troisième caractère est 'x / s / S', le fichier a la propriété exécutable et / ou set-userid / setgroupid appropriée

Si le caractère est «-», le fichier n'a pas cette propriété.

Les trois premiers caractères (après l'identifiant du répertoire) s'appliquent aux autorisations utilisateur , les trois autres aux autorisations de groupe et le troisième à tout le monde.


1
OK, ceci est une bonne réponse à la question, "Que signifie le troisième symbole en rw-mode fichier?" Mais la vraie question est: «Comment ls(1)comprendre cette page de manuel OS X ?» et la réponse est: «Cela ne peut pas être; c'est brouillé. " Le message ci-dessus, qui cite et / ou paraphrase une ls(1)page de manuel correcte et cohérente , ne répond pas à la question sur la page de manuel OS X.
Scott

C'est toujours une excellente réponse; bien que votre réponse soit techniquement correcte, celle-ci est la plus utile à une personne aléatoire qui googlenerait cette page de manuel à l'avenir.
Max Yankov

Oui, mais la question "Que signifie la sortie ls?" est répondu de manière beaucoup plus approfondie à Que ls -alsignifient les champs en sortie? sur Unix et Linux Stack Exchange. De plus, bien sûr, quiconque ayant recherché une telle question sur Google trouverait des millions de bonnes sources claires sur le Web, y compris les versions non OS X et non BSD dels(1)
Scott

9

Vous avez raison - cela n'a pas de sens. Cela ressemble à une sorte d'erreur de copier-coller (même si je vois qu'elle apparaît sur plusieurs sites sur le Web.)


La page de manuel (gratuite) BSD contient également cette formulation.
user2543253

1
ce n'est pas une erreur de copier-coller: consultez la réponse de rojomoke
CML

À quoi veux-tu en venir? La réponse de rojomoke présente une explication cohérente de la représentation classique à neuf caractères des bits de mode - une explication différente de celle incohérente présentée dans la question. Je crois qu'il est tout à fait possible qu'un écrivain technologique chez Apple ait radicalement reformaté quelque chose qu'il ne comprenait pas vraiment et ait corrompu le sens du processus.
Scott

La dernière ligne aurait plus de sens si elle n'était pas en retrait, parce que le - représente une absence de valeur, mais en retrait comme cela suggère qu'elle fait partie de la description de l'élément # 3, qui décrit le troisième symbole de chaque groupe.
phyrfox

Oui, c'est exactement le point de la question de @ Max - bien que, si la dernière ligne n'était pas en retrait, les paragraphes 1 et 2 seraient redondants, car ils spécifient également les conditions dans lesquelles -apparaît.
Scott

-3

Lors de la modification des autorisations sur un fichier, il est possible d'indiquer deux autorisations avec un simple rw- ou wx- signifiant que LES DEUX r ET w doivent être définis sur NO. Dans le deuxième exemple, W et x sont définis sur NO.

Vous pouvez également indiquer r + w- pour régler READ sur YES et WRITE sur NO. Ou rx + pour définir Lire ET Exécuter sur OUI.


1
Je ne suis pas sûr que cela soit pertinent pour la question que j'ai posée.
Max Yankov

1
Je ne suis pas sûr que cela soit pertinent pour cette planète. :-) ⁠
Scott

chmodles arguments ne sont pas formatés de la même manière que les ls -lsorties.
Peter Cordes
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.