بایگانی برچسب: s

اشتباه زدم، فاک!

سعید توی کامنتش در مطلب خداحافظ شل، سلام زیشل، یه برنامه جالب معرفی کرده: د فاک. این برنامه بامزه دقیقا همونی است که بعضی‌هامون وقتی یک تیکه از یک کامند رو اشتباه می‌زنیم می‌گیم: «د فاک/چرا اجرا نشد؟». اگر درست بعد از اون کامند بزنین fuck خودش می‌فهمه مشکل دستور قبلی است، سعی می کنه تصحیحش کنه و با یک انتر شما، اجراش کنه. مثلا:

برنامه با پایتون است و برای نصبش کافیه بزنین:

sudo -H pip install thefuck

و بعد از اولین fuck، خودش راهنمایی می کنه که چی رو باید کجا بنویسین. احتمالا یک کد کوتاه رو در bashrc. یا zshrc. و بعد اجرای دوباره bash یا zsh.

راه انداختن کلیدهای تغییر روشنایی لپ‌تاپ ایسوس ذن‌بوک روی لینوکس

روی لپ‌تاپ Zenbook UX310 ایسوس اوبونتو و فدورا رو تست کردم و همه چیز بدون هیچ مشکل کار می کنه. البته اصلا سراغ کارت گرافیکی بازی نرفته ام ولی دیفالت کار می کنه. تنها چیزی که یکضرب کار نکرد کلیدهای تغییر روشنایی بود.

برای راه انداختنشون کافیه فایل

 /etc/default/grub

رو ادیت کنیم و خط زیر رو به آخرش اضافه کنیم:

GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi="

این باعث می شه عبارتی که اضافه کرده ایم به انتهای فایل‌های تنظیمات گراب اضافه بشه. بر اساس اینکه لپ‌تاپ efi است یا بایوس لازمه که تنظیمات گراب رو دوباره ایجاد کنیم. روی لپ تاپ من که fedora داره و uefi، این دستور اینکار رو می کنه:

grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

معلومه که شما باید دستورات مرتبط با شرایط خودتون رو بزنین و توجه داشته باشین که اینکار نسبتا حساس است و اگر ندونین دارین چیکار می کنین بهتره انجامش ندین و اول یاد بگیرین که گراب چطوری کار می کنه (:

بعد از ریبوت، دگمه‌های کم و زیاد کردن نور صفحه نمایش من کار می ‌کنن.

بالاخره وقت خداحافظی از بش رسید، سلام زیشل

شل‌ها مهم هستن. اونها دستورات رو از شما می گیرن و خروجی‌ها رو به شما نشون می‌دن. معمولا سیاه هستن ولی می شه به هر رنگی درآوردشون. توی دنیا یکی از مشهورترین شل‌ها، بش است و من همیشه از Bash استفاده کردم که همه جا سازگاری حفظ بشه. شل‌های بهتر مثل ksh و غیره هم هستن ولی در نهایت بش برای من به خاطر اینکه همه جا حضور داشت، انتخاب اصلی بود. ولی دیگه نیست.

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

این شل امکان تنظیمات زیادی داره ولی تقریبا بهترینشون برای شروع در پروژه ای به اسم oh my zsh جمع شده. برای اضافه کردن زیشل به سیستم و انتخاب اون به عنوان شل خودتون باید اول zsh رو نصب کنین، مثلا با یکی از دستورات زیر:

sudo apt install zsh #debian, Ubuntu, Ming
sudo yum install zsh #fedora, centos, redhat
sudo zypper install zsh #openSuse

و بعد فعال کردنش با چیزی مثل این که البته به جای جادی، اسم یوزر خودتون رو می‌زنین.

sudo usermod -s /usr/bin/zsh jadi

تنظیمات عالی «اوه مای زیشل» رو هم می‌تونین با این یک دستور نصب کنین:

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

و به قابلیت‌های جالبی مثل اینکه در یک دایرکتوری گیت برنچ دیده بشه یا یک فلش سبز یا قرمز به شما بگه دستور قبلی درست اجرا شده یا نه دست پیدا کنین.

نکته مکی: اگر مک دارین و از OSX استفاده می‌کنین، نصب زیشل بسیار توصیه می‌شه؛ به طور خاص به خاطر قدیمی بود بش توی مک.

احتمالا بامز‌ه‌ترین کامیت به کرنل لینوکس

سه چهار روز پیش لینوس توروالدز با یک پول ریکوئست بسیار بامزه طرف شد. توی گیت هاب، پول ریکوئست یعنی یک نفر پروژه ای رو تغییر داده و از صاحب اصلی درخواست می کنه این تغییرات رو به کد اصلی اضافه کنه. توضیحات این پول ریکوئست بامزه اینه:

merge

و خب فایل‌های تغییر کرده اش هم این:

files

دوستمون با شناسه «مرد سومالیایی» عضو گیت‌هاب شده تا دو تا اسپیس اضافی رو توی فایل توضیحات کرنل حذف کنه. البته مدعی است ۴۸ سالشه و برای تامین هزینه اینترنت مجبور شده همسرش رو بفروشه و حالا علاقمند است که دولوپر خوبی بشه. در ضمن توی ویم کد می‌زنه و خواهش کرده کسی داستان زندگی اش رو کپی-پسترینو نکنه.

در چنین ماجرای بامزه‌ای هنوز توروالدز عکس العملی نشون نداده که با شناختی که ازش داریم طبیعی است. اگر شما هم دوست دارین دولوپر کرنل بشین کافیه مسائل رو زیر نظر بگیرین و شاید یک زمانی قرار شد فقط یک اسپیس حذف کنین تا فایل ها تمیز تر بشن. اگر هم دوست داشتین کار جدی تری بکنین یک شروع خوب، سی است و بعد جایی مثل اینجا.

جادی تی وی ۲۰ – لینوکس برای آدم‌های شاد: نصب پی اچ پی و مای اسکوئل و وردپرس روی سرور

در این شماره از لینوکس شاد برای آدم‌های شاد، بر می گردیم به سروری که در شماره های ۱۶، ۱۷ و ۱۸ روش سنت او اس سرور خودمون رو کمی کانفیگ کرده بودیم. در این شماره با اشتباهات زیاد و خنده دار من، مای اسکوئل و پی اچ پی رو به این سرور اضافه می کنیم تا یک وبلاگ وردپرس روی لینوکس بالا بیاریم. اشتباهات رو حذف نکردم تا ببینین که خیلی هم غیر عادی نیستن ولی مهمه که حواسمون رو بیشتر جمع کنیم (:

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

مشکل امنیتی «گاو کثیف»، هر لینوکسی که روش کس دیگه اکانت داره رو سریعا آپدیت کنین

dirty

خلاصه مدیریتی:‌ بازم من چند ساعتی از کامپیوترم فاصله گرفتم و جهان به دست نااهلان افتاد! یک مشکل امنیتی توی لینوکس‌ نشون داده شده که می‌تونه باید ارتقای دسترسی افرادی بشه که روی یک سرور اکانت دارن، به اسم مشکل امنیتی می‌گن «گاو کثیف» یا درست‌تر از اون Dirty Cow. راه حل؟ آپدیت کردن لینوکستون به طور صد در صد این مشکل رو حل می‌کنه.

اسم از کجا اومده و این باگ چه می‌کنه

اسم رسمی این مشکل امنیتی هست CVE-2016-5195 ولی از اونجایی که ماجرا مرتبط می‌شه به یک وضعیت رقابتی در شیوه هندل شدن copy on write (یا همون COW) در کرنل لینوکس، بهش گاو کثیف می‌گیم. این شرایط رقابتی باعث می‌شه یک کاربر معمولی بتونه به بخش‌هایی از حافظه که قرار بود غیرقابل نوشتن باشه دسترسی رایت پیدا کنه و در نتیجه بتونه دسترسی خودش رو افزایش بده باگ رو در باگزیلای ردهت ببینین.

آیا لینوکس من هم این مشکل رو داره

بله. تمام لینوکس‌هایی که‌ آپدیت نشده باشن این مشکل رو دارن. هر لینوکسی باید به شکل مطلق و به سرعت آپدیت بشه. در صورتی که کرنل‌های شما قدیمی‌تر از این کرنل‌ها هستن، شما هم این باگ رو دارین:

3.16.36-1+deb8u2 for Debian 8
3.2.82-1 for Debian 7
4.7.8-1 for Debian unstable
4.8.0-26.28 for Ubuntu 16.10
4.4.0-45.66 for Ubuntu 16.04 LTS
3.13.0-100.147 for Ubuntu 14.04 LTS
3.2.0-113.155 for Ubuntu 12.04 LTS

چجوری حلش کنم؟

به سادگی. در هر توزیع مرسوم لینوکس که هستین، یک آپدیت و بعد لود کردن کرنل جدید (ریبوت) میتونه شما رو در مقابل این باگ حفاظت کنه.

کی این رو کشف کرده و آیا لینوکس ناامنه؟

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

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

اینجا

و آپدیت یادتون نره!