Memahami Mengapa Terminal Tidak Membiarkan Anda Mengetik Kata Sandi

Kadang-kadang Anda perlu memasukkan kata sandi ke terminal, biasanya untuk perintah sudo atau su, yang memungkinkan pengguna menjalankan perintah dengan hak akses pengguna super. Ini cukup umum untuk memungkinkan akses untuk membaca atau memodifikasi sesuatu yang tidak mungkin dilakukan dengan akun pengguna standar. Anda biasanya akan melihat sudo menyimpan perintah lain, mencari sesuatu seperti "sudo nano / etc / hosts". Meskipun sebagian besar baris perintah dan sudo umumnya hanya sesuai untuk pengguna tingkat lanjut, terkadang pengguna komputer biasa mungkin perlu beralih ke Terminal, mungkin untuk mengaktifkan fitur, memodifikasi file sistem, atau bahkan untuk tujuan pemecahan masalah. Untuk pengguna pemula yang berakhir pada baris perintah, pertanyaan yang sangat umum terjadi dengan memasukkan kata sandi ke dalam Terminal, hampir selalu terkait dengan sudo dan ketidakmampuan untuk mengetikkan kata sandi ke dalam baris perintah OS X (atau Linux dalam hal ini) .


Tapi inilah masalahnya; Terminal tidak membiarkan Anda mengetik kata sandi Anda, itu tidak terlihat seperti itu . Kursor di layar tidak akan bergerak, dan tidak ada indikator kata sandi yang dimasukkan sama sekali. Ini disengaja dan berfungsi sebagai mekanisme keamanan, tidak seperti memasukkan kata sandi ke dalam formulir web atau layar masuk GUI standar, yang biasanya disamarkan sebagai tanda bintang seperti ******** atau peluru seperti ••••••••••••••••••••••••••••••••••••• •••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• Alasannya agak sederhana, tidak memberikan indikasi untuk berapa lama kata sandi, menawarkan beberapa kebingungan lebih lanjut untuk entri kata sandi.

Jika ini terdengar membingungkan, tidak sama sekali, inilah cara kerjanya dalam praktik. Katakanlah Anda menjalankan perintah yang memerlukan akses sudo, sehingga memunculkan entri "Kata Sandi:" yang familier.

% sudo cat /etc/secret.conf
Password:

Ketika Kata Sandi: permintaan muncul, ketik kata sandi, meskipun tidak ada yang muncul kemudian tekan Kembali setelah selesai. Sekali lagi, tidak ada indikasi bahwa kata sandi dimasukkan, dan itu disengaja.

Jadi, mari kita jalankan kembali contoh perintah sebelumnya, berpura-pura kata sandi admin pada mesin ini adalah "Monkey123", Anda akan mengetikkan kata sandi seperti yang diminta, meskipun tidak muncul sama sekali, yang berarti urutannya akan seperti:

% sudo cat /etc/secret.conf
Password: Monkey123 (hit Return key)

Ini akan mengeksekusi perintah. Dan tidak, Monkey123 (atau apa pun kata sandi admin) tidak akan muncul di layar, tidak akan ada tanda bintang atau peluru.

Biasanya pengguna hanya harus mengalami ini sekali atau dua kali untuk memahami cara kerjanya, tetapi tetap menjadi pertanyaan besar bagi pengguna yang baru saja mulai terpapar dengan baris perintah. Dan setelah Anda tahu, Anda dapat membagikan pengetahuan tersebut kepada orang lain, jadi jika seseorang bertanya kepada Anda, "mengapa Terminal tidak membiarkan saya mengetikkan kata sandi?", Anda sekarang dapat menjawab dan menjelaskannya kepada mereka.

Bagi mereka yang bertanya-tanya, ya perilaku default ini dapat diubah untuk menampilkan tanda bintang untuk setiap karakter yang dimasukkan sebagai kata sandi di baris perintah, untuk sudo, su, atau apa pun yang Anda lakukan. Meskipun demikian, membuat perubahan itu tidak disarankan, dan kami tidak akan membahasnya dalam artikel khusus ini ... mungkin di masa depan jika ada minat untuk melakukannya.