আমার কাছে একটি ইউএসবি ল্যাম্প রয়েছে যা আমি নির্দিষ্ট সময়ে প্রোগ্রামগতভাবে এটি বন্ধ করার জন্য বিশেষভাবে কিনেছিলাম, সুতরাং এর ইউএসবি বন্দরে শক্তিটি সরিয়ে ফেলতে হবে।
আমি বিশ্বাস করি ইউএসবি-তে আমার একটি ইউএসবি-হাব রয়েছে। প্রদীপটি এই হাবের যে কোনও একটি বন্দরের সাথে সংযুক্ত রয়েছে:
#myhost$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
...
...
Bus 008 Device 006: ID 050d:0234 Belkin Components F5U234 USB 2.0 4-Port Hub
এখানে আমি চেষ্টা করেছি:
দুটি সমাধান এখানে রয়েছে , প্রথমটি পরামর্শ দেয়:
echo disabled > /sys/bus/usb/devices/usb1/power/wakeup
echo suspend > /sys/bus/usb/devices/usb1/power/level # turn off
তবে আমি write error: Invalid argument
লিখতে চেষ্টা করার সময় পাই /sys/bus/usb/devices/usb1/power/level
:
$sudo bash -c 'echo disabled > /sys/bus/usb/devices/usb6/power/wakeup'
$echo suspend|sudo tee /sys/bus/usb/devices/usb6/power/level suspend
tee: /sys/bus/usb/devices/usb6/power/level: Invalid argument
$sudo bash -c 'echo suspend> /sys/bus/usb/devices/usb6/power/level'bash: line 0: echo: write error: Invalid argument
দ্বিতীয় সমাধান:
sudo bash -c 'echo 0 > /sys/bus/usb/devices/usb6/power/autosuspend_delay_ms; echo auto > /sys/bus/usb/devices/usb6/power/control'
যা ইউএসবি-হাব ডিভাইসে পাওয়ার বন্ধ করে দেয়।
আমিও অনুসরণ করার চেষ্টা ছিল এই :
তবে lsusb -t
কেবল স্তব্ধ হয়ে যাওয়ার আউটপুট :
$lsusb -t
4-1:0.0: No such file or directory
4-1:0.1: No such file or directory
^C
যা আমাকে '2-1.1' অংশটি পেতে এই পদ্ধতিটি ব্যবহার করতে বাধা দেয়:
echo '2-1.1' > /sys/bus/usb/drivers/usb/unbind
এই তথ্য পাওয়ার বিকল্প উপায় আছে?
বিকল্পভাবে, পুরো ইউএসবি সাবসিস্টেমের জন্য বিদ্যুৎ বন্ধ করার কোনও উপায় আছে কি? এরকম কিছু modprobe -r usb_etc
?
আমার কার্নেলটি হ'ল:
$uname -r
3.2.0-4-amd64
lsusb -t
কলটি স্ট্রাক করার চেষ্টা করেছি এবং এটির ডিবাগ করার সময়টিতে আমি কোনও কার্যকর কিছু পাইনি। Lsub- এ বাগগুলি সন্ধানের জন্য আমার কাছে এখনই সময় নেই এবং আমি এখনই এটি পুনরুত্পাদন করতে পারি না, তাই এটি সম্ভবত প্লাগ ইন করা ডিভাইসগুলির উপর নির্ভর করে to এটি পুনরুত্পাদন।