روزنوشت های محمد فروغی

بیشتر مطالب مرتبط با لینوکس و هک (به معنای خوبش) و کار های گیکی
شاید هم قدری مطالب فلسفی ;)

emacs + slime cheat sheet

فروغی محمد | 18 September, 2018 10:28

Run slime (from emacs): M-x slime

Open a file: C-c C-f

Compile: C-c C-k

Switch between windows: C-x o

Close current windows: C-x 0

Help of a symbol: C-c C-d d

Help of a symbol (online): C-c C-d h

 

westworld

فروغی محمد | 01 August, 2018 20:46

ww_maze
 
شاید اکثر شما با سریال وست‌ورلد آشنا باشید. در این پست و پست های بعدی (یحتمل سری پست های بعدی) می خوام به تبین (بله درست خواندید: تبیین و نه نقد) سریال وست‌ورلد بپردازم. سریالی که غیر از یک سری نکات ریز کامپیوتری خیلی جای نقد نداره.
 
قبل از هر چیز لازمه گریزی بزنم به مطلبی که تحت عنوان نقد سریال دنیای غرب در شماره دوم نشریه جرس (نشریه انجمن علمی فلسفه دانشگاه فردوسی مشهد) چاپ شده است.
 
نقدی بر نقد
 
اول از همه باید بیان کنم که بنده با این گونه ترجمه کردن عبارات مخالفم، بعضی سریال ها و فیلم ها به قدری معروف و مشهور شده اند که نیازی به ترجمه نیست، مثلا چرا باید بگوییم بازی تاج و تخت؟ یا دنیای غرب؟ از آن بدتر ترجمه عبارات و اصطلاحات عموما تخصصی سریال است، من هنوز هم وقتی از بخت بد نسخه دوبله شده یا با زیرنویس فارسی سریال وست ورلد را می بینم مدام سردرگم می شود: میزبان؟! میزبان یعنی چی دیگه؟ لفظ میزبان در ادبیات ما بار معنایی خاصی دارد ولی عبارت host در دنیای کامپیوتر پیشینه ای به قدمت اینترنت دارد، چرا نباید بگوییم هاست؟ از آن بدتر عبارات دیگری است که ترجمه شده، گهواره؟! آخه گهواره؟! بگذریم…

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

نکته ای که لازم است قبل از تماشای این سریال به آن توجه داشت این است که این سریال شدیدا آمیخته است با مفاهیم کامپیوتری و برنامه نویسی و هوش مصنوعی و همچنین مفاهیم فلسفه ذهن و علوم شناختی. دوست ما که با اصطلاحات این علوم آشنا نیست به سادگی به خطا رفته و عبارت معروف و تکراری «Bring yourself back online» را که معمولا مخاطب آن دلوریس است را به «بیدار شو» ترجمه می کند و گمان می کند که مقصودش این است که از خواب غفلت بیدار شو و خودت را بشناس! در حالی که در اصطلاح کامپیوتر این فقط یک معنی ساده دارد: فرد به روبات مورد نظر فرمان صوتی می دهد که خودت را روشن کن، خیلی ساده می توانست به جای فرمان صوتی دکمه روشن (اگر چنین چیزی وجود داشت!) آن روبات را فشار دهد. بله قبول داریم که در طول فصل اول سریال دلوریس با حل maze سعی دارد که به مرکز آن که خودآگاهی است دست بیابد ولی این قضیه اصلا و ابدا هیچ ربطی به عبارتی که به غلط «بیدارشو» ترجمه شده است ندارد.

نگارنده در شماره دوم نشریه جرس به غلط گمان کرده است که خودشناسی که برای guest ها (که ترجمه شده است به میهمان ها) به سبب حضور در پارک حاصل می شود، همان بازگشت به خویشتن است! خیر هیچ ربطی به این موضوع ندارد. این خود شناسی مقصودش چیزی دیگر است: مایی که در دنیای وقعی نمی توانیم میل جنسی خود یا میل خود برای ابراز خشونت  را رها کنیم (قانون نمی گذارد چنین کاری بکنیم)، ولی درپارک می توانیم این کار را بدون هیچ حدی و بدون هیچ نگرانی انجام دهی. خوب طبیعی است که اگر فردی مدت طولانی (روزها و یا هفته ها) در پارک باشد و کاملا یقین پیدا کند که اعمالش هیچ پیامدی ندارد، آن گاه است که خود واقعی خود را بروز می دهد، خودی که تا قبل از این در قید آداب و رسوم و قوانین بود، حالا به راحتی می تواند قتل یا تجاوز انجام دهد. خودشناسی به این معنی است نه چیزی که در شماره ۲ نشریه جرس بیان شد و بار و معنی فلسفی و الهیاتی دارد.

دوست ما حتی سریال را درست ندیده است (به گمان بنده حتی یک بار هم ندیده) و گمان می کند که دلوریس بعد ۳۰ سال ارنورد را ملاقات می کند! در حالی که سیر روایت داستان در سریال خیلی تودرتو و پیچیده است و انسان را به اشتباه می اندازد. دلورس یک بار (در ۳۰ سال پیش) maze را تا انتها می رود و به خودآگاهی می رسد، سپس طی یک سری ماجرا ها آرنولد را می کشد. غلط فاحش دیگری که در نقد ایشان است این است که گفته اند آرنولد گمان کرده خودآگاهی در روبات ها بروز نخواهد کرد در حالی که امر کاملا برعکس است، آرنولد به فورد میگوید که دلوریس به خودآگاهی رسیده و نباید پارک افتتاح شود. سایر موارد مثل دو خالق (خالق خوب و بد) و اهورامزدا (آخه اهورامزدا؟! گودرز چه ربطی به شقایق دارد؟!) نتیجه همین گمان غلط است. در ادامه دوست ما به تناسخ، مثل افلاطون (یحتمل مقصود ایشان غار افلاطون بوده نه مثل افلاطون!) و آزمایش ذهنی مخ در خمره تنها اشاره اجمالی کرده و اصلا ربط آن را به داستان بیان نمی کند.

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


تبیین ۱۵ دقیقه اول اپیزود اول فصل اول

 

در خصوص تیتراژ سریال باید چند نکته بیان شود: یکی اینکه تقریبا همه چیز دنیای پارک با پرینتر سه بعدی در حال چاپ شدن است و این استعاره ایست از این که همه چیز دنیای هاست ها را ما ساخته ایم. نکته دوم پیانو است که از روی نت خودکاری می نوازد و این حس را منتقل می کند که همه چیز از قبل برنامه ریزی شده و تکراری است. و نکته سوم این است که در تیتراژ فصل اول دو هاست مشغول انجام کار خاک‌برسری هستند ولی در تیتراژ فصل دوم یکی از آنها با بچه ای در آغوش نشان داده می شود! شاید بتوان گفت که نطفه ای که در فصل اول بسته شده (داستان طولانی به خودآگاهی رسیدن هاست ها و حل ماز) در فصل دوم متولد می شود ولی نوزاد است (شورش و به دست گرفتن کنترل خود و رسیدن به آزادی (البته هنوز زود است بگوییم که به آزادی رسیده اند)) که به نوزادی می ماند که تا پایان فصل دو رشد می کند و نهایتا در پایان فصل دوم با خروج دلوریس - شارلوت از پارک مرحله نوزادی را هم پشت سر می گذارد. لذا انتظار داریم در تیتراژ فصل سوم نوزاد بزرگ شود و مادر خود را بکشد!

 

شرح چند اصطلاح کامپیوتری

 

هاست‌(host): بعضا ترجمه می شود به میزبان. در ادبیات کامپیوتری به معنی سیستمی است که پذیرای تقاضا های دیگران است. در سریال مقصود روبات هایی است که ساخته شده اند تا گست ها (میهمانان) هر (دقیقا هر) بلایی خواستند سر آنها بیاورند و لذت ببرند.

گست (guest): یا میهمان. انسان های واقعی که وارد پارک می شوند و از روبات ها استفاده (سوء استفاده؟!) می کنند.

کد منبع یا سورس کد (source code): در برنامه نویسی به فایلی متنی گفته می شود که برنامه اجرایی از روی آن ساخته می شود. اینجا مقصود متن همان برنامه سازنده روبات ها است که با تغییر آن رفتارهای روبات ها هم عوض می شود.

بیلد (build): مقصود از بیلد تبدیل کردن سورس کد به کد قابل اجرا است. اینجا مقصود از بیلد های مختلف چیزی تقریبا معادل نسخه های مختلف یک نرم افزار است.

واحد کنترل (control unit) همان شیء گرد داخل مغز روبات ها که ظاهرا حکم سی پی یو + حافظه را دارد. یعنی قدرت پردازشی روبات ها بعلاوه خاطراتشان.

مجازی سازی (virtualization): به فرایندی گفته می شود که طی آن توسط یک سیستم کامپیوتری سیستمی دیگر تماما شبیه سازی می شود. مثال سرراست آن اجرای یک ویندوز درون ویندوز دیگر (و نه به طور مستقل و کنار آن) است. یا اجرای یک سیستم عامل کاملا متفاوت (مثلا مک او اس) درون ویندوز. در این سریال بیشتر مقصود چیزی است شبیه آنچه در سه گانه ماتریکس اتفاق افتاد که ایده قدیمی آن چیزی شبیه غار افلاطون است و اینده مدرن آن مخ در خمره. برای بیان بیشتر مطلب لازم است اشاره کنم که هر هاست دو قسمت عمده دارد: سخت افزارش یا همان بدن و جسمش و نرم افزارش که در سریال با نام واحد کنترل (حافظه+پردازش) از آن یاد می شود. حال فرض کنید به جای اینکه نرم افزار یک هاست سوار بر سخت افزارش (جسدش) بشود، درون یک کامپیوتر بسیار قوی اجرا شود. این نرم افزار همراه با (در کنار) نرم افزار بقیه هاست ها اجرا می شود، دنیایی مشابه پارک ولی درون کامپیوتر. ممکن است هاست در این دنیا هم تیر بخورد و بمیرد ولی بدنی در کار نیست...

 
 
craddle: دوستان این عبارت را ترجمه کرده اند گهواره. بعد از بیان مطلب بالا در خصوص مجازی سازی خیلی ساده می توان گفت که گهواره همان محیط شبیه سازی روبات ها (هاست ها) است.
 
forge: فورج پروژه بلند پروازانه شرکت دلوس است که می خواهد مغز انسان ها را انجا آپلود (بارگذاری) کند و به آنها عمر جاودانه دهد. از لحاظ فنی کردل و فورج یک چیز هستند و تفاوت آنها فقط در نوع داده (اطلاعات) ای است که درونشان قرار دارد. در کردل مغز هاست ها (روبات ها) بارگذاری شده و آنجا به صورت مجازی اجرا می شوند (زندگی می کنند) ولی در فورج قرار است مغز انسان ها (آگاهی انسان ها) باگذاری و اجرا شود و با این روش عمر جاودانه پیدا کنند.
 
narrative: یا خط داستان یا سیر داستان یا خیلی ساده قصه! به داستانی گفته می شود که روبات (هاست) بنا است اجرا کند (اگر عاملی خارجی (معمولا گست: میهمان) باعث خروج هاست از خط داستانی اش نشود) که معمولا عامل خارجی باعث انحراف هاست از خط تعریف شده داستانی اش می شود. مثلا در خصوص دلوریس قرار است که قوطی کنسور (شاید هم کمپوت) از دستش بیافتاد و توسط تد به او داده شود و ادامه ماجرای عاشقانه و نهایتا مواجه شدن با صحنه قتل پدر و مادرش در شب. ولی خوب گاهی یک میزبان توجش به زیبایی دلورس جذب می شود و داستان تغییر می کند. در واقع خطوط داستانی + امکان عدول از داستان از پیش تعریف شده اولیت گام برای نزدیک شدن به اراده آزاد (free will) برای روبات ها است. درست است که داستان زندگی آنها از پیش مشخص شده است ولی باز هم می توانند تغییرات جزئی در آن بدهند.
 
core drives: شخصیت یک روبات با کور درایو او مشخص می شود. کور درایو هر کدام چیزی است: یکی حفظ اصول اخلاقی، یکی لذت بردن از زندگی به هر قیمتی، یکی پیدا کردن گنج، دیگری حفظ امنیت دخترش دلورس و ... جالب است که انسانها هم قدری در این زمینه شبیه روبات ها هستند، ما هرکدام خصوصیات ذاتی ای یا اصول اولیه ای داریم که عموما از آنها عدول نمی کنیم. در روانشناسی به این اصول تحت عنوان قالب های کلی که از والد به ارث برده شده است اشاره می شود. مثلا در کودکی پدر ما عقیده داشته که هیچ وقت نباید آخر شب ظرف کثیف در آشپزخانه باشد و ما این را به عنوان یک قانون (ارزش) پذیرفته ایم و در بزرگسالی هرگز از آن عدول نمی کنیم. ولی شخص دیگری به دلیل شرایط متفاوت دوران کودکی اشت این را ارزش نمی داند و ارزش های متفاوتی دارد.
 
پاسخ های از پیش تعیین شده: عبارت انگلیسی را الان به خاطر نمی آورم! ولی این پاسخ ها توسط همان شخصی تهیه شده است که وظیفه نوشتن داستان (خط داستانی) را به عهده دارد. مثلا دلوریس راجع به زیبایی طبیعت می گوید و کلمنتاین در خصوص امور خاک برسری!
 
بداهه گویی: عدول از پاسخ های از پیش تعیین شده و بیان مطالبی که از قبل برنامه ریزی نشده است. معمولا این امر با پردازش اطلاعات جدید حاصل می شود.
 
 قسمت های آغازین قسمت اول فصل اول
 
شخصی در حال بازجویی (پرس) از دلورس اس. هدف این سوالات: بررسی کند که آیا دلورس به خودآگاهی رسیده است یا نه. همانطور که بعدا در سریال مشخص می شود آرنولد دریافته بود که روبات ها بعد از مدتی به آگاهی می رسند (فعلا کار به درست و غلط این گزاره نداریم و داریم روایت سریال را بیان می کنیم) و رسیدن آنها به آگاهی به معنی زنده بودنشان است و نباید پارک افتتاح گردد. لذا بعد از اینکه نتوانست رابرت را قانع کند که پارک را فتتاح نکند، یک تصمیم رادیکال گرفت: خودش را توسط دلورس کشت و بقیه روبات ها را هم توسط دلورس قتل عام کرد با این امید که پارک افتتاح نشود. ولی دکتر فورد (رابرت) توانست علیرغم این مانع ایجاد شده پارک را افتتاح کند. دلیل این پرسش و پاسخ های گاه و بیگاه این است که بعد از ۳۰ سال از واقعه قتل عام دکتر فورد کم کم دارد به این نتیجه می رسد که حق با آرنورد بوده است و روبات ها گاه و بیگاه به آگاهی (خودآگاهی) دست می یابند و این سوال ها برای این طراحی شده که اگر روباتی به خودآگاهی رسید او را از چرخه تفریحات پارک خارج کنند (در زیر زمین بازنشسته اش کنند)
 
غرض دیگر این سوال ها این است که بررسی شود آیا حافظه روبات تماما پاک شده است یا نه (خوب این یکی از موارد نقد کامپیوتری است که این سریال، به راحتی می شود حافظه را wipe کرد که قابل بازگشت هم نباشد، بگذریم...)

اساسی ترین سوال این است: تا به حال در خصوص هویت خودت شک کرده ای؟ جالب اینجاست که مرد سیاه پوش در سکانسی در آخر فصل ۲ سریال (بعد از قتل ناخواسته دختر خودش) به واقعیت خودش شک کرده و سعی می کند بررسی کند که آیا خودش یک هاست است یا یک گست و دلورس (وایت) با نیشخند به او می گوید: می بینم که ماهیت خود را زیر سوال برده ای (شک کرده ای). بگذریم. غرض این سوال دقیقا این است که متوجه شویم آیا این هاست در آستانه خودآگاهی (که لازمه آن شک کردن در واقعیت خودش است) قرار دارد یا نه.
 
سوالات بعدی این هاست: راجع به دنیای خودت چه فکری می کنی؟ راجع به تازه وارد ها (هاست ها میهمانان یا همان گست ها را با این نام می شناسند) چه فکر می کنی؟ آیا تا به حال ناسازگاری یا تناقضی یا تکراری در دنیای خودت دیده ای؟

دنیایی که چیزی جز تکرار داستان های از پیش نوشته شده (با انحرافات جزئی از داستان) نیست.
 
ادامه دارد...
 
 

دایره‌المعارف فلسفی استنفورد (نسخه کیندل)

فروغی محمد | 01 July, 2018 08:01

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

 

حجم متن دانلود شده این دایره‌المعارف ۲۹۵ مگابایت است و حجم نسخه تبدیل شده اش ۱۲۹ مگابایت که از این لینک قابل دریافت است.

 

 

تبدیل یک وب سایت به فرمت آمازون کیندل

فروغی محمد | 27 June, 2018 19:58

داستان از اینجا شروع شد که برای یک پروژه لازم بود کتاب Introduction to Information Retrieval نوشته Christopher D. Manning را بخوانم. این کتاب به صورت رایگان و الکترونیکی منتشر شده است. کتاب را از اینجا دانلود کردم و ریختم روی کیندل ولی نسخه پی دی اف را به سختی می شود خواند. تصمیم گرفتم نسخه بهتری پیدا کنم که تنها چیزی که یافتم نسخه HTML کتاب بود در این آدرس

 

بعد از کمی جستجو (متاسفانه فعلا در گوگل ولی حتما در آینده راهنمایی برای استفاده از سرویس داک داک گو و اینکه چرا گوگل یک شرکت خبیثه خواهم نوشت) روش کار را پیدا کردم، روش کار خیلی ساده است، اول لازم است کل کتاب را دانلود کنید:

 

wget -r -np -nc -k -c https://nlp.stanford.edu/IR-book/html/htmledition/irbook.html 

 
سپس به راحتی با ابزار calibre تبدیل را انجام دهید:
 
cd   nlp.stanford.edu/IR-book/html/htmledition 
ebook-convert  irbook.html  irbook.azw3
 
منبع 


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

زخم ها دیر خوب می شوند ولی خوب می شوند

فروغی محمد | 15 March, 2018 09:49

ناخن
 
 اگر روی تصویر فوق کلیک کنید و به ناخن دقیق نگاه کنید می بینید که زخمی کهنه در حال التیام است. این زخم حدود ۵ ماه است که به خاطر سهل انگاری در هنگام کار با وسایل بدن سازی ایجاد شده و بعید می دانم زودتر از ۶ ماه آینده کاملا محو شود. البته مشخص است که دیگر درد ندارد ولی آثار زخم هنوز وجود دارد. امروز صبح با دیدن این زخم نکاتی به ذهنم رسید که دوست دارم به اشتراک بگذارم:
 
۱. زخم ها معمولا در شروع درد فراوان دارند.
۲. درد بعد از مدتی خوب می شود.
۳. آثار زخم ممکن است سالها و حتی یک عمر با شما باشد.
۴. این که نوشتم «زخم ها»، مطلق نوشتم و قصدم تنها زخم جسم نبود.
۵. شخصی را می شناسم که ۱۷ سال پیش زخم برداشته بود و امسال بعد از ۱۷ سال احساس بهبودی می کرد.
۶. نشانه بهبودی بعضی زخم ها این است که محو شوند و دیگر اثر و خاطره ای از آنها نباشد.
۷. دم عید است، کوته فکری است اگر بپنداریم که زخمی که زده ایم با یک عذرخوای آخر سال التیام می یابد.
۸. ممکن است زخم دیگر درد اولیه را نداشته باشد، حتی ممکن است روابط شما با فردی که زخم زده به حالت عادی برگردد و صحبت های عادی هم داشته باشید، ولی زخم هنوز آنجاست...
 
 

نکته مفیدی برای تبدیل کتاب ها به فرمت کیندل

فروغی محمد | 19 November, 2017 08:56

مدتهاست که از کیندل برای کتاب خواندن استفاده می کنم و واقعا راضی ام. کتاب ها را بهتر است به فرمت خود کیندل تبدیل کنیم تا راحت تر بتوان خواند. مشکلی که با کتاب های تبدیل شده داشتم این بود که نرم افزار تبدیل (calibre) بین پاراگراف ها enter یا همان newline اضافه می ساخت. حقیقتش این بود که مدتها تنبلی می کردم که سرچ کنم و مساله را حل کنم. بالاخره امروز بر تنبلی خود فائق آمدم و پاسخ مشکل خود را در پستی در سایت ردیت یافتم. از آنجا که فیلترچی دانا (!) ردیت را هم فیلتر کرده است متن مورد نظر را اینجا می گذارم:
 

You're not actually getting a line break every two lines, you're getting a line break after every line (basically, every line gets turned into its own paragraph) - it's just that at your preferred font size the new "paragraphs" don't fit horizontally on a single line.

This is very common when converting from PDF sources.

To fix this the right way, do this:

  • Open the conversion dialog as usual
  • Select the desired output format as usual
  • On the left, click on the "Heuristic Processing" category
  • Check "Enable heuristic processing" to enable the rest of the controls on the page
  • Then (and this is what will actually fix this) check "Unwrap lines". Hold your mouse over the checkbox to read the help text in a popup. Please note that this isn't 100% accurate due to the nature of PDFs, there will still be lines where the problem manifests itself, but much, much fewer. Optionally adjust the line unwrap factor right underneath (explanation follows).
  • Check or uncheck any other options on that page - they control different things, not paragraph unwrapping.
  • Convert and check the results. Retry with different unwrapping factors is not satisfactory.
 
البته راه حل فوق برای ویندوزی ها است. امثال بنده که لینوکس استفاده می کنیم می توانیم از پارامتر خط فرمان زیر استفاده کنیم
 
 --enable-heuristics
 
مثلا:
 
 ebook-convert Hypercomputation\:\ computing\ more\ than\ the\ Turing\ machine.pdf Hypercomputation.mobi  --enable-heuristics
 
ایدکم اللهCool
 
 

خاطره ای از استاد دکتر شاهرودی

فروغی محمد | 08 November, 2017 16:12

 

سال ۸۸ بود و من تازه دانشجوی ارشد فلسفه شده بودم، سر کلاس دکتر شاهرودی بودیم، ایشون هر کار می کرد تصویر کامپیوتر روی پروژکتور نمی افتاد، یه همکلاسی داشتم که می دونست من لیسانس کامپیوتر خوندم خیلی هم رو‌ من حساب می کرد، با صدای رسا به دکتر شاهرودی گفت: اقای مهندس فروغی می تونند درستش کنند.

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

بعد پنج دقیقه که کاملا ضایع شدم دکتر شاهرودی گفت: حالا شما بفرمایید بشینید، یه مهندس دیگه هست بگیم بیاد درستش کنه...

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

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

روش صحیح اخراج یک کارمند

فروغی محمد | 07 March, 2017 16:46

اصل مطلب را در اینجا ببینید:
 
لینک
 
 

Linux Performance Tools

فروغی محمد | 18 October, 2016 14:11

برای مشاهده تصویر در اندازه واقعی کلیک کنید

 

 Linux Performance Tools

 

ریبوت زورکی از طریق اس اس اچ

فروغی محمد | 24 September, 2016 08:12

گاهی پیش میاد که به سرور دسترسی اس اس اچ دارید ولی هیچ مدله نمی تونید ریبوتش کنید. وقتی دسترسی فیزیکی دارید می تونید کارهای مختلفی بکنید: برق رو بکشید، کلید ریست رو بزنید، یا اینکه از شرتکات alt+print screen+b استفاده کنید.
 
از طریق اس اس اچ می تونید با این دوتا دستور سرور را درجا ریبوت کنید:
 
 
echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

emacs cheat sheet

فروغی محمد | 01 August, 2016 09:26

Master doc: http://www.gnu.org/software/emacs/tour/

exit: C-x C-c
rum emacs in terminal mode (no X): emacs -nw
quit from a command: C-g
gdb: M-x gdb
diff: M-x ediff
dir browsing: M-x dired
    switch to dir edit mode:  C-x C-q
news/rss/email: M-x gnus
tetris: M-x tetris
tutorial: C-h t
shell command: M-!
switch between widnows: C-x o
switch to previous buffer: C-x b

forward one word: M-f
back one word: M-b
previous sentence: M-a
next sentence: M-e
beginning of buffer: M-<
end of buffer: M->
jump to specific line: M-g g
search forward: C-s
search backward: C-r

mark: C-SPC
note: some command set mark for you automatically: yank, kill, search, ...
swap point and mark: C-x C-x
cycle through mark ring: C-u C-SPC

As you can see, Emacs tries to be helpful: many commands that have the potential to take you long distances set mark so that a simple C-x C-x takes you back to where you were.

start highlight: C-SPC
select all: C-x h
select current paragraph: M-h
copy higlighted section: ESC w
kill to end of line: C-k
kill to end of sentence: M-k
kill 10 lines: C-u 10 C-k
kill next word: M-d
kill to end of sentence: M-k
kill region ( "cut" ): C-w
note: there is a kill ring too, so it is so difficult to lose data ;)
save region to kill ring without deleting ( "copy" ): M-w
yank: C-y
replace yanked text with previously killed text: M-y

Narrow buffer to the current region: C-x n n
Restore ( "widen" ) buffer: C-x n w

Narrowing restricts the view (and editing) of a buffer to a certain region. Then commands like incremental search, or beginning-of-buffer or end-of-buffer don't lead you out of the region of interest, and commands like search and replacement don't affect the entire file.

Undo: there are 3 commands for undo:
C-/
C-_
C-x u

After any consecutive sequence of undos, Emacs makes all your previous actions undoable, including the undos. (This will happen whenever a sequence of undos is broken by any other command.)

If this sounds complicated, just remember that "undo" is always capable of getting you back to any previous state your buffer was in (unless Emacs has run out of memory to store the undo history). The principle here is that Emacs makes it very difficult to accidentally lose your work.

code autocompletion: M-/
code autodocumentation: M-;

برج سلمان در آتش سوخت!

فروغی محمد | 11 July, 2016 07:04

برج سلملن در حال سوختن دیروز عصر بنا داشتم بیشتر بمانم و پروژه ناتمامی که دستم بود را به سر و سامان برسانم، خصوصا این که مدیر عامل هم تاکید کرده بود که این کار خیلی فورس است و باید سریعتر جمع شود.
 
حدود ساعت شش بود که علی آمد پیش من و گفت: نمیای بریم خونه؟ منم گفتم بذار یکم دیگه روی پروژه کار کنم. تا حدود شش و نیم شرکت موندیم (طبقه یازده). کم کم راه افتادیم. موقعی که بیرون میامدیم همه چیز عادی بود و هیچ خبری هم نبود.
 
حدود ساعت هشت شب بود، رسیده بودم منزل و در حال استراحت بودم که یکی از بچه از طریق تلگرام به من اطلاع داد که برج داره می سوزه!
 
خوشبختانه از همکاران شرکت فقط یک نفر توی ساختمان مونده بود که اون هم موفق شد خودش ونجات بده.  در تصویر می بینید که یه چراغ روشنه. اون چراغ شرکت در طبقه یازده است که همکار ما توش بوده و خبر نداشته برج داره می سوزه!!! خوشبختانه بچه ها بهش زنگ می زنن و موفق میشه خودشو نجاب بده.

میانبرهای tmux

فروغی محمد | 02 May, 2016 11:22

 

  مقدمه

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

 

۱. نیاز به محیط گرافیکی kde و کتابخانه های qt داشت که برای من که کاربر gnome و بعدها کاربر xfce بودم اصلا خوب نبود

۲. برای سویچ کردن بین تقسیمات صفحه مجبور بودم از موس استفاده کنم و استفاده از موس = جدا شدن دست از کیبورد و این امر = فاجعه

 

لذا تصمیم گرفتم جایگزین مناسبی برای آن پیدا کنم و بعد از جستجو به این ترکیب عالی رسیدم:

 

guake+tmux

 

Tmux Cheat Sheet


window commands

Ctrl-b c            new window
Ctrl-b n            next window
Ctrl-b p            prev window
Ctrl-b w           cycle windows
Ctrl-b 0            switch to window #0

pane commands

Ctrl-b "               split pane horizontally
Ctrl-b %             split pane vertically
Ctrl-b o              next pane
Ctrl-b ;               prior pane
Ctrl-b ←↑→↓     jump to pane
Ctrl-b Ctrl-o      swap panes
Ctrl-b space      arrange panes
Ctrl-b-←↑→↓     change pane size
Ctrl-b !               pop a pane into a new window

scrolling and copy/paste

Ctrl-b [            enter scroll mode
Esc                  exit scroll mode
Ctrl-space       begin highlighting
Alt-w                copy
Ctrl-b ]            paste

session control

tmux ls                   list
Ctrl-b d                  detach
tmux attach           attach
tmux attach           attach
tmux attach -t 2    attach to session 2

source

 

 
Accessible and Valid XHTML 1.0 Strict and CSS
Converted to use with ITS. Powered by FUMblog