Üzgünüz, bunu seçilen cevaba bir yorum şeklinde sormak isterim, fakat henüz süper kullanıcı ile ilgili bir sorum yok.
Güvenlik cevabı anlamlı, fakat "." Koyarsanız PATH'nizdeki son şey olarak, kabuğun yürütülebilir dosyaları ararken en son geçerli dizine bakmaması ve böylece güvenlik riskini azaltmaması gerekir mi? Sırasıyla $ PATH araması yapsa, / bin / ls dosyasını bulur.
Peki benim için "." Koymak ne kadar güvensiz? $ PATH ortam değişkenimin sonunda?
Önerdiğim gibi çalışıyor. İşte nasıl test ettik:
İlk önce, "" ekleyin. PATH ortam değişkeninizin END'sine
Ardından, aşağıdaki dosyayı ~ / dir1 / dir2 / test_which.rb gibi bir dizine yerleştirin:
#!/your/path/to/ruby
puts "this file is from the current directory"
Ve bu dosyayı /usr/bin/test_which.rb dosyasına koyun.
#!/your/path/to/ruby
puts "this file is at /usr/bin/test_which.rb"
Dosyaları çalıştırılabilir olması için chmod + x olduğundan emin olun.
Şimdi, dizini ~ / dir1 / dir2 olarak değiştirirseniz ve test_which.rb komutunu çalıştırırsanız, çıktıyı alırsınız.
this file is at /usr/bin/test_which.rb
Gerçekten de, "hangi test_which.rb" yi bir yerden çalıştırırsanız, rapor vermesi gerekir.
/usr/bin/test_which.rb
Dosyayı geçerli dizinde hala yazarak çalıştırabilirsiniz:
./test_which.rb
ls
olacak/usr/bin/ls
ve olmayacak rasgele bir dizinde olduklarını bilmek gibi./ls
. Ayrıca,.
yolunuzun sonuna nasıl ekleneceğini biliyorsanız , muhtemelen ne yaptığınız hakkında bir fikriniz vardır. Kök gerektiğini asla sahip.
yolunda birçok sistemler bile artık kök günlüğünü izin vermeyin.