“Kök müsün?” Ne demek?


16

Ben almaya devam budur:

ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ sudo apt-get install flashplugin-installer
bash: sudo: command not found
ascendermedia@magic2tower:~$ apt-get install flashplugin-installer
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?
ascendermedia@magic2tower:~$ sudo aptitude install flashplugin-nonfree
bash: sudo: command not found
ascendermedia@magic2tower:~$ aptitude install flashplugin-nonfree
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?
ascendermedia@magic2tower:~$ 

Neyi yanlış yapıyorum?

Yanıtlar:


29

rootsistemdeki süper kullanıcı hesabıdır (temelde) tüm ayrıcalıklara sahiptir. Birçok sistem, sudobu komutu "root" olarak çalıştırmak için başka bir komutun önündeki komutu kullanabileceğiniz şekilde yapılandırılır - yani, kök kullanıcı gibi, aynı ayrıcalıklarla.

Genellikle sistem paketlerini yüklemek için kök ayrıcalıklarına ihtiyacınız vardır, ki bu da apt-getöyle. Yani, ilk kez işe yaramıyor çünkü sudomüsait değilsiniz ; ikinci kez sudo, sihirli bir şekilde görünmedi çünkü sadece iki kez koştun; ve üçüncü (ve beşinci) kez, çünkü apt-get(ve aptitude) gerçekten böyle paketleri kurmak için root privs gerektiriyor.

İlk hata iletinizde gördüğünüz gibi, sudo ya yüklü değil ya da yolunuza yüklenmemiş ve muhtemelen yapılandırılmamış. Bunun su -cyerine değiştirebilir ve rootistendiğinde kök parolayı ( hesabın parolasını ) verebilirsiniz .

Bu şifreyi bilmiyorsanız, a) sisteminiz değilse, bu görevi sizin için gerçekleştiren kişiye sormanız veya b) kurtarmanın bir yolunu bulmanız gerekir.


Bu çoğunlukla doğrudur, ancak sudosadece komutları "root gibiydiniz" değil, aslında onları root olarak çalıştırır. İşleme bakarsanız, kullanıcı kimliğiniz olarak değil, kök olarak çalıştığını görürsünüz. Bu arada, varsayılan olarak kök tarafından etkileşimli oturum açmaya izin verecek şekilde ayarlanmamış makinelerde, sudo bashbir kök kabuk almak için çalışabilirsiniz . :)
reirab

@reirab sudo -iMevcut kabuğunuza saygı duyduğundan bu tercih edilir.
yeni123456

2
@ new123456 sudo -i kök için varsayılan kabuğu kullanır. sudo -s, yönetici kullanıcı için $ SHELL değerini kullanır.
bgvaughan

@reirab "Kök olarak" ifadesinin basitleştirilmiş bir kullanıcının bakış açısından ne anlama geldiğini açıkladığım kısımdan alıntı yapıyorsunuz.
mattdm

5

Üzerinden sistem güncellemelerini yürütmek için kök ayrıcalıklarına ihtiyacınız vardır apt-get.

Düğmesini kullanarak bir kök hesaba geçebilirsiniz su root. sudoProgramın kurulu olmadığı anlaşılıyor .


2
OP sadece sudoimtiyazlardan yoksun değil, sudokurmuş bile değil .
n.st

1
Gerçekten, OP kurmak ve kurmak için yeterince uzun süre kök salmalıdır sudo.
Kevin

1
@ n.st muhtemelen yanlış, olmayabilir PATH.
o11c

2
@ o11c Bunların sudo olmadan bu problemle asla karşılaşmayacakları ile aynı insanlar olduklarını çünkü her zaman kök olarak oturum açtıklarını iddia ediyorum.
Kevin

1
@ o11c mümkün olsa da, bu, özellikle de olası görünmüyor sudove apt-gethem yüklenir /usr/bin(en azından Debian üzerine) varsayılan olarak.
n.st

5

“Kök müsün?” Ne demek?

apt-getSistem genelinde paketleri yüklemek için (ne işe yarar ), sistem dosyaları oluşturacağınız ve değiştireceğiniz rootiçin (* nix yönetici hesabı için normal addır ) kök ayrıcalıklarına ihtiyaç duyar .

«Kökünüz mü?» Mesajı çalıştırmak için "kök olmanız" gerektiğini hatırlatır apt-get install. Bu, karşılaştığı sorunun en sık karşılaşılan nedenidir (yukarıda gösterilmiştir):

/ var / lib / dpkg / lock - açık (13: İzin reddedildi)

.

Nasıl kök olunur?

su

"Kök haline gelmenin" geleneksel yolu çalıştırmak su(ve kök kullanıcının parolasını vermektir). su (1) temsil etmektedir s uper u ser veya s cadı u ser.

Herhangi bir kullanıcı olmak için kullanılabilir, böylece su johnjohn olarak bir kabuk almak için çalıştırabilirsiniz . suKullanıcı adı olmadan koşmak için bir kısayol su root.

Bunun çalışması için kök kullanıcı hesabının etkinleştirilmiş ve bir parola ayarlanmış olması gerekir. Bazı sistemler birisini önlemek için (varsayılan olarak bile) kök hesabı devre dışı bırakılarak yapılandırılır. bir saldırgan- yönetici hesabıyla oturum açın. Bu durumlarda sudo gibi idari komutları çalıştırmak için başka bir yol sunarlar.

sudo

sudo (1) başka bir kullanıcı olarak komut çalıştırmanıza izin veren bir programdır (yukarıdaki gibi, genellikle root için yapılır). Bu, yapılandırılır /etc/sudoersve belirli bir kullanıcıya (kendi parolasını tekrar gerektirecek şekilde ayarlanmış olabilir) yalnızca tek bir programın root olarak çalıştırılmasına izin vermek gibi daha hassas bir denetime izin verir ve ayrıca günlük oluşturma olanakları sağlar (örn. " john yıkım sistemini kök olarak yürüttü ").

Artan ayrıcalıklarla ( calife gibi ) koşmak için başka seçenekler de var, ancak kullanımları çok daha düşük.

Yukarıdaki günlüğünüz sudomagic2tower'da yüklü olmadığını gösterir .


0

"Kökün ne olduğunu" zaten açıklamışlardır, muhtemelen bir "komut bulunamadı" olduğunda, çalıştırmaya çalıştığınız programı yüklemediğiniz veya env değişkenlerinizde yolun bulunmadığıdır.

Komandoyu şu şekilde çalıştırmayı deneyin:

/usr/bin/sudo apt-get install flashplugin-installer

Bazı linux dağıtımlarında, root komutunu değiştiremezsiniz, böylece her komut mas sudo ile çalıştırılır. =)


1
Evet bash: sudo: command not found, en iyi fikir gibi bir mesajınız sudo apt-get install sudovarsa, onu
kurmaktır

2
Kullanarak sudo yükleyemezsiniz sudo.
To Do
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.