Jak skutecznie używać polecenia Chown w systemie Linux
Ustalenie, kto jest właścicielem czego i jego zmiana jest kluczowa w Linuksie, zwłaszcza jeśli zarządzasz wieloma plikami lub pracujesz w środowisku wielodostępnym. Czasami program nie chce się uruchomić, ponieważ uprawnienia są nieprawidłowe lub po prostu musisz przenieść własność pliku lub katalogu. Problem w tym, że użycie polecenia chown może początkowo wydawać się onieśmielające, ale gdy już się z nim oswoisz, naprawdę ułatwia życie. Nie chodzi tylko o zmianę właściciela — możesz również modyfikować uprawnienia grup, rekurencyjnie zarządzać całymi folderami, a nawet używać identyfikatorów użytkowników zamiast nazw, jeśli masz ochotę na bardziej zaawansowane rozwiązania. Oto krótki przewodnik, który pomoże Ci zacząć i być może pomoże Ci rozwiązać kilka problemów.
Jak sprawdzić, kto jest właścicielem pliku lub folderu w systemie Linux
Zanim zaczniesz zmieniać właściciela, dobrze jest wiedzieć, z czym masz do czynienia. Polecenie ls -l będzie tu Twoim pomocnikiem. Wyświetla ono takie szczegóły, jak właściciel, grupa, uprawnienia i inne. Na przykład, jeśli chcesz zobaczyć, kto jest właścicielem example.txt, wpisz:
ls -l example.txt
Wyświetli się wiersz z nazwą właściciela (użytkownika) i grupą. Jeśli właścicielem nie jest ten, którego uważasz za odpowiedniego, prawdopodobnie nadszedł czas na zmianę.
Zmiana właściciela pojedynczego pliku
Zmiana właściciela jest prosta. Użyj sudo chown, a następnie nazwy użytkownika i pliku. Na przykład:
sudo chown newuser example.txt
Dlaczego? Ponieważ w niektórych konfiguracjach mogą wystąpić błędy uprawnień bez sudo, zwłaszcza jeśli nie jesteś jeszcze właścicielem. Po uruchomieniu pliku, będzie on należał do newuser. Pamiętaj, że nie zmienia to grupy, a jedynie właściciela. Jeśli chcesz również zamienić grupę, potrzebujesz innej składni – np sudo chown :newgroup example.txt..A jeśli chcesz zrobić to jednocześnie – jako właściciel i jako grupa – wykonaj następujące kroki:
sudo chown newuser:newgroup example.txt
Używanie polecenia chown w przypadku wielu plików lub całych katalogów
Zmiana właściciela jednego pliku na raz staje się dość nudna, zwłaszcza jeśli pracujesz z folderami pełnymi danych. Na szczęście możesz utworzyć wiele nazw plików:
sudo chown user1:groupA file1.txt file2.txt
Ale jeśli pracujesz z katalogiem pełnym podfolderów i plików i chcesz, żeby wszystko należało do kogoś nowego, flaga rekurencyjna -Rjest Twoim kumplem. Przeszukuje ona wszystkie podfoldery i wszędzie zmienia właściciela. Na przykład:
sudo chown -R newowner:linkgroup my_folder
Uważaj jednak — jeśli uruchomisz go w niewłaściwym katalogu, może to zepsuć uprawnienia, których nie chciałeś zmieniać. W jednej konfiguracji działało dobrze, w innej… nie do końca. Zawsze dokładnie sprawdź, co zamierzasz zrobić, ls -lpo wprowadzeniu zmian.
Zmiana właściciela za pomocą identyfikatorów użytkownika (UID)
Dla osób technicznych, które wolą nie używać nazw – lub jeśli piszesz skrypty – identyfikatory UID są rozwiązaniem idealnym. Każdy użytkownik ma numer, co jest znacznie mniej podatne na błędy niż ciągłe literowanie jego imienia. Aby sprawdzić identyfikator UID użytkownika, wystarczy uruchomić:
id -u username
Na przykład, id -u johndoemoże dać ci 1002. Następnie po prostu wrzuć to do chown:
sudo chown 1002 example.txt
A jeśli chcesz przypisać własność pliku użytkownikowi i grupie według UID, to jest to sudo chown 1002:1003 example.txt, gdzie 1003 to identyfikator grupy. Możesz również znaleźć ten identyfikator grupy za pomocą:
id username
Co jeszcze potrafi polecenie chown?
Oprócz samej zmiany właściciela, możesz zapoznać się ze stroną podręcznika: man chown. To coś w rodzaju instrukcji obsługi polecenia, zawierającej listę różnych opcji – nie tylko zmiany plików, ale także ustawiania konkretnych uprawnień lub właścicieli. Zdecydowanie przydatne, jeśli zaczynasz zarządzać wieloma różnymi scenariuszami plików.
Czy chown jest przydatny?
Szczerze mówiąc, jeśli korzystasz tylko z własnego komputera, może nie musisz się nim zbytnio przejmować. Ale dla każdego, kto zarządza serwerami, systemami współdzielonymi lub zajmuje się administracją systemami, opanowanie chown jest wręcz niezbędne. Pomaga utrzymać porządek, zapewnia dostęp do określonych plików tylko właściwym osobom i zapobiega przypadkowym wyciekom danych. Dodatkowo, możliwość masowej zmiany właścicieli oszczędza sporo trudu podczas czyszczenia lub reorganizacji. W rzadkich przypadkach może się to wydawać nieco kłopotliwe – zwłaszcza jeśli uprawnienia są już i tak dziwne – ale ostatecznie jest całkiem potężne.
Podsumowanie
Zabawa z prawami własności nie jest tak straszna, jak się wydaje, gdy już się z nimi oswoisz. Niezależnie od tego, czy rozwiązujesz uporczywy problem z uprawnieniami, czy po prostu porządkujesz system, te polecenia ułatwią Ci życie z Linuksem. Zachowaj jednak ostrożność przy zmianach rekurencyjnych — nie chcesz przecież przypadkiem stać się właścicielem wszystkiego w systemie.
Streszczenie
- Sprawdź aktualne prawa własności
ls -l - Zmień właściciela za pomocą
sudo chown username filename - Zmień właściciela i grupę jednocześnie za pomocą
sudo chown user:group filename - Użyj
-Rdo rekurencyjnych zmian w folderach - Użyj UID,
id -u usernameaby zmniejszyć liczbę literówek w skryptach
Trzymam kciuki, żeby to pomogło
Powiązane artykuły
Czy ten artykuł był pomocny?