shutdown طولانی در آپدیت جدید Manjaro 20.2

بعد از آپدیت مانجارو به نسخه 20.2 و تغییرات اندکی که در دسکتاپ گنوم در نسخه ۳.۳۸ داشت متوجه شدم که موقع shutdown یا restart دو دقیقه طول میکشه.

در بررسی لاگ ها به جایی نرسیدم. درواقع انگار همه چیز مربوط میشد به tracker گنوم، ولی با دور زدن اون هم تغییری اتفاق نمی افتاد. تا اینکه با کلی سرچ و فروم خوندن متوجه شدم که به خاطر یک سری ناهماهنگی های تکنیکی (که فرصت نوشتن و سوادش رو هم البته ندارم) قضیه مربوط میشه به نحوه ارتباط گنوم با systemd.

فعلا با اضافه کردن عبارت زیر:

[Service]
Slice=-.slice

درست قبل از عبارت ### Lines below this comment will be discarded در فایل زیر:

systemctl edit --user gnome-session-restart-dbus.service

این مشکل برطرف میشه. 

البته این مشکل میتونه دلایل متنوعی داشته باشه و لزوما مربوط به این قضیه نباشه. ولی اگر شما هم بعد از آپدیت مانجارو به این مشکل برخوردید بد نیست این رو امتحان کنید.

انجام hybernate بعد از مدت مشخصی suspend

ما معمولا در لینوکس سیستم رو suspend میکنیم. خب این کار هزینه داره و از باتری یا برق برای فعال بودن استفاده میکنه. میتونیم در آرچی ها با سرویسی که در ادامه ایجاد میکنیم به سیستم میگیم که اگر بعد از ۲ ساعت suspend کسی resume نکرد، سیستم رو hybernate کن. این طوری مصرف باتری‌مون بهینه تر میشه و منطقی تر هم هست. البته به شرطی که swap داشته باشید.

ابتدا باید سرویس مورد نظرمون رو در systemd بسازیم

ادامه مطلب

غیر فعال کردن wakeup برای USBها

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

متوجه شدم که ماوس وایرلس باعث میشه بعد از suspend با حرکت دادن یا کلیک کردن، لپتاپ resume بشه. گشتی زدیم و راه حل یافتیم. باید یک سرویس برای systemd درست کنیم و این موضوع رو غیر فعال کنیم!

$ sudo nano /etc/systemd/system/disable-usb-wakeup.service
----------------------------
[Unit]
Description=Disable USB wakeup triggers in /proc/acpi/wakeup
[Service]
Type=oneshot
ExecStart=/bin/sh -c "echo XHC > /proc/acpi/wakeup; echo WLAN > /proc/acpi/wakeup"
ExecStop=/bin/sh -c "echo XHC > /proc/acpi/wakeup; echo WLAN > /proc/acpi/wakeup"
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

حالا سرویس رو فعال میکنیم:

$ sudo systemctl enable disable-usb-wakeup.service
$ sudo systemctl start disable-usb-wakeup.service

Cover Image

گزارش های سیستم را کمتر کنیم

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

لینوکس از راه های مختلفی گزارش های زیادی در مورد نحوه فعالیت سیستم ثبت میکنه. از پروسه بوت گرفته تا همین الان که دارید این متن رو میخونید. این گزارشات در یک جایی از سیستم ذخیره میشن و بعد از مدت مشخصی حذف میشن.

گاهی این نگه داشته شدن اینهمه لاگ (گزارش) چندان ضرورتی نداره و باعث میشه پروسه بوت کمی دچار تاخیر هم بشه. ما میتونیم از طریقی یکی از این گزارش ها رو که توسط journalctl تولید میشن محدود کنیم. این طوری هم منابع کمتری از سیستم صرف تولید و نگه داری این گزارش ها میشه و هم موقع بوت چند ثانیه ای صرف جویی میشه.

ادامه مطلب

از بین بردن نویز صدای هدفون در درایورهای اینتل

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

اینجا در مانجارو وقتی سیستم حالت suspend به resume میاد یک نویز عجیب و بد توی هدفون شنیده میشه. برای اینکه این نویز برطرف شه راه حلی که من پیدا کردم اینه که ماژول صدا رو یکبار حذف و دوباره بارگذاری کنیم.

ماژول صدای درایور اینتل snd_hda_intel است. با این دستور این ماژول غیرفعال میشه:

sudo rmmod -f snd_hda_intel

حالا با این دستور میبایست مدل درایور اینتلی که دستگاه شما داره مشخص کنیم:

aplay --list-devices

که یه سری توضیحات میاره و عددی شبیه به ALC668 مد نظر ماست. حالا با این دستور ماژول مجددا به شکل صحیح بارگذاری میشه:

sudo modprobe snd_hda_intel ALC668

ادامه مطلب

فعال/غیرفعال کردن touch screen در Manjaro

اگر از لپتاپ هایی استفاده میکنید که مانیتور اونها تاچ هست و گاهی فعال بودن این تاچ باعث دردسر میشه، میتونید به راحتی هر چه تمام فعال یا غیر فعالش کنین! احتمالا غیر فعال بودنش باعث مصرف کمتر باتری هم خواهد شد.

در مانجارو xinput برای مدیریت ورودی های کامپیوتر نصب شده. مثل وبکم، کیبور، ماوس، تاچ پد و ... با اجرای xinput لیستی از این موارد رو میبینید:

[amin@ASUS ~]$ xinput
⎡ Virtual core pointer                        id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ Elan Touchpad                               id=12    [slave  pointer  (2)]
⎜   ↳ USBest Technology SiS HID Touch Controller    id=10    [slave  pointer  (2)]
⎣ Virtual core keyboard                       id=3    [master keyboard (2)]
  ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
  ↳ Power Button                                id=6    [slave  keyboard (3)]
  ↳ Video Bus                                   id=7    [slave  keyboard (3)]
  ↳ Video Bus                                   id=8    [slave  keyboard (3)]
  ↳ Sleep Button                                id=9    [slave  keyboard (3)]
  ↳ USB2.0 HD UVC WebCam                        id=11    [slave  keyboard (3)]
  ↳ Asus WMI hotkeys                            id=13    [slave  keyboard (3)]
  ↳ AT Translated Set 2 keyboard

همون طور که میبینید تاچ اسکرین لپتاپ با ID شماره 10 مشخص شده که یک چیز ثابتی هست.

حالا با این دستور ها میتونید به راحتی هر کدوم از این ها رو فعال یا غیر فعال کنید:

xinput disable 10
xinput enable 10

ادامه مطلب




حاصل سر و کله زدن های من با لینوکس