ฉันจะป้องกันหน้าจอว่างเปล่าเมื่อใช้แป้นพิมพ์ลัดเพื่อล็อคคอมพิวเตอร์ได้อย่างไร


12

ผมล็อคจำนวนมากคอมพิวเตอร์ของฉันและถูกสงสัยว่ามีวิธีที่จะได้รับการล็อคหน้าจอเมื่อฉันตีCtrl+ +Alt Lตอนนี้เมื่อฉันใช้คีย์ผสมมันจะเปลี่ยนหน้าจอเป็นสีดำและฉันต้องกดปุ่มหรือคลิกเพื่อเปิดหน้าจอที่แสดงตัวเลือกให้ใส่รหัสผ่านหรือสลับผู้ใช้รวมถึงแสดงพื้นหลังเดสก์ท็อปด้านหลัง .

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

คำตอบ:


17

แต่น่าเสียดายที่ยูทิลิตี้ล็อคหน้าจอgnome-screensaver-commandซึ่งCtrl+ Alt+ Lใช้ทางลัดก็จะเปิดใช้งานหน้าจอที่ว่างเปล่า "สกรีนเซฟเวอร์" เมื่อใดก็ตามที่บอกว่าจะล็อคหน้าจอ

เคล็ดลับก็คือ "การกดแป้นพิมพ์" ปลอม "ทันทีหลังจากหน้าจอถูกล็อคเพื่อกำจัดหน้าจอว่างเปล่าและเปิดล็อคหน้าจอไว้ เราจะทำเช่นนี้กับxdotoolยูทิลิตี้บรรทัดคำสั่งขนาดเล็กซึ่งช่วยให้การคลิกและการเคลื่อนไหวของคีย์บอร์ดและเมาส์โดยอัตโนมัติ

  1. ติดตั้งxdotoolด้วย

    sudo apt-get install xdotool
    
  2. วางสิ่งต่อไปนี้ลงในไฟล์ในโฮมไดเร็กตอรี่ของคุณเช่นlocknoblank.sh:

    #! / bin / ทุบตี
    gnome-screensaver-command -l xdotool sleep 1 คีย์ Ctrl
    • สิ่งนี้จะล็อคหน้าจอตามปกติ แต่หนึ่งวินาทีต่อมาจะส่งการCtrlกดแป้นพิมพ์ไปที่ "ไม่ว่าง" หน้าจอ
    • ทำให้ไฟล์ปฏิบัติการด้วย

      chmod +x ~/locknoblank.sh
      
  3. ไปที่การตั้งค่าระบบ ... แป้นพิมพ์ ... ทางลัดและลบCtrl+ Alt+ Lเป็นทางลัดล็อคหน้าจอเพื่อให้เราสามารถนำกลับมาใช้ใหม่สำหรับคำสั่งที่กำหนดเองของเรา คลิกที่ "System" ที่แถบด้านข้างซ้ายจากนั้นคลิกที่ด้านขวาของ "ล็อคหน้าจอ" ที่มีข้อความระบุว่า "Ctrl + Alt + L"; ตอนนี้จะพูดว่า "เครื่องมือเร่งความเร็วใหม่ ... " กดBackspaceเพื่อลบทางลัด

    ป้อนคำอธิบายรูปภาพที่นี่

  4. ตอนนี้ไปทางลัดที่กำหนดเอง/home/username/locknoblank.shด้านซ้ายและเพิ่มทางลัดตั้งชื่อมันว่าสิ่งที่คุณต้องการที่จะมีคำสั่งเป็น คลิกนำไปใช้แล้วคลิกที่ด้านขวาของที่มันว่า "ผู้พิการ" เพื่อให้ได้ "เร่งใหม่" และกดCtrl+ +AltL

    ป้อนคำอธิบายรูปภาพที่นี่

ปิดการตั้งค่าระบบและคุณทำเสร็จแล้ว!


เพื่อป้องกันการเปิดใช้งานสกรีนเซฟเวอร์อีกครั้ง (หมดเวลาว่าง)

เปิดเทอร์มินัลแล้วพิมพ์ / paste:

gsettings set org.gnome.desktop.session idle-delay 7200

สิ่งนี้ตั้งค่าเวลาการเปิดใช้งานหน้าจอว่างเป็น 2 ชั่วโมง (หรือ 7200 วินาที) คุณสามารถตั้งค่าเป็นอะไรก็ได้ที่คุณต้องการ ค่าเริ่มต้นคือ 600


หมายเหตุ:สำหรับ Ubuntu 18.04 ให้ใช้

xdg-screensaver lock

gnome-screensaver-command -lแทน


ขอบคุณมาก! มันทำงานได้อย่างสมบูรณ์แบบ ... ในตอนแรก ฉันยังถามด้วยว่ามีวิธีที่จะทำให้มันเป็นแบบนั้นซักครู่ (เช่น 1 ชั่วโมง) ฉันคิดว่าโปรแกรมรักษาหน้าจอเริ่มต้นใหม่หลังจากหนึ่งหรือสองนาที ฉันใหม่กับการเขียนสคริปต์ แต่อาจมีวิธีการวนซ้ำการกดแป้นพิมพ์ปลอมพูดและชั่วโมงหรือไม่ หรือบางทีฉันอาจปิดการใช้งาน / ยืดเวลาที่หน้าจอใช้ในการเริ่มต้นใหม่ได้? ฉันมองไปรอบ ๆ เพื่อหาไฟล์กำหนดค่าและหาไม่เจอ
user81572

ขออภัยฉันพลาด โปรดดูการแก้ไขที่ด้านล่างของคำตอบเกี่ยวกับวิธีป้องกันการเปิดใช้งานสกรีนเซฟเวอร์อีกครั้ง
ish

ขอบคุณสำหรับเคล็ดลับ แต่น่าเศร้าที่ดูเหมือนจะไม่ทำงานสำหรับฉัน ฉันยังใหม่กับ Linux แต่เป็นโปรแกรมเมอร์ตัวยง (ทำไมฉันถึงย้ายไปที่ Linux) และฉันทำเพื่อลูปในสคริปต์ทุบตีที่ลูป xdotools อย่างไรก็ตามทางลัดใช้งานไม่ได้และฉันพบว่ามันยุ่งยากในการล็อคคอมพิวเตอร์ของฉันโดยการเรียกใช้สคริปต์ อย่างไรก็ตามมีเพียงทำไปกับสกรีนเซฟเวอร์คำพังเพย? ฉันไม่เห็นการใช้งานจริง ๆ เพราะฉันมักจะปิดฝาหรือปิดแล็ปท็อปเมื่อไม่ได้ใช้งาน ฉันไม่คุ้นเคยกับ gsettings เช่นกันดังนั้นฉันไม่รู้ว่าจะหาโหนดที่เหมาะสมได้ที่ไหน
user81572

3
แค่อยากรู้ถ้าคุณวางแผนที่จะอัพเดทคำตอบนี้สำหรับปี 2018 และ Gnome ภายใต้ Ubuntu 18.04? มันเกิดขึ้นสองสามครั้งในAsk Ubuntuและฉันเริ่มทำการวิจัย ฉันชอบคนส่วนใหญ่จะใช้ 18.04 ในไม่ช้าและได้เล่นกับ Gnome DM เมื่อเร็ว ๆ นี้ ...
WinEunuuchs2Unix

4
สำหรับ Ubuntu 18.04 ให้ใช้xdg-screensaver lockแทนgnome-screensaver-command -l
Dejv
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.