เหตุผลที่ผู้คนโพสต์คำถามเช่นนี้เกิดจากการหวั่น - แน่นอน "ความชั่วร้าย " - คุณสมบัติ USB "ระงับอัตโนมัติ "
อัตโนมัติระงับการใช้พลังงานให้กับอุปกรณ์ USB "ว่าง" และหากไดรเวอร์ของอุปกรณ์รองรับคุณสมบัตินี้อย่างถูกต้องอุปกรณ์ดังกล่าวจะไม่สามารถติดต่อได้ ดังนั้นการเปิด / ปิดพอร์ต USB เป็นอาการของปัญหาไม่ใช่ปัญหาในตัวเอง
ฉันจะแสดงวิธีการให้ทั่วโลกปิดการใช้งานโดยอัตโนมัติระงับอัตโนมัติโดยไม่ต้องเปิด / ปิดพอร์ต USB ด้วยตนเอง:
คำตอบสั้น ๆ :
คุณไม่จำเป็นต้องแก้ไข " autosuspend_delay_ms " ทีละอย่าง: USB autosuspend สามารถปิดใช้งานได้ทั่วโลกและส่วนบุคคลโดยใช้คำสั่งต่อไปนี้:
sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="/&usbcore.autosuspend=-1 /' /etc/default/grub
update-grub
systemctl reboot
Ubuntu 18.04หน้าจอคว้าต่อไปนี้ในตอนท้ายของ "คำตอบยาว" แสดงให้เห็นถึงวิธีการที่ผลของฉันได้ประสบความสำเร็จ
คำตอบยาว:
เป็นความจริงที่สถานะเคอร์เนลการจัดการพลังงาน USB ของเอกสารการบอกเลิกอัตโนมัติจะต้องถูกเลิกใช้และใน 'place " autosuspend_delay_ms " ที่ใช้ในการปิดการใช้งาน USB autosuspend:
"In 2.6.38 the "autosuspend" file will be deprecated
and replaced by the "autosuspend_delay_ms" file."
อย่างไรก็ตามการทดสอบของฉันแสดงให้เห็นว่าการตั้งค่าusbcore.autosuspend=-1
ใน/ etc / default / grubดังต่อไปนี้สามารถใช้เป็นGLOBAL toggle สำหรับฟังก์ชั่นการบันทึกอัตโนมัติของ USB ได้คุณไม่จำเป็นต้องแก้ไข " autosuspend_delay_msแต่ละรายการ"ไฟล์
เอกสารเดียวกันที่ลิงก์ด้านบนระบุว่าค่า "0" คือเปิดใช้งานและค่าลบจะถูกปิดใช้งาน :
power/autosuspend_delay_ms
<snip> 0 means to autosuspend
as soon as the device becomes idle, and negative
values mean never to autosuspend. You can write a
number to the file to change the autosuspend
idle-delay time.
ในข้อเขียนUbuntu 18.04หน้าจอคว้าด้านล่างแสดงให้เห็นถึงวิธีการที่ผลของฉันกำลังประสบความสำเร็จ (และทำซ้ำได้) โปรดสังเกตเริ่มต้นคือ "0" ( เปิดใช้งาน ) ในautosuspend_delay_ms
จากนั้นให้สังเกตว่าหลังจากตั้งค่าใน Grub เท่านั้นค่าusbcore.autosuspend=-1
เหล่านี้จะเป็นค่าลบ ( ปิดใช้งาน ) หลังจากรีบูต นี่จะช่วยให้ฉันไม่ต้องกังวลกับการแก้ไขค่าแต่ละค่าและตอนนี้สคริปต์สามารถปิดใช้งานการปิดอัตโนมัติ USB
หวังว่าสิ่งนี้จะทำให้การปิดการใช้งาน USB autosuspend ง่ายขึ้นและสามารถเขียนได้ง่ายขึ้น -
power/level
ถูกคัดค้านในขณะนี้; ใช้ แทนpower/control
(power/wakeup
ไม่เป็นไร) นอกจากนี้ยังยอมรับเฉพาะ "อัตโนมัติ" และ "เปิด" ไม่ใช่ "ระงับ" อีกต่อไป "อัตโนมัติ" ฉลาดพอและหากไม่ได้ปิดเครื่องขณะไม่มีการใช้งานแสดงว่าเป็นความผิดของอุปกรณ์ อย่างไรก็ตามคุณไม่สามารถปิดเครื่องได้ด้วยตนเอง สำหรับข้อมูลเพิ่มเติมดูคำตอบด้านล่างโดยtlwhitecและ doc ของเคอร์เนล: kernel.org/doc/Documentation/usb/power-management.txt