Próbuję wdrożyć aplikację django. Kiedy drukuję apt-get update
, widzę
W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (13: Permission denied) W: Unable to read /etc/apt/sources.list.d/ - DirectoryExists (13: Permission denied) W: Unable to read /etc/apt/sources.list - RealFileExists (13: Permission denied) E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied) E: Unable to read /var/cache/apt/ - opendir (13: Permission denied) E: Unable to read /var/cache/apt/ - opendir (13: Permission denied) E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied) E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
Kiedy drukuję sudo apt-get update
Widzę
-bash: sudo: command not found
Próbowałem użyć su
zamiast sudo
. Ale to jest dziwne. Na przykład drukuję su apt-get update
I nic się nie dzieje. Po prostu widzę nową linię,
(uiserver):u78600811:~$ su apt-get update (uiserver):u78600811:~$
To samo, jeśli spróbuję aby zainstalować kilka pakietów. Co mam zrobić?
Jeśli to przydatne informacje – używam Debiana
(uiserver):u87600811:~$ uname -a Linux infong1559 3.14.0-ui16294-uiabi1-infong-amd64 #1 SMP Debian 3.14.79-2~ui80+4 (2016-10-20) x86_64 GNU/Linux
Komentarze
Odpowiedź
Domyślnie sudo nie jest instalowane na Debianie, ale możesz go zainstalować. Najpierw włącz tryb su:
su -
Zainstaluj sudo, uruchamiając:
apt-get install sudo -y
Następnie musiałbyś bawić się użytkownikami i uprawnieniami. Daj sudo prawo własnemu użytkownikowi.
usermod -aG sudo yourusername
Upewnij się, że plik sudoers ma dodaną grupę sudo. Uruchom:
visudo
, aby zmodyfikować plik sudoers i dodać do niego następujący wiersz (jeśli go brakuje):
# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL
Musisz ponownie zalogować się lub całkowicie zrestartować urządzenie, aby zmiany odniosły skutek.
Komentarze
- To powinno zostać zaakceptowane, to rozwiązało mój problem
- Otrzymuję " su: Nie mogę określić Twojej nazwy użytkownika. " podczas wykonywania su –
- @ user674669 czy sprawdziłeś ten post: serverfault.com/questions/816969/… ?
- Dzięki @MaksimLuzik. Mój to kontener docker. Pomysły na tej stronie nie są dla mnie ' pomocne. Może powinienem zadać osobne pytanie.
- Czy bezpiecznie jest nadać mojemu użytkownikowi uprawnienia sudo?
Odpowiedź
Ponieważ jest to serwer komercyjny, nie będziesz mieć dostępu do konta roota ani operować z uprawnieniami roota. Oznacza to, że nie będziesz w stanie uruchomić sudo
ani zainstalować pakietów. Możesz spróbować:
-
Sprawdź, czy mieć dostęp do kompilatora i skompilować to, co chcesz dla siebie i w swoim domu.
-
Sprawdź, czy możesz uruchomić maszynę wirtualną. To może pozwolić Ci uruchomić prywatną instancję system operacyjny, na którym instalowałbyś pakiety.
Odpowiedź
su
i sudo
to dwa różne, ale powiązane polecenia. sudo
nie jest instalowane, ale może po prostu nie być na Twojej ścieżce. Spróbuj /usr/bin/sudo command
.
Jeśli rzeczywiście sudo
jest niedostępny, potrzebujesz jak przypuszczałeś, że używasz su
, ale nie działa to tak samo jak sudo
. Najprostszym sposobem jest użycie uruchom:
su -
Spowoduje to wyświetlenie pytania o root
hasło użytkownika, w którym to momencie powinieneś prawdopodobnie apt install sudo
, wylogować się z powłoki głównej, a następnie postępować normalnie.
Umysł w przeciwieństwie do sudo
, które prosi o Twoje hasło, su
zapyta Cię o hasło root „.
Komentarze
- kiedy piszę su – nic się nie dzieje – po prostu nowa linia
- Następnie ' prawdopodobnie jesteś już rootem . Sprawdź w
whoami
. Jeśli ' ponownie rootujesz,apt install sudo
zgodnie z opisem. - (uiserver): u78600811: ~ $ apt zainstaluj sudo
- W: Nie można odczytać /etc/apt/apt.conf.d/ – DirectoryExists (13: Odmowa uprawnień) E: Nie można otworzyć pliku blokady / var / lib / dpkg / lock – open (13 : Odmowa uprawnień) E: Nie można zablokować katalogu administracyjnego (/ var / lib / dpkg /), czy jesteś rootem?
- W zależności od ustawienia
PS1
do.
apt-cache policy sudo
? Nie wszystkie dystrybucje Linuksa domyślnie instalują sudo (na przykład Debian zainstaluje sudo wtedy i tylko wtedy, gdy ' t określisz hasło roota podczas instalacji). Możesz uruchomić apt-cache bez uprawnień roota.