আমি কীভাবে স্থগিত কম্পিউটার জেগে মাউস চলাচলকে আটকাতে পারি?


32

এটি সত্যিই বিরক্তিকর যেহেতু একটি সাসপেন্ড করার পরে আমাকে মাউসটি আনপ্লাগ করতে হবে তা নিশ্চিত করার জন্য যে অনিয়মিত কোনও দ্বিধা সিস্টেম জাগে না। আমি সিস্টেম সেটিংসে এমন কোনও কিছুই পাইনি যা কাছাকাছি গুগল করেই এটি অক্ষম করতে পারে।

উত্তর:


24

আমি এখনও বায়োস পরীক্ষা করে দেখিনি, তবে আমি একটি সমাধান খুঁজে পেয়েছি!

সংক্ষিপ্ত সংক্ষিপ্তসার: /proc/acpi/wakeupআপনি সাসপেন্ড থেকে পুনরায় শুরু করতে বর্তমানে কোন ডিভাইস সক্ষম হয়েছেন তা আপনি দেখতে পাবেন। এই তালিকাটি তথাকথিত "ডিভাইসগুলি" এর নাম (সংক্ষেপে) দেখায়। "PWRB" উদাহরণটির অর্থ "পাওয়ার বোতাম" button

আপনি যদি সেই ফাইলটিতে ডিভাইস-নামগুলি লিখেন তবে আপনি সেগুলি সক্ষম / অক্ষম থাকা অবস্থায় টগল করুন।

আমি জাগ্রত-দ্বারা-মাউস অক্ষম করার জন্য একটি ছোট হাওটো লিখেছিলাম , যেখানে আমি সেই তথ্যটি পেয়েছি on


1
এটি আমার উত্তরের চেয়ে আরও ভাল শোনায় এবং সেই অনুসারে আমি আমার উত্তর সম্পাদনা করেছি। ধন্যবাদ!
রবি বাসাক

2
সুতরাং, এটি কাজ করে (তবে আমি লক্ষ্য করি যে কেবল ব্যবহারের sudoফলে কাজ হবে না: sudo suপ্রথমে একটি করতে হবে , তারপরে প্রতিধ্বনিত হবে /proc/acpi/wakeup। তবে আমি ভাবছি যে কেউ কি কেবল মাউস অক্ষম করার উপায় খুঁজে পেয়েছে ? আমার উভয়ই আছে আমার ডেস্কটপে (ওয়্যারলেস) ইউএসবি এর মাধ্যমে সংযুক্ত এবং এটি কীবোর্ড থেকে জাগানো অক্ষম করবে
মার্কো

15

সমস্ত পোস্টারকে ধন্যবাদ যেহেতু মাউস জাগানো একটি বড় অসুবিধা এবং আমি আমার উত্তরগুলি এখানে পেয়েছি। আমি সমাধানগুলিতে আমার টুইস্টটি যুক্ত করতে চাই কারণ এটি আরও ক্ষেত্রে সহায়তা করতে পারে। আমাকে 3 টি আলাদা আইটেমটি অক্ষম করতে হয়েছিল /proc/acpi/wakeup। আমার ডিভাইসগুলি: EHC1, EHC2, XHCI। প্রথম 2 হ'ল ইউএসবি 2 এবং তৃতীয় এ ইউএস 3 এন্ট্রি। দয়া করে মনে রাখবেন যে যদিও আমার মাউসের জন্য ইউএসবি ট্রানসিভারটি একটি ইউএসবি 2 বন্দরে প্লাগ ইন করা হয়েছে এবং কোনও ইউএসবি 3 পোর্টে কিছুই নেই, সমস্ত 3 টি আইটেম অক্ষম না করা পর্যন্ত কম্পিউটার মাউস চলবে ।

$ cat /proc/acpi/wakeup | sort 
Device  S-state   Status   Sysfs node
EHC1      S3    *disabled  pci:0000:00:1d.0
EHC2      S3    *disabled  pci:0000:00:1a.0
GLAN      S4    *enabled   pci:0000:08:00.0
.. ,, ..
USB7      S3    *disabled
WLAN      S3    *disabled  pci:0000:03:00.0
XHCI      S3    *disabled  pci:0000:07:00.0

প্রতিটি স্টার্টআপে জাগ্রত আইটেমগুলি অক্ষম করতে, আপনি এর মতো কিছু যুক্ত করতে পারেন /etc/rc.local..

echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHCI > /proc/acpi/wakeup

সিপ্রিকাস দ্বারা সম্পাদনা করুন:

আমি এটি সম্পাদনা করছি কারণ আমার উত্তরটির উপর ভিত্তি করে উপরের নকল হিসাবে আমার একটি পৃথক প্রশ্নের বন্ধ করার জন্য আরও বিশদ যুক্ত করতে হবে; আমি পৃথক উত্তর হিসাবে পোস্ট করা বেশি দরকারী বলে মনে করি।

*** পরীক্ষা করুন কোন আইটেমগুলি অক্ষম করা দরকার - যেমন এখানে নির্দেশিত হয়েছে - প্রতিটি আইটেম যা enabledনীচে পোস্ট করা হয়েছিল সেগুলির cat /proc/acpi/wakeup | sortজন্য নীচের প্রতিটি কমান্ড টার্মিনালে চালিয়ে এবং তারপরে মাউসটি সিস্টেম জেগেছিল কিনা তা পরীক্ষা করে (পুনরায় আরম্ভের প্রয়োজন ছাড়াই) :

sudo sh -c "echo EHC1 > /proc/acpi/wakeup"
sudo sh -c "echo EHC2 > /proc/acpi/wakeup"
sudo sh -c "echo XHCI > /proc/acpi/wakeup"

(আমার ক্ষেত্রে অন্যান্য ইউএসবি পোর্টগুলির সাথে পরীক্ষার পরেও প্রথমটি যথেষ্ট ছিল)

*** যদি /etc/rc.localফাইলটি না থাকে - এই পোস্ট অনুসারে :

printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.local
sudo chmod +x /etc/rc.local

ফাইলটি দেখতে এমন কিছু হওয়া উচিত:

#!/bin/bash
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHCI > /proc/acpi/wakeup

exit 0

পুনরায় বুট করুন।


যদি এটি এখনও কাজ না করে তবে সম্ভবত ফাইলটি /etc/systemd/system/rc-local.serviceঅনুপস্থিত বা সঠিকভাবে কনফিগার করা হয়নি।

সঙ্গে পরীক্ষা

sudo /etc/init.d/rc.local start

এবং

sudo systemctl status rc-local

সিস্টেমডের সাহায্যে /etc/rc.local কীভাবে সক্ষম করবেন তা অনুসরণ করুন :

ফাইলটি তৈরি করুন:

sudo nano /etc/systemd/system/rc-local.service

তারপরে এটিতে নিম্নলিখিত বিষয়বস্তু যুক্ত করুন।

[Unit]
 Description=/etc/rc.local Compatibility
 ConditionPathExists=/etc/rc.local

[Service]
 Type=forking
 ExecStart=/etc/rc.local start
 TimeoutSec=0
 StandardOutput=tty
 RemainAfterExit=yes
 SysVStartPriority=99

[Install]
 WantedBy=multi-user.target

সংরক্ষণ করুন এবং ফাইলটি বন্ধ করুন। ন্যানো পাঠ্য সম্পাদকটিতে একটি ফাইল সংরক্ষণ করতে, Ctrl + O টিপুন, তারপরে নিশ্চিত করতে এন্টার টিপুন। ফাইলটি থেকে বেরিয়ে আসতে, Ctrl + X টিপুন।

এর সাথে কোনও ত্রুটি না করে সমস্ত কিছু ঠিক আছে:

sudo systemctl start rc-local.service
sudo systemctl status rc-local.service

পরিবর্তনগুলি দেখতে পুনরায় বুট করুন।


আপনি যদি আমার সম্পাদনা পছন্দ না করেন তবে দয়া করে @ সিপ্রিকাসকে পতাকাঙ্কিত করে আমাকে জানান এবং আমি উপরের সাথে লিঙ্কিত একটি পৃথক উত্তর হিসাবে পোস্ট করব।

6

আমার সিস্টেমটি উবুন্টু 15.10

আমি lsusbমাউস ডিভাইসটি কী তা জানতে কমান্ডটি ব্যবহার করার চেষ্টা করেছি । এটি খুব সহজ, আপনি টাইপ করুন এবং lsusbতারপরে মাউসটি আনপ্লাগ করুন (আমার ক্ষেত্রে এটি একটি ব্লুটুথ রিসিভার) এবং lsusbআবার টাইপ করুন । ডিভাইসটি এর মতো দেখাচ্ছে:

Bus 007 Device 008: ID 24ae:2000

এখন /sys/bus/usb/devices/একইভাবে (আনপ্লাগ / প্লাগ) ব্যবহার করে ফোল্ডারে এটি সন্ধান করুন । আমার ক্ষেত্রে, আমি দেখতে পেয়েছি যে সেগুলি কোথাও ফোল্ডারে শুরু হয়েছিল 7-2*

এবার আইডিপ্রডাক্ট এবং আইডিভেন্ডর পড়ার চেষ্টা করুন। উদাহরণস্বরূপ: cat /sys/bus/usb/devices/7-2.3/idProduct=> 2000, cat /sys/bus/usb/devices/7-2.3/idVendor=> 24ae। এটাই.

পরিশেষে আমি /lib/systemd/system-sleepডিরেক্টরিতে একটি স্ক্রিপ্ট তৈরি করি , আপনি যা খুশি তাই নাম দিন।

#! /bin/sh

if [ ! -r /sys/bus/usb/devices/7-2.3/power/wakeup ]; then
    exit 0
fi
case "$1" in
    pre )
    echo disabled > /sys/bus/usb/devices/7-2.3/power/wakeup
;;
esac

সব শেষ.


এটি আমার ল্যাপটপে উবুন্টু 18.04 এর সাথে কাজ করে।
মিন্ এনগুইন

1

এই স্ক্রিপ্ট আমার সমস্যার সমাধান। এটা দেখ.

    #!/bin/bash

# allow only one instance
r=$(pidof -x -o $$ ssmonoff.sh)
set -- $r
if [ "${#@}" -ge 1 ]; then
    echo "Script already running. Exit..."
    exit
fi

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while read line; do
    if echo $line | grep "boolean true" &> /dev/null; then
            xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "0"
            xset dpms force off
    else
            xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "1"
    fi
done )

আপনাকে যা করতে হবে তা হ'ল প্রথমে চালানো sudo xinput list, আপনার ইউএসবি মাউসের প্রদত্ত নামটি খুঁজে বের করে স্ক্রিপ্টে রেখে দিন। তারপরে ফাইলটিকে "ssmonoff.sh" হিসাবে সংরক্ষণ করুন, এটি কার্যকর করার যোগ্য করুন এবং এটি স্টার্টআপে চালানোর জন্য সেট করুন।


1

দুর্দান্ত ব্যাখ্যা। আমি কেবল নিম্নলিখিত কমান্ডটি rc.local এ যুক্ত করেছি

for d in `cat wakeup |grep enabled|grep -v PS2K|cut -b -4`; do echo $d >/proc/acpi/wakeup ; done

জেকআপ থেকে পিএস 2 কে (কীবোর্ড পিএস 2) এর চেয়ে প্রতিটি ডিভাইস অক্ষম করতে। সহজ এবং কাজ!


0

আপনার হার্ডওয়ারের সাথে নির্দিষ্ট কোনও উপায় থাকতে পারে, সেক্ষেত্রে আপনার সিস্টেমে BIOS সেটিংসের মাধ্যমে বিকল্পটি উপলব্ধ থাকতে পারে।

সেটিংস পরিবর্তন করতে আপনার বায়োস মেনুতে যাওয়াও সিস্টেম নির্দিষ্ট। সাধারণত আপনি রিবুট করার ঠিক পরে একটি কী টিপুন এবং চাপতে চাবিটি প্রায়শই স্ক্রিনে প্রদর্শিত হয়।

যাইহোক, ব্যবহারকারীর 138339 এর উত্তর আপনার যা প্রয়োজন তা অর্জন করার আরও সাধারণ উপায় বলে মনে হয় এবং আপনি এটি চলমান সিস্টেম থেকে করতে পারেন।


0

এটি আপনার কাজের জন্য এটি আমার ধাপে ধাপে "টিউটোরিয়াল":

  1. cat /proc/acpi/wakeupজাগ্রত ডিভাইসগুলির তালিকা প্রদর্শন করতে কমান্ডটি ব্যবহার করুন
  2. কমান্ডটি ব্যবহার করুন sudo sh -c "echo XXXX >/proc/acpi/wakeup"(ডিভাইস কোডের সাথে "XXXX" প্রতিস্থাপন করুন ) ডিভাইস স্থিতি টগল করতে (সক্ষম / অক্ষম)। একবারে একটি ডিভাইস যান এবং আপনার মেশিনটি স্থগিত করার চেষ্টা করুন এবং উপযুক্ত ডিভাইস মেশিনটি জাগাতে সক্ষম না হওয়া পর্যন্ত আপনি যে ডিভাইসটি অক্ষম করতে চান তা ব্যবহার করে এটি জাগ্রত করার চেষ্টা করুন। আপনি অক্ষম করতে চান না এমন ডিভাইসগুলি সর্বদা সক্ষম করতে ভুলবেন না।
  3. যখন আপনার ডেস্কটপ ফাইলটিতে "acpi_wakeup" এ নিম্নলিখিত কোডযুক্ত সঠিক ডিভাইসটি পাওয়া যায়: #!/bin/sh printf "XXXX" > /proc/acpi/wakeup (আপনার ডিভাইস কোডের সাথে "XXXX" প্রতিস্থাপন করতে ভুলবেন না)
  4. ফোল্ডারে ফাইলটি সরান বা অনুলিপি করুন /etc/init.d/। নিম্নলিখিত কমান্ডটি ব্যবহার করে ফাইলটি অনুলিপি করতে: sudo cp /home/USERNAME/Desktop/acpi_wakeup /etc/init.d/acpi_wakeup ("প্রকৃত ব্যবহারকারীর নামের সাথে" USERNAME "প্রতিস্থাপন করুন)
  5. ফাইলটি কার্যকর করতে সক্ষম করুন: sudo chmod 755 /etc/init.d/acpi_wakeup
  6. তারপরে অন্যান্য ডিরেক্টরিতে স্বয়ংক্রিয়ভাবে প্রয়োজনীয় প্রতীকী লিঙ্কগুলি তৈরি করতে 'আপডেট-আরসি.ডি' ব্যবহার করুন: sudo update-rc.d acpi_wakeup defaults (এটি দেখায় WARNING: ...missing LSB tags and overridesতবে এটি ঠিক আছে You আপনাকে এটি নিয়ে চিন্তা করার দরকার নেই)
  7. আপনার কম্পিউটারটি পুনরায় বুট করুন।

সূত্র এবং আরও পড়া:

http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=7&t=1985 http://ubuntuforums.org/showthread.php?t=814939&page=3

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.