Yanıtlar:
Uygulamada, ikisi de sizi süper kullanıcı yapacak. Ancak, biraz farklı şekillerde, biraz farklı şeyler yaparlar.
İlk olarak, su -
sizi bir giriş kabuğuna geçirir, oysa sudo -s
kullanmaz. Uygulamada, sizin ortam değişkenleri geçiş olmayacak bu genellikle araçlar root
'için s sudo -s
. Sadece koşmak anlamına Not su
için değil bir giriş kabuğu alabilir veya sudo -i
bir giriş kabuğu olsun [değil tüm sürümlerinde] olarak.
İkincisi su
ve su -
sizden yeni kullanıcı olarak kimlik doğrulamanızı isteyerek yeni bir kullanıcıya geçin. sudo -s
ve sudo -i
(ve sadece düzenli olarak sudo foo
) /etc/sudoers
, muhtemelen mevcut kimliğinizi onaylamanızı isteyerek [önceden ] yetkili olduğunuzu belirten bir komutu çalıştırmanıza izin verir .
Eğer gerçekten sevimli olmak istiyorsanız , root kullanıcısı ( bölüm) tarafından çalıştırılan sudo su -
root ( su -
) olarak giriş yapmayı talep edecek şekilde de çalıştırabilirsiniz sudo
.
Kök kullanıcı kilitliyse (Ubuntu'da olduğu gibi), root kullanarak giriş yapamazsınız su
. Bu durumda, kullanmanız sudo -s
veyasudo -i
su -s
Bir kullanıcıya geçecektir (bu durumda kök) ve belirttiğiniz kabuğu ya da kabuğu belirlemek için kullanılan birkaç yöntemden birini başlatır. Bu, gerçekten hızlı bir şekilde root olarak zsh veya başka bir kabuk kullanmak istiyorsanız ... ve nedense sudo kullanmadığınız için kullanışlıdır.
sudo -s
Sadece bir kök kabuğu verecek olan sudo kullanarak bir kabuk çalıştırır. Ona bir kabuk da geçirebilirsin.
su -s daha eski, sudo -s komutundan çok daha eski. Tahminime göre, geliştirici sudo kullanmaya olabildiğince kolay gelmeye çalışıyor.
su, bir kabuğu çalıştırmak veya belirli bir komutu çalıştırmak için başka bir kullanıcıya geçmek için kullanılan bir komuttur. Diğer kullanıcı olarak kimlik doğrulaması yapmanız gerekir. Kök için dava açmak istiyorsanız, kök şifre gerekir.
sudo, farklı bir kullanıcı olarak başka bir komutu (isteğe bağlı olarak bir kabuk) yürütme komutudur. Kendi kullanıcı olarak kimlik doğrulaması yapmanız gerekir . Sudo kullanma izni (ve onunla yapabileceğiniz belirli şeyler) sudoers dosyasında bir yönetici tarafından belirtilir.
Birine su'ya erişim izni verirseniz (örneğin, onlara kök şifresi vererek), bununla her şeyi yapabilir - başka komutları çalıştırın, bir kabuk açın, şifreyi değiştirin, ssh ile uzaktan giriş yapın, vb. Esasen diğer hesaba erişmelerine izin veriyorsunuz, 'su' onunla yapabilecekleri tek şey.
sudo çok daha ince taneli. Bir kullanıcıya veya bir gruba ayrıcalıklar verebilirsiniz. Bir kullanıcının veya grubun belirli bir zaman dilimi içerisinde sudo yapmasına izin verebilirsiniz (örn. Pazartesiden cumaya, sabah 9'dan akşam 5'e kadar). Çalıştırmasına izin verilen belirli bir komut listesi belirtebilirsiniz (örneğin, yalnızca / usr / local / bin / run_backup) veya komutları çalıştırmasına izin verilen belirli bir kullanıcıyı belirtebilirsiniz (örneğin, www, yedekleme, personel vb.) ).
Esnekliğinin yanı sıra, sudo her durumda daha iyi bir çözümdür, çünkü kullanıcının zaten sahip olmadığı hiçbir şeye erişim gerektirmez. Birine sudo erişimi verirseniz, sudoers dosyasındaki satırlarını kaldırarak veya sudoers grubundan kaldırarak iptal edebilirsiniz. Hesaplarını silerseniz, erişimleri kaybolur.
Onlara kök şifre verirseniz, onunla ilgili hoş olmayan bir şey yapmadıklarını varsaysanız bile, sonsuza dek bileceklerdir. Yönetici görevleri için kök erişimine ihtiyaç duyan birden fazla kişiye sahipseniz, bu, herhangi biri ne zaman ayrılırsa tüm kök şifrelerini değiştirmek veya ayrıldıktan sonra sisteminize tam erişime sahip olmalarının uygun olduğunu varsaymak anlamına gelir.
Gönderen Vikipedi :
su (yedek kullanıcı veya anahtar kullanıcısı için kısa), çıkış yapmadan başka bir kullanıcının kabuğunu çalıştırmak için kullanılan bir Unix komutudur.
Sudo adlı bir komut, başka bir kullanıcı olarak bir komut çalıştırır, ancak hangi kullanıcıların hangi diğer komutları uygulayabileceklerini (genellikle / etc / sudoers adındaki bir yapılandırma dosyasında, visudo komutuyla en iyi düzenlenebilir) bir komut dosyasında uygulayabilir. Su'dan farklı olarak, sudo kullanıcıları hedef kullanıcınınkinden ziyade kendi parolalarıyla doğrular (belirli komutları belirli ana bilgisayarlarda belirli parolalar arasında parola paylaşmadan ve katılımsız terminallerin riskini azaltırken) yetkilendirmesine izin vermek için.
Tam adı geçen almıyor bir şey şudur: hangisini yapabilirsiniz sık kullandığınız hangi dağıtım bağlıdır ve kim çalıştırır kullanın. Biri veya diğeri ( su
veya sudo
) muhtemelen varsayılan olarak tam kullanım için ayarlanmamış. Örneğin, bazı kişilerin söylediği gibi, OS X ve Ubuntu, root hesabını ( su
) varsayılan olarak devre dışı bırakır . Aynı şekilde, Debian, normal kullanıcılara varsayılan hiçbir varsayılan ayrıcalık vermez sudo
. (Tüm bu sistemlerde, bu varsayılanları değiştirebilirsiniz, ancak yalnızca başlamak için bir tür yönetimsel ayrıcalıklarınız varsa. Sanırım sunucu dışı bir durumdan bahsediyoruz ve makineyi SÜ’den beri yönetiyorsunuz. sf, ancak sadece durumda)
Son olarak, sudo
daha iyi ayarlanmış bir şekilde kullanmak istiyorsanız man sudoers
, / etc / sudoers dosyasını nasıl düzenleyeceğinize bakmalısınız . Ancak, asla elle düzenlememelisiniz. Program visudo'yu kullanın - düzenlemelerinizi en az minimum düzeyde akıllıca olmadıkça kaydetmenizi önler. Sizi kendi sisteminizin yönetici ayrıcalıklarından uzak tutabilecek basit hatalara karşı mükemmel bir koruma sağlar.
Mac OS X gibi süper kullanıcı hesabının devre dışı bırakıldığı sistemlerde su
çalışmaz; sudo -s
irade.
Ayrıca, görünen o ki su -s
, en azından makinemde mevcut değil.
sudo
(ki bunlar her zaman yüklü değildir).
Bu giriş size yardımcı olabilir. su
Kısaca su root
, diğer kullanıcı olarak haklarınızı süresiz olarak koruyorsunuz. Daha tehlikeli, ancak belirli bir süre boyunca çok sayıda kök erişim komutu kullanıyorsanız daha uygun olur.
su temelde başka bir kullanıcı ayrıcalıklarına sahip yeni bir giriş kabuğu oluşturacaktır (login) sudo yalnızca geçici olarak belirttiğiniz kullanıcıyı kullanarak komut çalıştırmanıza izin verecektir. FreeBDS gibi bazı UNIX'lerde '-s' seçeneği yoktur.
sudo
, normal kullanıcılara varsayılan ayrıcalık vermeyeceğini söylemek de önemlidir . Bu sistemlerde,su
tek seçenek bu.