เปิดใช้งานการล็อกไดรฟ์
(หมายเหตุ: หากใช้eject -i on
งานได้คุณสามารถข้ามไปก่อนหน้าเพื่อ "ล็อคไดรฟ์เมื่อเริ่มต้น")
ขั้นแรกให้คัดลอก/lib/udev/rules.d/60-cdrom_id.rules
ไป/etc/udev/rules.d/
เพื่อต้องการ:
cp /lib/udev/rules.d/60-cdrom_id.rules /etc/udev/rules.d/
ถัดไปแก้ไข /etc/udev/rules.d/60-cdrom_id.rules และใส่เครื่องหมายบรรทัดที่มีปัญหา:
sudoedit /etc/udev/rules.d/60-cdrom_id.rules
ค้นหาบรรทัดนี้:
ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
ตอนนี้เพิ่ม#
บรรทัด ("คอมเม้นต์นี้" ออกไป, ลบล้างมันอย่างมีประสิทธิภาพโดยไม่ลบ) ด้านหน้าเพื่อทำให้มันเป็นแบบนี้:
# ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
ตอนนี้บันทึกและปิดโดยกดCtrl+ Xจากนั้นYเพื่อยืนยันตามด้วยEnterเพื่อยอมรับชื่อไฟล์ปัจจุบัน ไม่ต้องกังวลว่ามันจะปรากฏเป็นชื่อไฟล์ชั่วคราวแปลก ๆ นั่นเป็นวิธีที่ sudoedit ทำงาน
ตอนนี้คุณควรจะสามารถปิดการใช้งานปุ่มฮาร์ดแวร์ไดรฟ์ออปติคัล (โดยพื้นฐานแล้วเรากำลังล็อคไดรฟ์) ด้วยวิธีนี้:
eject -i on /dev/sr0
~ หรือ ~ eject -i 1 /dev/sr0
พวกเขาทำเช่นเดียวกัน
ล็อคไดรฟ์เมื่อเริ่มต้น
เพื่อให้มีประโยชน์มากขึ้นฉันต้องการให้คำสั่งนี้มีผลเมื่อเริ่มต้น ฉันใช้โปรแกรม GUI "Startup Applications" (ติดตั้งไว้ใน Ubuntu แล้วพบกับ Dash) เพื่อทำสิ่งนี้ให้สำเร็จ
เปิดโปรแกรมแล้วคลิกปุ่ม "เพิ่ม" กล่องโต้ตอบใหม่จะเปิดขึ้น
พิมพ์ชื่อ (ฉันไปพร้อมกับคำอธิบาย "ล็อคออปติคัลไดรฟ์") และภายในช่อง "Command:" bash -c 'eject -i on /dev/sr0'
คลิก "เพิ่ม" เพื่อเสร็จสิ้นแล้วปิดโปรแกรม
เพิ่มแป้นพิมพ์ลัด
ตอนนี้ออปติคัลไดรฟ์ถูกล็อคเมื่อเริ่มต้น แต่ฉันจะเปิดไดรฟ์เมื่อฉันจำเป็นต้องใช้มันได้อย่างไร! เพื่อให้ง่ายฉันใส่คำสั่งลงในแป้นพิมพ์ลัด "eject" ซึ่งปลดล็อกไดรฟ์เลื่อนไดรฟ์ออกจากนั้นใส่ไดรฟ์อีกครั้ง วิธีนี้ฉันยังคงสามารถเข้าถึงไดรฟ์ได้อย่างง่ายดาย แต่ปุ่มฮาร์ดแวร์ไม่เคยมีปัญหา
นี่คือวิธีการใช้แป้นพิมพ์ลัดนี้:
- เปิดโปรแกรม "Keyboard" ที่พบใน Dash
- คลิกแท็บ "ทางลัด"
- คลิกที่ "ทางลัดที่กำหนดเอง" ที่ด้านล่างของรายการ
- คลิกที่เครื่องหมาย "+" กล่องข้อความใหม่จะเปิดขึ้น
- ตั้งชื่อทางลัด (ฉันใช้ "Unlock, Eject, Relock CD")
ป้อนสิ่งนี้ลงในฟิลด์ "Command:":
bash -c 'eject -i off /dev/sr0 && eject /dev/sr0 && eject -i on /dev/sr0'
คลิก "สมัคร"
คลิกทางด้านขวาของชื่อทางลัดของคุณที่มีข้อความว่า "Disabled" เมื่อคุณคลิกแล้ว "ปิดการใช้งาน" จะเปลี่ยนเป็น "เครื่องมือเร่งความเร็วใหม่":
กดคีย์ผสมที่คุณต้องการใช้ ฉันใช้Ctrl+ Alt+E
จากนั้นคุณสามารถทดสอบทางลัดได้ทันที หากทั้งหมดอยู่ใกล้และคุณทำเสร็จแล้ว!
ล็อคไดรฟ์เมื่อตื่นจากการระงับ (วิธี pre-systemd)
ฉันสังเกตว่าไดรฟ์ของฉันถูกปลดล็อคอีกครั้งเมื่อดำเนินการต่อจากการหยุดชั่วคราวดังนั้นฉันจึงสร้างสคริปต์เพื่อให้แน่ใจว่าไดรฟ์ยังคงล็อคอยู่ในกรณีนี้
สร้างไฟล์สคริปต์:
sudoedit /usr/lib/pm-utils/sleep.d/99lock-optical
วางสิ่งต่อไปนี้ลงในไฟล์ใหม่:
#!/bin/sh
# lock the optical drive upon resume from suspend
case "${1}" in
resume|thaw)
eject -i 1 /dev/sr0
;;
esac
ล็อคไดรฟ์เมื่อตื่นจากการระงับ (systemd method)
ฉันใช้ 19.04 ในตอนนี้และสังเกตเห็นว่าไดรฟ์ของฉันถูกปลดล็อคเมื่อกลับมาทำงานจากการหยุดชั่วคราว วิธีนี้ใช้เพื่อทำให้ล็อคอยู่:
สร้างไฟล์สคริปต์:
sudoedit /lib/systemd/system-sleep/00start_my_connection
วางสิ่งต่อไปนี้ลงในไฟล์ใหม่:
#!/bin/sh
if [ $1 = post ]
then eject -i 1 /dev/sr0
fi
บันทึกและปิดและคุณพร้อมแล้ว!