OSX 10.12 Sierra'da “sudo” nasıl açılır


2

"Sudo some_command" yazdığımda, terminal şunu gösterir:

sudo: unable to stat /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

hesabım bir yönetici hesabı ve / etc / sudoers şunları içeriyor:

root        ALL = (ALL) ALL
%admin      ALL = (ALL) ALL

Bu nasıl düzeltilir?


1
Lütfenls -l /etc/sudoers
nohillside

@ patrix çıktısı-r--r-----+ 1 root wheel 1563 Jan 11 10:42 /etc/sudoers
Desmond Chen

1
Uhh, ls -le /etc/sudoersve ls -led /etc o zaman lütfen, lütfen
yokuş yukarı

@patrix -rw-rw-r--+ 1 root wheel 1563 Jan 11 10:42 /etc/sudoers 0: group:admin allow read,write,append,readattr,writeattr,readextattr,writeextattr,readsecurityvelrwxr-xr-x@ 1 root wheel 11 Dec 10 21:13 /etc -> private/etc
Desmond Chen,

Hiç işe yaradı mı? ACL biraz garip görünüyor (bu dosyada bir tane yok), ancak bunun herhangi bir soruna yol açıp açmadığından emin değilim (ve burada denemek istemiyorum).
yokuş yukarı

Yanıtlar:


6

Terminal'i açın ve root ile şu komutu etkinleştirin:

dsenableroot -u <your_admin_username> -p <your_password> -r <root_password> #choose some root password here 

Eğer sudoer zarar görürse, yine de yapamazsınız sudo- ama suizinleri buna göre düzeltebilecek ve onarabilirsiniz:

su #when asked afterwards enter the above <root_password>
chown root:wheel /etc/sudoers
chmod 440 /etc/sudoers
chmod -a "admin allow read,write,append,readattr,writeattr,readextattr,writeextatt‌​r,readsecurity" /etc/sudoers
exit

Yönetici hesabınıza geri döndükten sonra kökü devre dışı bırakın:

dsenableroot -d -u <your_admin_username> -p <your_password>

Yukarıdakilerin yardım etmemesi durumunda, root hesabını yukarıdaki ile aynı şekilde tekrar etkinleştirin, hesabınızın çıkışını yapın, root(yup, gerçekten):

Terminali açın ve yazın chmod g+x /, terimi kapatın, oturumu kapatın ve tada, sudo tekrar çalışıyor :) Bu sorun çoğunlukla /linux yoluyla rw modunda monte ettiğinizde meydana gelir ( hfsplusr / w modunda sigorta kullanın ve bindfs)


BTW grup yöneticisi ACL sudo'lar dosyasına zarar vermiş gibi görünmüyor!


2
Tek bir kullanıcı kipinde daha iyi önyükleme yapın, bunun için root
Mark

Ve tek kullanıcı girişi tam olarak ne yapmalı? Launchctl / diskarbitrioned ( romount olduğundan beri ) ve nasıl hareket edeceğinizi bilmeniz gerekiyor mount -rw /ve sonra visudobunu çözmeyeceksiniz.
PJJ

@mark Başka bir cevabın karşılığı olabilir
nohillside

1
@PJJ Tamam Cevabınızı çok değiştirdim ;-) - fakat ikinci dsenable root satırından sonra root olarak giriş yapamazsınız. Ya chmod g+x /su modunda ya da son cümlenizi 2. dsenableroot satırının önüne taşımak zorundasınız. Ayrıca: Sierra'da buna gerek olmamalı!
klanomath

Doğru, doğru, çok fazla kafa karıştırıcı olmayacağına dair umut verici bir şekilde denetlenmiş;) - chmod g+x /h4x0rs'dan beri çoğu zaman darwin'i linux ile karıştırır ve haritalarını mutlu ederler. ;)
PJJ

0

İşte üst düzey adımlar:

$ dsenableroot -u <user-username> -p <your-user-password> -r <new-password-for-root>

Sonra sudoers dosyasının bir yedeğini alın ve düzenleyin.

$ su
Password:<your-new-root-password>
sh-3.2# cp /etc/sudoers /etc/sudoers.bak
sh-3.2# vi /etc/sudoers.bak
sh-3.2# cp /etc/sudoers.bak /etc/sudoers
sh-3.2# exit

Kök erişimini son devre dışı bırak:

$ dsenableroot -d -u abdi -p <root-password>
dsenableroot:: ***Successfully disabled root user.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.