لینوکس و من

۱۹ مطلب با کلمه‌ی کلیدی «دبیان» ثبت شده است

پاسکال در لینوکس

پاسکال یک زبان برنامه نویسیه. یادش بخیر. دبیرستان که بودیم یه چیزایی بهمون گفته بودن... حالا موضوعی پیش اومد و لازم بود که پاسکال  رو  در لینوکس داشته باشیم. با نصب پکیج fpc که نزدیک ۴۰ مگابایت دانلود میشه، پاسکال در لینوکس (در اینجا دبیان (پارسیکس)) نصب میشه. و با دستور fp در ترمینال وارد محیط پاسکال میشید.
یادتون باشه پنجره ی ترمینال رو بعد از باز شدن maximize نکنید. چون بعد از اینکه برنامه ای که نوشتید run شد، موقع برگشتن به محیط پاسکال نوشته ها چپرچلاغ (!) میشن. 

پخش فایل های mov در دبیان

خب... vlc قاعدتا باید بتونه mov رو پخش کنه. اما ممکنه نکنه! میریم سراغ mplayer. اگر mplayer مثل آدم فایل شما رو باز کرد که کرد، اما اگر نکرد، فایلی به اسم config رو که در مسیر /home/username-shoma/.mplayer/ وجود داره بازش کنید و این سه تا خط رو بهش اضافه کنید:

[extension.mov]
demuxer=mov
vo=xv

اگر باز هم نشد، بجای xv بذارید x11 
این راه برای من روی پارسیکس جواب داد. :)

چت صوتی و تصویری با جیمیل

برای اینکه امکان چت صوتی و تصویری در جیمیل رو داشته باشیم، چه لینوکس چه ویندوز چه مک، باید پلاگین مخصوصش رو از گوگل دانلود کنیم. از اونجایی که ما در ایران به سر میبریم، امکان دانلود این پلاگین رو نداریم. من نسخه ی ۳۲ بیتی مخصوص دبیان رو دانلود کردم و براتون میذارم. میتونید از این نسخه در پارسیکس هم استفاده کنید. (برای اوبونتو نمیدونم، تست نکردم) دانلود فایل

bluetooth در دبیان ها

غمگین بودم چرا پارسیکس بلوتوث لپتاپم رو نمیشناسه. تا اینکه این ویکی رو پیدا کردم.

نکته ی قابل توجه اینه که اول باید در تنظیمات مادربرد bluetooth رو enable کنید! البته بعضی موارد ظاهرا نیاز به این کار هم نیست.

از اون ویکی با اجرای دستور hcitool dev متوجه شدم که هیچ deviceی فعال نیست. و با اجرای دستور sudo /etc/init.d/bluetooth restart بلوتوث فعال شد و تونستم با گوشیم pair بشم. و خیلی خوش حالم الان!

touchpad در ۱۲۱۵n در پارسیکس

نتبوک ۱۲۱۵n دارای touchpad های synaptics هست. در اوبونتو قابلیت مولتی تاچ فعال بود و میتونستم با tap دو انگشتی، right click کنم. اما در پارسیکس این مولتی تاچ وجود نداره. و برای اینکه بتونین از این قابلیت استفاده کنین باید فایل کانفیگ تاچ پد رو یخورده ویرایش کنین. این فایل در سیستم من از این طریق آماده ویرایش میشه:

sudo gedit /usr/share/X11/xorg.conf.d/50-synaptics.conf

این فایل رو چطوری پیدا کنین؟ برید توی پکیج منیجر، و synaptic  رو سرچ کنید. پکیج xserver-xorg-input-synaptics رو پیدا کنید. و روش right click کنید و properties و بعد installed files. در این جا معلوم میشه فایل تنظیمات کجاست.

وقتی این فایل رو باز کردید این آپشن ها رو قبل از endsection بهش اضافه کنید و save کنید. و بعد ری استارت…

Option          "MinSpeed"              "0.5"
Option          "MaxSpeed"              "1.0"
Option          "AccelFactor"           "0.1"
Option          "TapButton1"            "1"
Option          "TapButton2"            "2"    # multitouch
Option          "TapButton3"            "3"     # multitouch
Option          "VertTwoFingerScroll"   "1"     # multitouch
Option          "HorizTwoFingerScroll"  "1"     # multitouch
Option          "VertEdgeScroll"        "1"
Option          "CoastingSpeed"         "1"
Option          "CornerCoasting"        "1"
Option          "EdgeMotionUseAlways"   "1"
Option          "LBCornerButton"        "8"     # browser "back" btn
Option          "RBCornerButton"        "9"     # browser "forward" btn
Option          "EmulateTwoFingerMinZ"  "35"
Option          "EmulateTwoFingerMinW"  "8"

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

نکته: این تغییرات فقط برای تاچ پد های synaptics هست. نه برای بقیه انواع.

اس ام اس و حتی تماس با دبیان!

شاید این موضوع برای کسایی مثل جادی جالب تر باشه. دعوتش میکنم یه نگاهی به این موضوع بندازه. البته این پستم کامل نیست و فقط پله ی اول کنجکاوی من درمورد برطرف کردن یک نیازه!

حتما مودم های gprs رو دیدید؟ سیمکارت توش قرار میگیره و میتونید باهاش به اینترنت وصل شید. و اس ام اس بگیرید و بفرستید. اما این به راحتی با نرم افزاری که اون شرکت برای ویندوز طراحی کرده امکان پذیره. ولی لینوکس چی پس؟!

برای وصل شدن به اینترنت با این مودم ها در لینوکس نیاز به چیز خاصی ندارید. از همون network manager applet یه کانکشن mobile boradband بسازید و توش اگه iran رو بیارید همراه اول و ایرانسل رو توی لیستش داره. راحت انتخاب میکنید و بعد کانکت میشید.

اما اگه بخواید اس ام اس بفرستید چی؟! چند تا نرم افزار وجود دره که ظاهرا gnokii از اینها سر  تره! gnokii و xgnokii رو از طریق apt-get install نصب کنید. مودم و سیمکارت رو وصل کنید. حواستون باشه به اینترنت وصل نباشید. در ترمینال این دستور رو وارد کنید: gnokii –identify اگه مودم شما رو شناخته باشه اطلاعاتش رو نشونتون میده.

حالا xgnokii رو اجرا کنید و یک اس ام اس به یه شماره دیگه ارسال کنید. برای من اس ام اس ارسال شد و من در گوشیم دریافتش کردم. اون رو reply کردم تا ببینم چه اتفاقی میفته؟ deliver شد اما در کامپیوتر چیزی نیومد… متوصل شدم به terminal . با این دستور اس ام اسی که دریافت کرده بودم رو دیدم: gnokii –getsms ME 1 end

خیلی هیجان انگیزه! میتونید بهش بفهمونید که اگه مثلا ایمیلی با موضوع دلخواه شما براتون اومد، به شما اس ام اس زده بشه و اطلاع بده!!! اگه بشه روش کار کنیم تا یکم کار باهاش راحت تر شه و درست حسابی تر، فکر میکنم خیلی جالب باشه. مثلا وقتی به اینترنتش وصل میشید دیگه اس ام اس ها کار نمی کنند. اطلاعات لازم و تکمیلی رو از اینجا و اینجا بگیرید.

کنولوژی Optimus کارت گرافیک های nvidia و لینوکس

خب… نتبوک ۱۲۱۵n از تکنولوژی optimus کارتهای گرافیک nvidia استفاده میکنه. این تکنولوژی این امکان رو برامون ایجاد میکنه که کارت گرافیک در حالت هایی که نیازی بهش نیست، خاموش بشه و سیستم فقط با گرافیک های اینتل خود مادربرد کار کنه. این باعث میشه که طول باتری خیلی زیادتر بشه و سیستم هم بیخودی داغ نکنه.

در ویندوز به خاطر اینکه حالا هر چی، این درایور ها آماده اند و کاربر نیازی به سر و کله زدن نداره. و درایورها اتوماتیک بین کارت گرافیک ها سوییچ میشن. اما در لینوکس این درایور ها آماده نیستند و باید یکم تلاش کنیم تا بتونیم از این تکنولوژی استفاده کنیم. یه پروژه ای به نام bumblebee با تلفظ ˈbʌmblbiː در این لینک به ما در این امر کمک میکنه. اما اتوماتیک نمیتونه سوییچ کنه. باید هر وقت خودمون خواستیم یه کار خفن بکنیم، کارت گرافیک nvidia رو روشن کنیم. خب… اگر کاربر اوبونتو هستید، خیلی راحت :

sudo apt-add-repository ppa:mj-casalogic/bumblebee

sudo apt-get update

و بعد بسته های bumblebee , bumblebee ui رو نصب کنید. خودش هر چی لازم باشه دانلود و نصب میکنه. اما در باره توزیع های دیگه من جمله دبیان، در لینکی که در بالا قرار دادم راهنمایی کرده. در حین نصب bumblebee خودش تنظیماتی رو میاره و شما طبق مدل نتبوکتون اون رو پیدا میکنید و یکی از اون ها رو انتخاب میکنید. و خودش قدم به قدم میگه که چه کار کنید. من الان متاسفانه یادم نیست دقیقا بگم. ساده است ولی.

حالا باید از لود شدن درایور های کدباز nvidia که nouveau نام دارند جلوگیری کنیم:

sudo gedit /etc/modprobe.d/blacklist.conf

و عبارت blacklist  nouveau رو به آخرش اضافه کنید و یه بار ریبوت کنید.

اگر تنظیمات رو درست انجام دادید، حالا کارت گرافیک nvidia شما باید خاموش شده باشه. و شما تفاوت رو در صدای فن دستگاه و همچنین طول زمان باتری به طور محسوس خواهید دید. دستور acpi رو وارد کنید تا زمان باتری رو بهتون نشون بده. برنامه bumblebee ui که در منو ها هم اومده، این امکان رو میده که بصورت گرافیکی هر وقت که خواستید nvidia رو روشن کنید.

و اما پارسیکس…! چون پارسیکس عزیز از دبیان هست، بنابراین میریم سراغ debumblebee که باید سورس برنامه رو بگیریم و از روی سورس اون رو نصب کنیم. خب این کار رو کردم ولی متاسفانه در میانه ی راه با خطاهای زیادی روبرو شدم . اول شما این بسته رو نصب کنید. بعد این ها رو از طریق synaptic پیدا و نصب کنید. nvidia-kernel-common , nvidia-kernel,dkms.


یکمی کار پیچیده میشه. قرار نیست از bumblebee استفاده کنیم! چون من در لینوکس کار گرافیکی عجیبی انجام نمیدم، و همین اینتل برام کافیه، تصمیم گرفتم کلا nvidia رو به قولی از مدار خارج کنم. دو تا اسکریپت پیدا کردم که کارت رو روشن و خاموش میکنه. و یه اسکریپت هم وضعیت کارت رو بهمون میگه. بنابراین حالا با دو سه تا دستور، میتونم کارت رو به دلخواه خودم روشن خاموش کنم. چه خوب! از این سایت مدل دستگاهتون رو پیدا کنید! و یه جا نگهش دارید…

حالا این فایل برای خاموش کردن، این فایل برای روشن کردن و این فایل برای اعلام وضعیت رو هم دانلود کنید. فایل خاموش کردن رو با یه ویرایشگر متن باز کنید و خطی که اینو داره پیداش کنید: _SB.PCI0.P0P4.GFX0._DSM  همون طور که میبینید این یه عبارت ویژه است.  (مخصوص ۱۲۱۵n) از توی همون سایتی که گفتم یه جا نگهش دارید عبارت های ویژه ی مدل خودتون رو پیدا کنید و جایگزین این بکنید. و همین طور برای روشن کردن.

حالا با اجرای مثلا disablecard در ترمینال، کارت nvidia بعد از دو سه ثانیه خاموش میشه و شما قشنگ متوجهش میشید. و اگر acpi بگیرید میبینید که باتری در حالت فول شارژ از ۳ ساعت و نیم به ۴:۴۵ میرسه. و این فوق العاده است…

حالا شما برای اینکه این خاموش شدن در هر باری که سیستم بوت میشه اتفاق بیفته باید اون رو به crontab بسپارید! راه ساده و گرافیکیش استفاده از برنامه gnome-schedule هست. این اسکریپت رو مثلا در /usr/bin قرار بدید و با دستور sudo در هنگام بوت برای اجرا شدن تنظیمش کنید. (من کاربر خودم رو مجوز بدون پسورد برای sudo دادم).

خب… با اجرای اسکریپت nvidiastatus هم وضعیت روشن/خاموش بودن کارت بهتون گفته میشه. برای راحتی کار این اسکریپت ها رو در /usr/bin قرار بدید تا با یه دستور ساده sudo disablecard کارت خاموش و با sudo enablecard روشن بشه. و با nvidiastatus وضعیت اعلام بشه.

من گذاشتم به طور پیشفرض خاموش باشه. چون بهش نیاز ندارم. این اسکریپت ها و روش ها منبع مشخصی نداشتند که بخوام ذکر کنم. در اینترنت بصورت تکه تکه وجود دارند.

cpu scaling و دبیان

اگه cpu دستگاه شما قابلیت کار کردن در فرکانس های مختلفی رو داشته باشه، میتونید از این برای کم کردن مصرف برق و باتری استفاده کنید. اگر یک لینوکس دبیانی مثل اوبونتو یا پارسیکس یا خود دبیان رو ریخته باشید، یا مثل آدم cpu شما رو میشناسه یا اینکه باید بهش بفهمونیم!

اول برای اینکه بفهمیم cpu شناخته شده یا نع، از این دستور استفاده میکنیم:

cpufreq-info

اگر اطلاعاتی بهتون داد که معلوم میشه فهمیده. و میتونید با اضافه کردن یک applet به پنل گنوم فرکانس های cpu رو تغییر بدید.

اما اگه دیدید نفهمیده، این بسته ها رو نصب کنید:

sudo apt-get install cpufrequtils sysfsutils

حالا مدل cpu خودتون رو از این طریق بدست بیارید:

cat /proc/cpuinfo | grep “model name”

خب. حالا که فهمیدیم مدل cpu چیه، طبق اون باید درایور رو در کرنل load کنیم. باید با دستور sudo modprobe درایور مورد نظر رو لود کنیم. این لیست درایور ها برای cpu های مختلف:

AMD K6 processors : powernow_k6
AMD K7 processors (Athlon, Duron, Sempron 32 bits) : powernow_k7
AMD K8 processors (Athlon 64, Turion 64, Sempron 64, Opteron 64) : powernow_k8

Pentium 4, Celeron D, Pentium D, Celeron M : p4_clockmod
Pentium M, Core Duo, Core 2 Duo : speedstep_centrino

generic driver : acpi_cpufreq اگر نمیدونید مدل شما چیه از این استفاده کنید.

پس این دستور رو میزنیم. برای من p4_clockmod هست:

sudo modprobe p4_clockmod

حالا اگه cpufreq-info بگیریم قشنگ میگه cpu ما چه فرکانسی الان داره و …

برای دائمی کردن این تنظیم، این دستور رو اجرا میکنیم تا ماژول cpu ما در کرنل قرار بگیره و موقع بوت هم لود بشه:

echo p4_clockmod | sudo tee -a /etc/modules

همین!

البته برای اینکه governor های مختلف رو برای cpu فعال کنید به این جا مراجعه کنید تا توضیحات بیشتری ببینید.

sudo در پارسیکس

نمیدونم چرا توسعه دهندگان پارسیکس از sudo مثل سایر توازیع (!) مثل اوبنتو استفاده نمی کنن. خیلی کار ها رو راحت تر میکنه خب! برای اینکه کاربر مورد نظرتون رو بهش اجازه بدید از sudo استفاده کنه، در ترمینال پارسیکس تایپ کنید su و بعد که پسوردتون رو زدید این رو اجرا کنید:
 
sudo visudo
 
حالا زیر خط root    ALL=(ALL) ALL اضافه کنید:
 
usernamEshoma    ALL=(ALL) ALL
 
حالا میتونید save کنید. اما برای اینکه در اجرای sudo از شما پسورد خواسته نشه، این خط رو هم باید اضافه کنید:
 
usernamEshoma    ALL = NOPASSWD: ALL
 
که این از نظر امنیتی (!) میتونه خطر ناک باشه. اما واسه من که خطری نداره. برای اعمال این تغییر یک restart لازم است.