Yanlışlıkla girdim
chsh -s /usr/bin
onun yerine
chsh -s /bin/bash
ve şimdi bir kök kabuğa giriş yapamıyorum, elle bir bash kabuğunu kök olarak nasıl başlatabilirim?
sudo vipw
işi?
Yanlışlıkla girdim
chsh -s /usr/bin
onun yerine
chsh -s /bin/bash
ve şimdi bir kök kabuğa giriş yapamıyorum, elle bir bash kabuğunu kök olarak nasıl başlatabilirim?
sudo vipw
işi?
Yanıtlar:
Kök erişime sahip olmasa da, sudo grubundaki bir kullanıcı yine de ayrıcalıklı komutlar çalıştırabilir - hata sudo chsh
sudo'da değil, komutun başka bir yerinde (örn. Chsh hatası) görünüyor.
Gibi sudo görünüşe göre çalışıyor.
Passwd dosyası aşağıdakilerle düzenlenebilir:
sudo vipw
Ve kök kabuk elle değişti.
( /etc/passwd
genellikle ilk satırı )
root:x:0:0:root:/root:/bin/bash
Fom adam vipw
Vipw ve vigr komutları sırasıyla / etc / passwd ve / etc / group dosyalarını düzenler. -S bayrağıyla bu dosyaların gölge sürümlerini sırasıyla / etc / shadow ve / etc / gshadow düzenlerler. Programlar, dosya bozulmasını önlemek için uygun kilitleri ayarlayacaktır.
vipw
ve vigr
teşekkür ederim! Her zaman kullandımsudo vim /etc/passwd
visudo
sudo.ws/man/1.8.15/visudo.man.html , @tac
sudo -e
bu, herhangi bir düzenleme için bu kilitleme düzenleme özelliğini gerçekleştirir.
Başka bir hesaba erişiminiz olduğunu varsayarsak, başka bir seçenek de varsayılan kabuğu kullanarak aşağıdakileri kullanarak el ile geçersiz kılmaktır su --shell=/bin/bash
:
-s, --shell =
/ etc / shells izin verirse SHELL SHELL'i çalıştırır
Bunun başlıca avantajı, ayrıcalıklı bir hesaba değil, yalnızca başka bir hesaba erişim gerektirmesidir .
Güvenlik nedeniyle, ister metinsel ister grafiksel olsun, komutları farklı bir kullanıcı olarak çalıştırmanıza izin veren su
ve sudo
bunların tümü, bu komutu hedef kullanıcının kabuğundan çalıştırır. Hedef kullanıcının kabuğu işlevsel değilse, sonuçları gördünüz :-(
Hala bir yerde çalışan veya setuid-root ikili dosyası ya da bunu atlamanızı sağlayan bir şey gibi hala işlevsel bir kök kabuğunuz yoksa, bir kurtarma sistemi veya canlı görüntü kullanarak sorunu yeniden başlatıp düzeltmek muhtemelen en iyi seçimdir.
Kurtarma sistemini başlatın , kabuğu düzeltmek için gerçek sisteminizin kök dosya sistemini bir yere monte edin, deyin /mnt/foo
ve düzenleyin /mnt/foo/etc/passwd
. Kurtarın, bağlantısını kesin ve işiniz bitti.
/etc/passwd
düz metin değil mi? Bunu en azından on yıldır görmedim. Bazı sistemlerde bu hala bir şey mi? Her neyse, sanırım chroot /mnt/foo chsh -s /bin/bash
bu durumda hile yapabilir mi?
init=/bin/bash
Çekirdek komut satırınıza ekleyin (grub ile önyükleme yapıyorsanız e
, önyükleme girişini düzenlemek için basın ) ve parola girmenize bile gerek kalmadan kök olarak çalışan bir bash kabuğuna sahip olursunuz. Kök dosya sisteminiz büyük olasılıkla yine de salt okunur olarak monte edilecek, bu yüzden önce yeniden takmanız gerekecek, ardından kabuğu geri değiştirebilirsiniz chsh
.
sudo usermod -s /bin/bash jdoe
kabuğunu değişecek jdoe için bash
. Sonra sudo egrep jdoe /etc/passwd
doğrulamak için yapabilirsiniz .