نمایش در لحظه دمای سیستم

اگر از lm_sensors استفاده میکنید با دستور sensors میتونید دمای قسمت های مختلف سیستم رو در یک لحظه نگاه کنید.

اما میتونیم این رو با watch ترکیب کنیم تا دمای سیستم رو به صورت realtime تماشا کنیم:

watch -n 1 sensors

تغییر بکلایت متناسب با حالت باتری

با یک udev rule ساده میتونیم به سیستم بگیم وقتی شارژر قطع شد، بکلایت (نور صفحه) رو کم کنه و وقتی شارژر وصل شد نور صفحه رو زیاد کنه. 

فایل زیر رو ایجاد کنید و به جای دستوری که من نوشتم، دستور مورد نظر خودتون رو وارد کنید. راه های متعددی برای تغییر بکلایت وجود داره. یکی از اونها brightnessctl هست.

/etc/udev/rules.d/99-backlight-ac-battery.rules
## ACTION TO DO WHEN ON BATTERY SUBSYSTEM=="power_supply", ATTR{online}=="0", ENV{POWER}="off", RUN+="/usr/bin/brightnessctl set 30%" ## ACTION TO DO WHEN ON CHARGER SUBSYSTEM=="power_supply", ATTR{online}=="1", ENV{POWER}="on", RUN+="/usr/bin/brightnessctl set 70%"

و بعد یک بار دستور زیر رو اجرا کنید تا این rule توسط سیستم شناسایی بشه

$ sudo udevadm control --reload-rules

bind در mount

همون طور که میدونید در لینوکس برای دسترسی به درایوها باید اونها رو در یک فولدر mount کرد. ولی جالبه که بدونید میتونیم هر یک از محتویات یک درایو ماونت شده رو هم در جاهای دیگه ماونت کرد! به این کار میگن bind (بخوانید بایند) دو تا فولدر به هم.

یک چیزی شبیه به ایجاد کردن لینک که با دستور ln انجام میدیم. منتها با یک سری تفاوت های کوچک...

  • در لینک کردن با ln ما یک شورتکات از مقصد میسازیم. درواقع فولدر واقعی وجود نداره. اما در bind ما یک فولدر میسازیم و محتویات یک فولدر دیگه رو داخلش ماونت میکنیم.
  • انجام bind توسط mount نیاز به دسترسی root داره. البته میشه با پکیج bindfs هم bind کرد که نیاز به دسترسی root نداره، ولی خب برای نصب پکیج باید دسترسی root داشته باشید!
  • در bind کردن دو فولدر به هم، دیگه اون شورتکات فِلِش در گوشه آیکن وجود نخواهد داشت.

من در هاردم، چند تا فولدر دارم به نام های Documents, Downloads, Pictures, Videos, Music. یعنی همون هایی که در فولدر home کاربری هم داریم. تا الان با ln یک شورتکات از هر کدوم این ها در فولدر home داشتم. ولی حالا فولدرهای روی هارد رو با فولدرهای متناظرشون در فولدر home کاربر bind کردم. ظاهر قضیه بهتر شده. یعنی دیگه خبری از فلش روی آیکن نیست و انگار واقعا همه چیز در home قرار داره.

توجه: بعد از نوشتن این مطلب متوجه شدم فعلا امکان Trash کردن فایلها در مسیرهای bind شده دست‌کم در دسکتاپ‌ها وجود نداره. ولی در cli با trash-cli میشه اینکار رو کرد. اما بعدا متوجه شدم که با bindfs میشه! پایین تر توضیح دادم.

برای اینکه بدونید چطوری، ادامه مطلب رو ببینید...

ادامه مطلب

استفاده از systemd برای mount درایوها

برای دسترسی به درایوها در لینوکس باید اونها رو اصطلاحا mount کنیم. یعنی یک فولدر بسازیم و به سیستم عامل بگیم که درایو مورد نظر ما رو داخلش نشون بده. برای اینکه این کار حین بوت انجام بشه، به طور سنتی از فایل /etc/fstab استفاده میکردیم.

اما با ظهور systemd و رفتن توزیع ها به سمت اون، تغییرات جدیدی در نحوه مدیریت خیلی چیزها از جمله ماونت کردن درایو ها ایجاد شد. systemd فایل fstab رو موقع بوت بررسی میکنه و به ازای هر ردیفی که داخلش وجود داره یک یونیت mount درست میکنه و سپس درایو مورد نظر ماونت میشه. 

چرا ما از اول خودمون این یونیت ها رو آماده نکنیم؟ که دیگه systemd مجبور نباشه در هر بوت اونها رو تولید کنه و بعد ماونت کنه؟ در این نوشته میخوام بگم من چطوری پارتیشن مورد نظرم رو با استفاده از systemd موقع بوت ماونت میکنم و دیگه توی fstab ردیفی برای اون قرار ندادم.

استفاده از systemd برای ماونت این فواید رو داره:

  • میتونید مشخص کنید درایو شما در چه زمانی ماونت بشه
  • میتونید مشخص کنید درایو شما فقط وقتی ماونت بشه که بهش نیاز دارید (Automount)
  • اگر مشکلی در فایل fstab وجود داشت، کل سیستم تحت تاثیر قرار نمیگیره، و فقط یک یونیت هست که دچار مشکل میشه.
  • به راحتی میتونیم با بررسی status یونیت مورد نظر، مشکل احتمالی رو پیدا کنیم.

ادامه مطلب

Cover Image

جلوگیری از نمایش Thumbnail در گنوم

فایل منیجر پیش فرض گنوم یعنی Files یا با اسم قدیمیش Nautilus برای فایلهای مختلف، تصاویر thumbnail نشون میده. مثلا برای فیلم‌ها، تصاویر، اسناد و ...

این تصاویر در فولدر ~/.cache/thumbnails برای هر یوزر ذخیره میشن. این اتفاق خوبی ها و بدی هایی داره. خوبی تصاویر thumbnail اینه که شما بدون باز کردن اون فایل میتونین تا درصدی حدس بزنید محتواش چی هست. و همچنین جلوه بصری هم به فایل‌ها میده.

اما بدی این تصاویر اینه که موقع لود شدن هم زمان میبره و هم مدام هارد درگیر تولید و بازخوانی این تصاویر هست. ما میتونیم تولید این تصاویر رو کلا غیر فعال کنیم یا فقط برای برخی از انواع فایلها غیر فعال کنیم.

غیر فعال کردن کلی Thumbnails

در دسکتاپ Gnome میتونید با این دستور تولید این تصاویر رو کلا غیر فعال کنید:

$ gsettings set org.gnome.desktop.thumbnailers disable-all 'true'

غیر فعال کردن Thumbnails برای یک نوع فایل

اگر مثلا نیاز به تصاویر بندانگشتی برای فایلهای pdf ندارید، میتونید با این روش این کار رو بکنید:

$ gsettings set org.gnome.desktop.thumbnailers disable "['application/pdf']"

لیست کاملی از انواع پسوند فایلها رو میتونید در این لینک پیدا کنید.

حذف تصاویر تولید شده قبلی

در نهایت یک بار هم تصاویر تولید شده قبلی رو حذف کنید تا با تنظیمات جدید تصاویر دوباره تولید بشوند/نشوند:

rm -r ~/.cache/thumbnails

غیر فعال کردن ساخت ایمیج Fallback

در لینوکس های مبتنی بر آرچ، که با mkinitcpio ایمیج های کرنل ساخته میشن، همیشه یک ایمیج fallback هم ساخته میشه. این ایمیج یک سری hookهای پیش فرضی داره که اگر ایمیج اصلی دچار مشکل شد، بشه با این ایمیج سیستم رو بوت کرد.

من که توی این چند سال هیچ وقت نشد ازش استفاده کنم. اگر پارتیشن بوت شما حجمش کمه، و یا به هر دلیلی نمیخواید این ایمیج ساخته بشه، کافیه در فایل زیر، قسمت های مربوط به ایمیج fallback رو غیر فعال کنید و عبارت 'fallback' رو از کنار 'default' بر دارید. نهایتا یه چیزی شبیه این:

/usr/share/mkinitcpio/hook.preset
# mkinitcpio preset file for the '%KERNELBASE%' package #ALL_config="/etc/mkinitcpio.conf" ALL_kver="/boot/vmlinuz-%KERNELBASE%" ALL_microcode=(/boot/*-ucode.img) PRESETS=('default') #default_config="/etc/mkinitcpio.conf" default_image="/boot/initramfs-%KERNELBASE%.img" #default_uki="/efi/EFI/Linux/manjaro-%KERNELBASE%.efi" #default_options="--splash /usr/share/systemd/bootctl/splash-manjaro.bmp" #fallback_config="/etc/mkinitcpio.conf" #fallback_image="/boot/initramfs-%KERNELBASE%-fallback.img" #fallback_uki="/efi/EFI/Linux/manjaro-%KERNELBASE%-fallback.efi" #fallback_options="-S autodetect"

و اگر بخواید در کرنل فعلی که نصب هست هم این کار رو بکنید، کافیه همین تغییر رو در فایل preset مربوط به کرنل که در مسیر /etc/mkinitcpio.d قرار داره اعمال کنید. و در انتها ایمیج مربوط به fallback رو در مسیر پارتیشن بوت خودتون هم حذف کنید.

در واقع ما با ویرایش فایل hook.preset این تغییرات رو برای آپدیت های آینده کرنل یا کرنل های جدیدی که نصب خواهیم کرد دائمی میکنیم.




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