ทำความเข้าใจเกี่ยวกับเหตุใดเทอร์มินัลจึงไม่อนุญาตให้คุณพิมพ์รหัสผ่าน

บางครั้งคุณต้องป้อนรหัสผ่านลงในเทอร์มินัลโดยปกติจะเป็นคำสั่ง sudo หรือ su ซึ่งจะช่วยให้ผู้ใช้สามารถเรียกใช้คำสั่งที่มีสิทธิ์ของผู้ใช้ super นี่เป็นเรื่องปกติสำหรับการอนุญาตให้เข้าถึงเพื่ออ่านหรือแก้ไขบางสิ่งที่มิฉะนั้นจะไม่สามารถทำได้ด้วยบัญชีผู้ใช้มาตรฐาน โดยปกติแล้วคุณจะเห็น sudo prefixing คำสั่งอื่นดูสิ่งที่ต้องการ "sudo nano / etc / hosts" แม้ว่าส่วนใหญ่ของบรรทัดคำสั่งและ sudo โดยทั่วไปเหมาะสมสำหรับผู้ใช้ขั้นสูงผู้ใช้คอมพิวเตอร์แบบสบาย ๆ บางครั้งอาจต้องหันมาใช้ Terminal อาจจะเปิดใช้งานคุณลักษณะแก้ไขไฟล์ระบบหรือแม้กระทั่งเพื่อวัตถุประสงค์ในการแก้ไขปัญหา สำหรับผู้ใช้ที่เพิ่งเริ่มต้นใช้งานที่บรรทัดคำสั่งคำถามทั่วไปที่เกิดขึ้นกับการป้อนรหัสผ่านเข้าสู่ Terminal มักเกี่ยวข้องกับ sudo และ ไม่สามารถพิมพ์รหัสผ่านลงในบรรทัดคำสั่ง ของ OS X (หรือ Linux สำหรับเรื่องนี้) .


แต่นี่คือสิ่งที่; เทอร์มินัล ไม่ ให้คุณพิมพ์รหัสผ่านของคุณมันก็ไม่ได้มีลักษณะเช่นนั้น เคอร์เซอร์บนหน้าจอจะไม่เคลื่อนที่และไม่มีตัวบ่งชี้ว่ารหัสผ่านถูกป้อนเลย นี่เป็นการเจตนาและทำหน้าที่เป็นกลไกการรักษาความปลอดภัยซึ่งแตกต่างจากการป้อนรหัสผ่านลงในแบบฟอร์มบนเว็บหรือหน้าจอการเข้าสู่ระบบ GUI แบบมาตรฐานโดยทั่วไปจะถูกสวมหน้ากากเป็นเครื่องหมายดอกจันเช่น ******** หรือ bullets เช่น••••••• ••••••การขาดสิ่งใดที่แสดงขึ้นมีเจตนาโดยสิ้นเชิงและไม่มีข้อบ่งชี้ในการป้อนรหัสผ่านที่บรรทัดคำสั่ง เหตุผลก็ค่อนข้างง่าย แต่ก็ไม่มีข้อบ่งชี้ว่ารหัสผ่านเป็นเวลานานแค่ไหน

ถ้าสิ่งนี้ฟังดูสับสนมันไม่ได้เป็นมานี่เป็นวิธีการทำงานในทางปฏิบัติ สมมติว่าคุณเรียกใช้คำสั่งที่ต้องการการเข้าถึง sudo ทำให้คุณได้รับ "Password:" ที่คุ้นเคย

% sudo cat /etc/secret.conf
Password:

เมื่อรหัสผ่าน: ร้องขอขึ้นมาให้ พิมพ์รหัสผ่านต่อไปแม้ว่าจะไม่มีอะไรปรากฏ แล้วกด Return เมื่อเสร็จสิ้น อีกครั้งไม่มีข้อบ่งชี้ว่ามีการป้อนรหัสผ่านและเป็นการเจตนา

สมมติว่ารหัสผ่านของผู้ดูแลระบบในเครื่องนี้คือ "Monkey123" คุณจะต้องพิมพ์รหัสผ่านตามที่ร้องขอแม้ว่าจะไม่แสดงผลเลยก็ตามความหมายของลำดับจะเป็นดังนี้:

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

นี้จะดำเนินการคำสั่ง และไม่มี Monkey123 (หรือรหัสผ่านผู้ดูแลระบบใด ๆ ก็ตาม) จะไม่ปรากฏบนหน้าจอเครื่องหมายดอกจันหรือสัญลักษณ์แสดงหัวข้อย่อย

โดยทั่วไปผู้ใช้จะต้องได้รับประสบการณ์เพียงครั้งเดียวหรือสองครั้งเพื่อให้เข้าใจว่าเป็นวิธีการทำงาน แต่ก็ยังคงเป็นคำถามที่ดีสำหรับผู้ใช้ที่เพิ่งเริ่มได้รับการสัมผัสกับบรรทัดคำสั่ง และเมื่อคุณรู้แล้วคุณสามารถถ่ายทอดความรู้ไปพร้อมกับคนอื่น ๆ ได้ดังนั้นหากมีคนถามคุณว่า "ทำไมเทอร์มินัลไม่อนุญาตให้ฉันพิมพ์รหัสผ่าน?" ตอนนี้คุณสามารถตอบและอธิบายให้พวกเขาได้

สำหรับผู้ที่สงสัย yes พฤติกรรมเริ่มต้นนี้สามารถเปลี่ยนแปลงได้เพื่อแสดงเครื่องหมายดอกจันสำหรับอักขระแต่ละตัวที่ป้อนเป็นรหัสผ่านในบรรทัดคำสั่งสำหรับ sudo su หรือสิ่งอื่นที่คุณกำลังทำ อย่างไรก็ตามการเปลี่ยนแปลงดังกล่าวไม่ได้แนะนำและเราจะไม่ครอบคลุมเนื้อหานี้ในบทความเฉพาะนี้ ... บางทีในอนาคตหากมีความสนใจในการทำเช่นนั้น