Co oznacza trzeci symbol w trybie pliku „rw-” na stronie podręcznika OS X?

11

Mam problem ze zrozumieniem lspodręcznika dotyczącego pliku z rw-trybem. Oto cytat:

  1. Jeśli rThe plik jest czytelny ; jeśli nie jest to czytelne.

  2. Jeśli wplik jest zapisywalny; jeśli nie można tego zapisać.

  3. Obowiązuje pierwszy z poniższych:

    S     Jeśli w uprawnieniach właściciela plik nie jest wykonywalny i ustawiony jest tryb set-user-ID. Jeśli w uprawnieniach grupy plik nie jest wykonywalny i ustawiony jest tryb set-group-ID.

    s     Jeśli w uprawnieniach właściciela plik jest wykonywalny i ustawiony jest tryb set-user-ID. Jeśli w uprawnieniach grupy plik jest wykonywalny i ustawiony jest tryb setgroup-ID.

    x     Plik jest wykonywalny lub można przeszukiwać katalog.

        Plik nie jest trybem do odczytu , zapisu, wykonywania, ani ustawiania ID użytkownika, ani ustawiania ID grupy, ani nie jest lepki.

W szczególności wydaje się, że dwie pogrubione sekcje są ze sobą sprzeczne: zgodnie z pierwszą, ponieważ tryb rozpoczyna się od r, plik jest czytelny, ale zgodnie z ostatnią, plik nie jest czytelny. Ale oczywiście tak nie jest.

Co więc ta trzecia sekcja oznacza, że ​​plik „nie jest ani czytelny, ani zapisywalny ...”?


Bibliografia

  • apple.com wydaje się być źródłem tekstu cytowanego powyżej.  To jest strona man (dla OS X w wersji 10.9, zatytułowanym „BSD General Commands Manual”), a to jest strona, która cytuje to dyskusja.
  • ss64.com ma również kopię OS X lsmanualu.
  • tuhs.org ma stronę podręcznika użytkownika 4.4 BSD. Uwaga: używa wwoorrddpogrubienia i _w_o_r_dpodkreślenia.
  • freebsd.org ma stronę podręcznika FreeBSD 10.1 z 15 marca 2013 r.
  • unix.com ma kopię złej strony w katalogu man-page / freebsd (dla FreeBSD 11.0). Zauważ, że mają także kopię poprawnej strony pod man-page / posix .
  • „Seria komputerowa A + 4 Real StudyExam4Less” zawiera tekst cytowany w pytaniu oraz kilka akapitów na temat Ti t, ale nie całą stronę podręcznika. Mówi o OS X. Możesz zobaczyć strony z dwóch nieco różnych wersji (wydań?) Tej książki na books.google.com tutaj i tutaj .   wydaje się, że je cytuje certiguide.com .
  • stevens.edu to plik PDF zawierający wersję BSD (Podręcznik poleceń ogólnych) ls(1). Jest datowany na 24 września 2011 r.

Lepszy:

  • quora.com ma ten sam tekst, ale formatowanie (wcięcie) jest tak bardzo uszkodzone, że znaczenie jest niejednoznaczne.

Jeszcze lepiej:

  • cyberciti.biz i hurricanelabs.com mają ten sam tekst, ale z poprawionym wcięciem do tego stopnia, że ​​można argumentować, że jest zasadniczo OK. Ale oba nadal są naprawdę w nieładzie.
Max Yankov
źródło
Przeniesiono stąd: stackoverflow.com/questions/31021900/…
Max Yankov
1
rwx - odczyt / zapis / wykonanie
emirjonb
@emirjonb Nie jestem pewien, jak to odpowiada na moje pytanie.
Max Yankov
2
@sawdust Zgodnie z tym fragmentem instrukcji rw-plik jest jednocześnie czytelny ( r), zapisywalny ( w) i nie jest ani czytelny, ani zapisywalny ( -).
gronostaj
1
@CML Nie sądzę, że przeczytałeś pytanie.
Max Yankov

Odpowiedzi:

16

Ta odpowiedź została wcześniej opublikowana na Stack Exchange, zanim zauważyłem, że pytanie jest przenoszone.

Każdy numerowany punkt w cytacie dotyczy kolejno każdego z trzech znaków.

Jeśli pierwszym znakiem jest „r”, plik jest czytelny

Jeśli drugim znakiem jest „w”, plik można zapisać

Jeżeli trzecia postać jest „x / y / S”, plik ma wykonywalny i / lub set-uid / setgroupid nieruchomość jako właściwy

Jeśli znakiem jest „-”, plik nie ma tej właściwości.

Pierwsze trzy znaki (po identyfikatorze katalogu) odnoszą się do uprawnień użytkownika , drugie trzy do uprawnień grupowych , a trzecie do wszystkich pozostałych.

rojomoke
źródło
1
OK, to dobra odpowiedź na pytanie: „Co oznacza trzeci symbol w rw-trybie plików?” Ale prawdziwe pytanie brzmi: „Jak należy ls(1)rozumieć tę stronę podręcznika OS X ?” a odpowiedź brzmi: „Nie może być; jest zniekształcony. ” Powyższy post, który cytuje i / lub parafrazuje poprawną, spójną ls(1)stronę podręcznika, nie odpowiada na pytanie dotyczące strony podręcznika OS X.
Scott
To wciąż świetna odpowiedź; Twoja odpowiedź jest prawidłowa pod względem technicznym, ale ta jest najbardziej pomocna dla przypadkowej osoby, która w przyszłości przeszuka tę stronę podręcznika.
Max Yankov,
Tak, ale pytanie „Co oznacza wynik ls?” znacznie dokładniej na pytanie Co ls -aloznaczają pola w wynikach? na Unix i Linux Stack Exchange. Oczywiście każdy, kto przejdzie takie pytanie, znalazłby miliony dobrych, przejrzystych źródeł w Internecie, w tym wersje dla systemów innych niż OS X i inne niż BSDls(1)
Scott
9

Masz rację - to nie ma sensu. Wygląda to na błąd kopiowania i wklejania (chociaż widzę, że pojawia się na wielu stronach internetowych).

Scott
źródło
The (Free) BSD strona człowiek ma tego sformułowania zbyt.
user2543253
1
to nie jest błąd kopiowania i wklejania: sprawdź odpowiedź od rojomoke
CML
O co ci chodzi? Odpowiedź rojomoke przedstawia spójne wyjaśnienie klasycznej dziewięcioznakowej reprezentacji bitów trybu - wyjaśnienie inne niż niespójne przedstawione w pytaniu. Wierzę, że całkiem możliwe, że jakiś pisarz techniczny w Apple drastycznie sformatował coś, czego tak naprawdę nie rozumiał, i zepsuł to znaczenie.
Scott
Ostatni wiersz miałby więcej sensu, gdyby nie był wcięty, ponieważ - reprezentuje brak wartości, ale wcięty sposób sugeruje, że jest częścią opisu punktu # 3, który opisuje trzeci symbol każdej grupy.
phyrfox
Tak, właśnie o to chodzi w pytaniu @ Maxa - chociaż, jeśli ostatni wiersz nie zostałby wcięty, wówczas akapity 1 i 2 byłyby zbędne, ponieważ określają również warunki, w których -pojawia się.
Scott
-3

Podczas zmiany uprawnień do pliku można wskazać dwa uprawnienia za pomocą prostego rw- lub wx-, co oznacza, że ​​ZARÓWNO r AND w mają być ustawione na NIE. W drugim przykładzie BOTH w AND x są ustawione na NO.

Możesz także wskazać r + w-, aby ustawić ODCZYT na TAK i NAPISZ na NIE. Lub rx + dla ustawienia Read AND Execute na YES.

Roger Baran
źródło
1
Nie jestem pewien, czy ma to związek z pytaniem, które zadałem.
Max Yankov
1
Nie jestem pewien, czy ma to znaczenie dla tej planety. :-) ⁠
Scott
chmodargumenty nie są sformatowane w taki sam sposób jak dane ls -lwyjściowe.
Peter Cordes,