chown - Różnica między użytkownikiem a użytkownikiem: użytkownik

13

Jaka jest różnica pomiędzy:

sudo chown $USER:$USER

i

sudo chown $USER

Dlaczego jest 2 razy? Czy jeden użytkownik się myli? Kiedy patrzę na uprawnienia za pomocą namei -l, często widzę takie rzeczy jak root rootlub proxy proxy.

Dlaczego właściciel musi zostać zdefiniowany i wymieniony 2 razy?

TheBro21
źródło

Odpowiedzi:

16

Polecenie chown służy do zmiany właściciela i właściciela grupy pliku lub katalogu. Do korzystania z tego polecenia wymagane są uprawnienia administratora. Składnia chown wygląda następująco:

chown [owner][:[group]] file...

chown może zmienić właściciela pliku i / lub właściciela grupy plików w zależności od pierwszego argumentu polecenia. Oto kilka przykładów:

chown owner file przykład:

chown bob file --> Changes the ownership of the file from its current owner to user bob.

chown owner:group file przykład:

chown bob:users file --> Changes the ownership of the file from its current owner to user bob and changes the file group owner to group users.

chown :group file przykład:

 chown :admins file --> Changes the group owner to the group admins. The file owner is unchanged.

chown owner: file przykład:

chown bob: file --> Change the file owner from the current owner to user bob and changes the group owner to the login group of user bob.

Przeczytaj ten fajny samouczek https://www.linode.com/docs/tools-reference/linux-users-and-groups . Pokazuje niektóre informacje o użytkowniku, grupach, uprawnieniach ...

Maythux
źródło
Dzięki. Jaka jest jednak korzyść z używania grup? Czy to wszystko, że wszyscy użytkownicy Grouo są jego właścicielami, a nie tylko Bob?
TheBro21
Załóżmy, że chcesz udzielić zgody niektórym użytkownikom innym niż właściciel !! dlatego używaj grup, możesz utworzyć dla nich grupę i nadać jej uprawnienia
Maythux
Potrzebujesz grup głównie na serwerach, które są używane dla wielu użytkowników. Załóżmy, że masz serwer, na którym osoby pracujące dla Twojej firmy nad projektem a i projektem b mają konta użytkowników. Możesz teraz przyznać grupie firmowej uprawnienia na pliki, do których każdy musi mieć dostęp, i ustawić własność dla wszystkich projektów plików na grupę „projekt a”. W ten sposób nikt z projektu b nie będzie miał dostępu do plików projektu.
til_b
Grupy są również potrzebne na komputerze, np. Do sudo,
wybierania numerów
Jeśli użytkownik jest właścicielem, czy sudokiedykolwiek będzie konieczne wykonanie pliku?
Matthew
5

Nie jest user:user, ale user:group.

To jest format polecenia

chown [OPTION]... [OWNER][:[GROUP]] FILE...

Grupa użytkowników może obejmować wielu użytkowników. Oto kilka informacji dotyczących grup:

Linux używa grup jako sposobu organizowania użytkowników. Grupy organizują zbiory kont, przede wszystkim ze względów bezpieczeństwa. Kontrolą członkostwa w grupie zarządza się za pomocą pliku / etc / group, który pokazuje listę grup i ich członków. Każdy użytkownik ma domyślną lub podstawową grupę. Gdy użytkownik się loguje, członkostwo w grupie jest ustalane dla jego grupy podstawowej. Oznacza to, że gdy użytkownik uruchomi program lub utworzy plik, zarówno plik, jak i uruchomiony program zostaną powiązane z bieżącym członkostwem w grupie użytkownika. Użytkownik może uzyskiwać dostęp do innych plików w innych grupach, o ile są one również członkami tej grupy i uprawnienia dostępu są ustawione. Aby uruchomić programy lub utworzyć plik w innej grupie, użytkownik musi uruchomić polecenie newgrp, aby przełączyć bieżącą grupę.

Plik jest własnością użytkownika i grupy. Domyślnie jest własnością użytkownika, który utworzył plik i jego domyślną grupę, chyba że zostanie zmieniony.

W twoim przypadku użytkownik rootjest członkiem grupy root.

Pilot 6
źródło
Jaka jest różnica między użytkownikiem a grupą? Nie widzę różnicy między roota root rootCzym zajmuje się grupa? Rozumiem jednak sekcję dotyczącą właścicieli
TheBro21
Po dodaniu użytkownika do systemu Linux tworzy on grupę o tej nazwie. Grupa zawiera użytkowników. Załóżmy, że masz dział księgowości i chcesz, aby działy konta zapewniały dostęp do odczytu i zapisu. Możesz dodać wszystkie osoby do grupy kont i zezwolić na odczyt zapisu do odpowiedniego folderu / pliku.
dedunumax
Po uruchomieniu cut -d: -f1 /etc/grouppolecenia zobaczysz pełną listę grup w twoim systemie. unix.stackexchange.com/questions/153390/… może pomóc Ci zrozumieć, dlaczego istnieje grupa o
nazwie
2

man chownpodaje opis i użycie oraz inne przydatne informacje na chownpolecenie.

NAME
       chown - change file owner and group

SYNOPSIS
       chown [OPTION]... [OWNER][:[GROUP]] FILE...
       chown [OPTION]... --reference=RFILE FILE...

Z informacji podanych przez stronę man możemy wiedzieć, że chown $USER:$USERzmienia właściciela i grupę pliku docelowego na $USER, a chown $USERzmienia tylko właściciela pliku docelowego na $USER, pozostawiając niezmienioną grupę pliku docelowego.

Szczegóły (ze strony podręcznika):

Owner  is  unchanged  if  missing.   Group is unchanged if missing, but changed to
login group if implied by a ':' following a symbolic OWNER.  OWNER and  GROUP  may
be numeric as well as symbolic.

chown $USER:$USERMożna więc skrócić jako chown $USER:.

Wyjścia jak root rootz namei -lpolecenia oznacza, że właściciel i grupa tego pliku są ustawione na root. To nie jest zdefiniowane przez właściciela ani dwa razy na liście. Właściciel i grupa to dwie powiązane, ale różne koncepcje. Plik zawsze ma właściciela i grupę.


Jeśli chodzi o użycie chownpolecenia, istnieje duże prawdopodobieństwo, że wymagany jest przywilej administratora, ponieważ prawdopodobnie można przenieść własność pliku podczas korzystania z chownpolecenia. Jednak nie zawsze taka jest prawda.

Powiedzmy, że mamy użytkownika o nazwie „test”, który należy do kilku grup. idpolecenie daje następujące dane wyjściowe:

uid=1000(test) gid=1000(test) groups=1000(test),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),110(sambashare)

A użytkownik „test” jest właścicielem następującego pliku:

-rw-r--r-- 1 test test 0 May 27 23:34 test_file

Następnie możemy zmienić grupę test_filena sambasharebez uprawnień administratora, ponieważ użytkownik „test” należy do grupy „test” i grupy „sambashare” w tym samym czasie, użytkownik „test” ma już wystarczające uprawnienia do zmiany grupy pliku.

pallxk
źródło