انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => نصب، راه‌اندازی و بروزآوری => نویسنده: milad.fashi در 07 آبان 1398، 06:06 ب‌ظ

عنوان: جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: milad.fashi در 07 آبان 1398، 06:06 ب‌ظ
 تو ویندوز راه حل گرافیکی برای جلوگیری از روشن شدن کامپیوتر (وقتی که standbyهستش)توسط حرکت اتفاقی موس   وجود داشت.اما تو لینوکس هم میشه کاری کرد که وقتی کامپیوتر رو Suspend to ram کردیم دیگه با موس روشن نشه!؟
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: milad.fashi در 07 آبان 1398، 06:20 ب‌ظ
برای این کار دستور زیر رو وارد نمایید :
cat /proc/acpi/wakeupبا وارد کردن این دستور خروجی زیر به شما نمایش داده می شود :
Device  S-state   Status   Sysfs node
P0P1      S4    *disabled
EHC1      S3    *disabled  pci:0000:00:1d.0
USB1      S3    *disabled
USB2      S3    *disabled
USB3      S3    *disabled
USB4      S3    *disabled
EHC2      S3    *disabled  pci:0000:00:1a.0
همان طور که می بینید باید مقابل ستون های EHC1 و EHC2 عبارت enabled نوشته شده.چون enable هستند باعث Wake up شدن لینوکس شما میشن.حال من میخوام اونها رو disable کنم تا مانع روشن شدن لپ تاپم بعد از اسلیپ شدن بشه.EHC1 و EHC2 در واقع پورت های USB 2 لپ تاپ من هستند که با غیرفعال شدن اون ها دیگه لپ تاپ من به وسیله موس بی سیمی که به این پورت های USB متصل شده روشن نمیشه.اما برای غیرفعال کردنشون هم باید دستورات زیر رو وارد کنید :
echo EHC1 | sudo tee /proc/acpi/wakeupecho EHC2 | sudo tee /proc/acpi/wakeupدستوارت بالا کار خاصی نمیکنند.فقط در فایل متنی "/proc/acpi/wakeup" مقدارهای EHC1 و EHC2 رو disabled میکنند.شما با Text editor هم میتونید این کار رو انجام بدید.
اگر لپ تاپ شما پورت USB3 هم داشت باید مقدار XHCI رو هم disable کنید.
الان تست کنید بعد از Sleep نباید کامپیوتر شما با موس Wakeup بشه.اما مشکل اینجاست بعد از ریستارت کردن دوباره روز از نو و روزی از نو و بازهم با موس Wakeup میشه.چون اگر مجددا فایل مذکور رو نگاه کنید مقابل EHC1 و 2 عبارت enabled رو نوشته !
برای تثبیت اون باید این کار رو انجام بدید.دستورات زیر رو اجرا کنید تا تکه کد شما در هر بار که کامپیوتر شما بوت میشه اجرا بشه :
printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.localsudo chmod +x /etc/rc.local
حالا هر اسکریپتی که داخل فایل rc.local  بنویسید موقع بوت شدن سیستم اجرا میشه.چون rc.local یه فایل اجرایی (Executable) هستش و هروقت سیستم شما بوت بشه اسکریپت های داخل فایل اجرایی rc.local اجرا میشه.
داخل این فایل اجرایی باید دستورات زیر رو بنویسید:
#!/bin/bash
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHCI > /proc/acpi/wakeup
exit 0
البته در بعضی از distro ها مثل فدورا اسکریپ بالا جلوی wake up شدن با موس رو نمیگیره و باید همان دستورات بالا یعنی echo EHC1 | sudo tee /proc/acpi/wakeup رو در داخل rc.local بنویسید.خودتون با آزمون و خطا میتونید راه حل رو پیدا کنید.
حالا کامپیوتر خود را ریستارت کنید.بعد از ریستارت شدن باید موس نتواند کامپیوتر sleep شده شما را روشن کند.
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: Issac در 07 آبان 1398، 07:00 ب‌ظ
جالب بود ، ممنون . اگه کامل تر بشه میشه یه ویکی.
معنی اون عبارات هم اگه میدونین یکم  توضیح بدین مثلا EHC1 و EHC2 و RP03 و UAR1 و ... اینا فقط برای  Wake Up هستند ؟ وقتی سیستم روشن هست فعالن و وقتی سیستم خاموش هست غیر فعال؟
دستور tee چیکار میکنه؟
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: Farhaad 1992 در 07 آبان 1398، 09:52 ب‌ظ
 :o چه کارهای پیچیده و طولانی!

از BIOS مثل آب خوردن تنظیم کن |:
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: milad.fashi در 09 آبان 1398، 10:23 ق‌ظ
:o چه کارهای پیچیده و طولانی!

از BIOS مثل آب خوردن تنظیم کن |:
بایوس لپ تاپ ها معمولا قابلیت های کمتری داره.لپ تاپ ASUS k43sj بنده قابلیت های کمی داره و هر چی گشتم گزینه ای در خصوص Wakeup پیدا نکردم.
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: milad.fashi در 27 اردیبهشت 1399، 12:37 ق‌ظ
من امروز همین دستورات رو در توزیع مانجارو نوشتم.همه دستورات و اسکریپت ها کار کرد.ولی بعد از ریبوت شدن سیستم دوباره با موس سیستم wake up میشد.با کمی جستجو متوجه شدم که مانجارو که از Arch GNU-Linux مشتق شده دستوراتی رو که در فایل rc.local نوشته میشه رو هنگام بوت اجرا نمیکنه.ولی در اوبونتو / دبیان به صورت خودکار این فایل هنگام بوت اجرا میشه.برای حل این مشکل راه حل رو در اینترنت پیدا کردم.و این راه حل رو اینجا گذاشتم شاید بعدها به درد کسی بخوره :
دستور زیر رو اجرا کنید تا فایلی به اسم rc-local.service رو ایجاد کنید و محتویات زیر رو در اون قرار بدهید :
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

سپس دستور زیر رو اجرا کنید :
sudo systemctl enable rc-local.service
با این کار سرویس rc.local.service شما فعال میشه.سپس باید با دستور زیر میتونید اون رو تست کنید که ببینید درست اجرا میشه !؟
sudo systemctl start rc-local.service
فراموش نکنید که فایل مذکور باید قابلیت اجرایی داشته باشه پس دستور زیر رو هم اجرا کنید :
chmod a+X /etc/systemd/system/rc-local.service

با دستور زیر هم میتونید وضعیت سرویس خود رو مشاهده کنید :
sudo systemctl status rc-local.service
منبع : https://superuser.com/questions/278396/systemd-does-not-run-etc-rc-local
عنوان: پاسخ : جلوگیری از Wake Up شدن گنولینوکس با Mouse بعد از Sleep شدن
ارسال شده توسط: milad.fashi در 03 خرداد 1399، 12:28 ق‌ظ
چون توزیع فدورا تفاوت هایی با دبیان/اوبونتو داره برای فعال کردن یک سرویس در هنگام راه اندازی سیستم و  bootable کردن اسکریپت شخصی خود در فدورا به آدرس زیر بروید :
https://www.linode.com/docs/quick-answers/linux/start-service-at-boot/ (https://www.linode.com/docs/quick-answers/linux/start-service-at-boot/)