Pokouším se nasadit aplikaci django. Když tisknu apt-get update
vidím
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?
Když tisknu sudo apt-get update
Vidím
-bash: sudo: command not found
Snažil jsem se použít su
místo sudo
. Ale je to divné. Například tisknu su apt-get update
A nic se neděje, pouze se mi zobrazí nový řádek,
(uiserver):u78600811:~$ su apt-get update (uiserver):u78600811:~$
Totéž, pokud se pokusím nainstalovat některé balíčky. Co mám dělat?
Pokud jsou užitečné informace – používám Debian
(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
Komentáře
). Můžete spustit apt-cache bez oprávnění root.
Odpovědět
Ve výchozím nastavení není sudo v Debianu nainstalováno, ale můžete jej nainstalovat. Nejprve povolte su-mode:
su -
Nainstalujte sudo spuštěním:
apt-get install sudo -y
Poté byste si museli pohrávat s uživateli a oprávněními. Dejte sudo právo svému vlastnímu uživateli.
usermod -aG sudo yourusername
Zkontrolujte, zda je do vašeho souboru sudoers přidána skupina sudo. Spustit:
visudo
upravit soubor sudoers a přidat do něj následující řádek (pokud chybí):
# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL
Aby se změny projevily, je třeba zařízení znovu přihlásit nebo restartovat.
Komentáře
- To by měla být přijata odpověď, to vyřešilo můj problém
- Zobrazuje se mi " su: Nelze určit vaše uživatelské jméno. " dělat su –
- @ user674669 zkontrolovali jste tento příspěvek: serverfault.com/questions/816969/… ?
- Díky @MaksimLuzik. Můj je přístavní kontejner. Myšlenky na této stránce mi ' pomohly. Možná bych měl zveřejnit samostatnou otázku.
- Je bezpečné udělit svá uživatelská oprávnění sudo?
Odpovědět
Protože jde o komerční server, nebudete mít přístup k účtu root ani nebudete moci pracovat s oprávněními root. To znamená, že nebudete moci spouštět sudo
ani instalovat balíčky. Můžete se pokusit udělat:
-
Zkontrolujte, zda mít přístup ke kompilátoru a zkompilovat si, co chcete, pro sebe a ve svém domovském prostoru.
-
Zkontrolujte, zda můžete spustit virtuální stroj. Může vám to umožnit spustit soukromou instanci operační systém, na který byste instalovali balíčky.
odpověď
su
a sudo
jsou dva různé, ale související příkazy. Je neobvyklé, že sudo
nelze instalovat, ale jednoduše to nemusí být na vaší cestě. Zkuste /usr/bin/sudo command
.
Pokud skutečně sudo
není k dispozici, potřebujete jak jste předpokládali, že použijete su
, ale nefunguje to stejně jako sudo
. Nejjednodušší způsob, jak to použít, je jednoduše spustit:
su -
Budete požádáni o root
uživatelské heslo, kdy byste se měli pravděpodobně apt install sudo
odhlásit z kořenového shellu a poté pokračovat jako obvykle.
Mysl že na rozdíl od sudo
, který vás požádá o vaše heslo, su
vás požádá o heslo root .
Komentáře
- když píšu su – nic se neděje – jen nový řádek
- Pak jste ' pravděpodobně už root . Zkontrolujte pomocí
whoami
. Pokud jste ' re root,apt install sudo
, jak je popsáno. - (uiserver): u78600811: ~ $ apt install sudo
- W: Nelze číst /etc/apt/apt.conf.d/ – DirectoryExists (13: Oprávnění odepřeno) E: Nelze otevřít soubor zámku / var / lib / dpkg / lock – otevřít (13 : Oprávnění odepřeno) E: Nemůžete uzamknout adresář pro správu (/ var / lib / dpkg /), jste root?
- Podle toho, co je nastaveno
PS1
do.
apt-cache policy sudo
? Ne všechna linuxová distribuce ve výchozím nastavení instalují sudo (například Debian nainstaluje sudo tehdy a jen tehdy, když při instalaci nezadáte