Starsze i mądrzejsze
Nie rób tego, co tu mówię, po prostu bądź ostrożny za każdym razem, gdy używasz sudo
. Prawdopodobnie chcesz użyć czegoś takiego jak rbenv
izolacja jakiejkolwiek pracy, którą wykonujesz.
sposób
uczyć się o chown
Nie wiem, czy podoba Ci się wiersz poleceń, ale sprawi, że praca z każdym projektem za pomocą dowolnego narzędzia instalującego pakiety w twoim systemie będzie dziecinnie prosta.
chown
o ile wiem, oznacza zmianę własności.
Powodem, dla którego przyszedłem poszukać tej odpowiedzi, jest to, że gem install
rzuciłem dziś na mnie tym błędem:
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /var/lib/gems/1.9.1 directory.
To idealna okazja do użycia chown
. Widzisz, Ruby dała nam katalog, do którego potrzebuje dostępu, i wygląda na to, że jest to katalog, z którego będzie korzystać dość często.
W tym przypadku są tylko trzy rzeczy chown
, które musisz wiedzieć, aby rozwiązać problem, ale są one o wiele potężniejsze i zapewniają znacznie większą elastyczność, niż pokażę teraz. Więcej informacji można znaleźć w źródle na dole.
Dwie rzeczy
- Nazwa Użytkownika
- Informator
Jeśli jesteś w powłoce, znalezienie nazwy użytkownika jest łatwe. Wystarczy spojrzeć na monit. Mój wygląda jak:
breadly@breadly-desktop:~\Desktop
Bieżący użytkownik to tylko nazwa przed @
. Znamy katalog z komunikatów o błędach, ale masz dwie możliwości. Możesz albo ograniczyć swoje uprawnienia do bieżącej wersji, używając ../gems/1.9.1
, albo dać sobie prawo zapisu dla klejnotów wszystkich wersji, używając ../gems
.
Polecenie rzeczywistej zmiany własności wyglądałoby tak.
chown -R $(whoami) /absolute/path/to/directory
-R
Znany jest jako flagi i -R
flagi zwykle mówi polecenie coś zrobić rekursywnie, czyli innymi słowy wykonywać polecenia na każdej rzeczy, która znajduje się w katalogu, a wszystkie rzeczy zawarte w katalogach zawartych wewnątrz, i tak dalej aż do nie ma nic więcej.