SORU
13 AĞUSTOS 2013, Salı


Nasıl eğer root olarak bir bash betiği çalışıyor olmadığını kontrol etmek için

Ben yazılı bir komut dosyası gerektirir kök düzeyinde izinler, ve yapmak istiyorum ki eğer bu programı çalıştırın root olarak, sadece yankıları "please run as root." ve çıkar.

İşte aradığım için bazı sözde kod:

if (whoami != root)
  then echo "Please run as root"

  else (do stuff)
fi

exit

Nasıl en iyi (temiz ve güvenli bir şekilde) bunu başarabilecek miyim? Teşekkürler!

Ah, sadece netleştirmek için: (şeyler) kısmen-ve-kök kendileri gerektiren komutları çalışan içerecektir. Yani normal bir kullanıcı olarak çalışan sadece bir hata ile geldi. Bu sadece temiz bir şekilde kök komutları gerektiren bir komut dosyasını çalıştırmak için tasarlanmıştır, bu senaryo içinde sudo kullanmadan, sadece bazı sözdizimsel şeker arıyorum.

CEVAP
13 AĞUSTOS 2013, Salı


$EUİD ortam değişkeni, geçerli kullanıcının UİD tutar. Kök UID 0. Komut: böyle bir şey kullanın

if [ "$EUID" -ne 0 ]
  then echo "Please run as root"
  exit
fi

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BigDawsTv

    BigDawsTv

    20 HAZİRAN 2012
  • kremosakhaz

    kremosakhaz

    25 AĞUSTOS 2006
  • xXGAMERrs_Xx

    xXGAMERrs_Xx

    31 Temmuz 2014