Jawaban:
Di MacOS X, pengguna root dinonaktifkan secara default, karena itu sutidak akan berfungsi. Seperti yang dinyatakan orang lain, yang terbaik adalah menggunakannya sudo.
Jika Anda harus mengaktifkan user root, lihat TECHNOTE Apple: Mengaktifkan dan menggunakan "root" user di Mac OS X .
sudo su, apa gunanya menonaktifkan suitu?
su", itu untuk mencegah login root . Dengan menolak login sebagai root, Anda mencegah banyak masalah keamanan yang mungkin terjadi. Tidak mengizinkan seseorang yang bisa sudountuk suadalah konyol. Pada dasarnya, sucukup ubah user-id saat ini, dan jalankan perintah (shell, jika tidak ditentukan). Jika user-id sudah 0 (root), seperti ketika dieksekusi dengan sudo, tidak ada yang bisa dilakukan, jadi itu hanya menjalankan shell. Anda bisa mendapatkan efek serupa dengan melakukan sudo bash.
Anda memiliki dua opsi. Yang pertama adalah menggunakan sudo -s- ini akan memberi Anda akses pengguna super, tetapi Anda akan tetap 'sendiri' (jadi untuk berbicara), jadi hal-hal seperti ~akan tetap menjadi direktori home Anda. Atau, Anda dapat menggunakan sudo su, yang memberi Anda shell sebagai pengguna root aktual Mac Anda.
sudountuk menjalankan perintah yang membutuhkan hak yang lebih tinggi, bukan untuk beralih ke shell root dan bekerja darinya.
sudoetos secara ekstrim. Tapi apa pun: semantik. Jangan gunakan shell root di OS X.
Misalnya, jika Anda perlu memindahkan file atau menggunakan git menggunakan CLI maka, dalam hal ini, solusi terbaik adalah menggunakan sudo -sperintah. Setelah perintah itu, Anda tidak harus terus memasukkan kata sandi berulang kali.
Saya pikir Anda tidak dapat melakukan ini sebagai pengguna "normal" ...
Jika ada akun pengguna lain dengan hak admin Anda harus menggunakan yang ini
restricted user$ su
Password:(the root password here)
Sorry!
restricted user$ su - (an admin account here)
password:(the admin account password)
$ su - root
Password:(The root password here)
# -> You are root user now
sudo -uUntuk menjalankan sebagai penggunaan lain, gunakan sudo -u.
Misalnya, untuk menjalankan editor teks seperti nano :
sudo -u someuser nano
... dan masukkan kata sandi pengguna admin Mac Anda saat diminta. Pada titik ini, pengguna admin Mac Anda yang memohon sudo, bukan someuserpengguna sehingga Anda tidak memasukkan someuserkata sandi.
sudo berarti menjalankan sesuatu menggunakan hak superuser.-u berarti "jalankan perintah yang ditentukan sebagai pengguna yang ditentukan ini".someuser harus diganti dengan nama pengguna yang Anda inginkan.Untuk mensimulasikan login awal sebagai pengguna tertentu, termasuk menjalankan skrip startup mereka, gunakan -I.
sudo -u someuser -i nano
Ini menjalankan nanoaplikasi sebagai pengguna someusertetapi hanya setelah menjalankan skrip startup untuk pengguna tersebut.
Jika kami memilih untuk tidak menentukan perintah atau aplikasi yang akan dijalankan, kami dapat menjalankan shell interaktif sebagai pengguna itu.
sudo -u someuser -i
sudo su someuserPendekatan lain menggunakan superintah dalam kombinasi dengan sudo. The superintah berarti “switch user”.
sudo su someuser
Atau, untuk memasukkan menjalankan skrip startup pengguna, tambahkan tanda hubung.
sudo su - someuser
root penggunaThe rootpengguna dalam sistem operasi Unix yang berhubungan memiliki kekuasaan mutlak untuk melakukan apa pun.
Apple telah memilih untuk menonaktifkan rootakun di macOS, untuk menghindari eksploitasi kerentanan keamanan dan untuk melindungi Anda dari menembak diri sendiri. Apple menciptakan gagasan tentang akun pengguna Administrator yang memiliki banyak kekuatan, lebih banyak kekuatan daripada akun pengguna Standar , tetapi bukan kekuatan absolut seperti yang rootdimiliki. Lihat catatan Dukungan Apple ini untuk diskusi.
Jika perlu, Anda dapat mengaktifkan rootpengguna di macOS dan kemudian beralih ke pengguna itu. Ini sangat tidak dianjurkan. Saya akan menempuh jalan ini hanya sebagai jalan terakhir yang putus asa.
Untuk diskusi tentang ini dalam konteks postgrespengguna yang menjalankan sistem database Postgres di macOS, lihat Pertanyaan ini di situs saudara, DBA Stack Exchange .
sudo sumasih berfungsi, jadi tidak benar-benar dinonaktifkan. Itu hanya tidak memiliki kata sandi.