sudo
Yalnızca belirtilen komutlar için belirli ortam değişkenlerini korumasını gerektiğini belirtmenin herhangi bir yolu var mı ? Bazı amaçlar için $HOME
env. Belirli komutları çalıştırdığımda değişken korunuyor. Diğer amaçlar ve diğer komutlar için sıfırlanmasını istiyorum. Bu yapılabilir /etc/sudoers
mi?
Düzenle:
cevaplar için teşekkür ederim. Acaba "Neden öyleyse bu işe yaramıyor?" Diye bir soru sorabilir miyim?
Örnekte çalışmaya çalışıyorum, sudo nano
okumak istiyorum $HOME/.nanorc
. Bunu kullanırsam:
Defaults:simon env_keep=HOME
mükemmel çalışıyor. Bunu kullanırsam:
Defaults!/bin/nano env_keep=HOME
veya bu:
Cmnd_Alias NANO = /usr/bin/nano,/bin/nano,/bin/rnano
Defaults!NANO env_keep=HOME
hiç çalışmıyor. Neden olarak herhangi bir öneriniz var mı? (Debian testindeyim, btw.)
(Not: Ben 's sanmıyorum nano
btw özgü - Ben sadece o tek satırlık bash komut dosyası ile davranışı yeniden yapabilirsiniz echo
s $HOME
).
sudo
kendime ait bir fonksiyonla uğraştığım için, basitçe bir if [ "$1" == "$EDITOR" ]; then
blok ekledim ve şimdi sudoedit
bunun yerine çağırıyorum :)
sudoedit
yerine , yerine kullanın.sudoedit
Bir dosyanın içeriğini bir tmp dosyasına kopyalayın ve seçtiğiniz editörü kullanıcı olarak çalıştırın, editör çıktıktan sonra herhangi bir şeyi değiştirip değiştirmediğinizi kontrol edin ve eğer öyleyse orijinalini değiştirildi. Hangi düzenleyicinin çalışmasını istediğinizi$EDITOR
veya $ VISUAL` env değişkenini ayarlayarak seçebilirsiniz.