به جای اس‌اس‌اچ از موشی استفاده کنید

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

Mosh مخفف Mobile Shell دقیقا با همین هدف نوشته شده، اینبار بجای TCP با استفاده از پروتکل UDP اتصال به سرور مقصد برقرار میشه  و اولین ویژگی که اون رو حس خواهید کرد، زنده بودن محیطه، انگار نشستید پشت مانیتور و دارید تایپ می‌کنید دستور رو، ویژگی دوم اینه که با عوض شدن آی‌پی حتی اتصال به سرور مقصد قطع نمیشه! اگرم که آی‌اس‌پی تون هعی بازیش گرفته و چراغ لینک مودم‌تون خاموش روشن می‌شه دیگه خیالتون راحته که از نو نباید به سرور مقصد وصل شید.

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

موش حاصل کار یکی از دانشجوهای دانشگاه Mit رونوشت به خودمون و دانشگاهامون که هیچ خروجی ازشون نداریم (داریم؟)

نمودار بالا هم مقایسه زمان پاسخ‌دهی در ssh و mosh رو نشون می‌ده که خب ۵ و ۱۷۳ میلی ثانیه رو مقایسه کنید با ۵۰۰ میلی ثانیه اس‌اس‌اچ! تقاوت خیلی خیلی محسوسه.

نکته ای که هست اینه که mosh برای وصل شدن در ابتدا از ssh استفاده میکنه و برای همین اگه بدون وارد کردن پسورد به سرور مقصد وصل می‌شید با mosh هم مشکلی نخواهید داشت.

نصب Mosh کار خیلی سختی نیست و احتمالا هر دیسترویی که داشته باشید اون رو درون مخازن می‌تونید گیر بیارید!

اگرم روی سرور فایروال دارید ، پورت‌های ورودی UDP بین ۶۰ هزار تا ۶۱ هزار رو باز کنید تا کلاینت بتونه به سرور وصل شه.

موش
موش

برای اتصال به سرور هم مشابه ssh باید همچین دستوری رو بزنید!

mosh root@127.0.0.1

‫پی‌نوشت: مرسی از دوست خوبم ebraminio بخاطر معرفی این برنامه خوب:ی

برندگان مسابقه چرا گنو/لینوکس را دوست دارم معرفی شدند!

بچه‌ها مسابقه‌ای رو ترتیب داده بودن که چرا گنو/لینوکس رو دوست دارید و هر کی باید یه بهترین شکل این حس رو القا می‌کرد تا شاید بتونه برنده خوشبخت یک عدد بورد رزبری‌پی بشه 🙂

پشتیبان اصلی این مسابقه طبق معمول سیتو و بهنام توکلی عزیز بود که جا داره از زحمات زیادش تشکر کنم 🙂

اما بریم سر اصل مطلب و اون معرفی نفرات برتر! که بد نیست حتما برید بهشون سر بزنید!

نفر اول نویسنده وبلاگ رایت‌وب که پستی با عنوان چون میتونم باهاش برم به اعماق رو نوشته 🙂

whyilovelinux3
whyilovelinux3

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

اما نفر دوم با تئوری بیگ بنگ پا به میدون مسابقه می‌ذاره، نویسنده بعد از کلی ژانگولر بازی به این می‌رسه که

یه روز بعد از ظهر پشت سیستم نشستید و دارید به کارهاتون میرسید که یه دفعه آخرین قسمت سریال مورد علاقتون با زیرنویس فارسی و بدون حروف عربی شروع به پخش میکنه یه چیزی مثل این:

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

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

یکی از مشکلاتی که وقت ارایه ها دارم، کنترل اسلایدهاست. نشستن پشت کامپیوتر و زدن دکمه یا انجام دادن این توسط یه نفر دیگه 🙂 روش معمولشه، ولی روش من نیست.

و اینطور می‌شه که فرود از طریق مرورگرش فایرفاکس و استفاده از شبکه وایرلس کنترل اسلایدها رو برعهده می‌گیره!

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

بذارین با یکم توضیح شروع کنم. اطلاعاتی که به لایهٔ TCP شبکه فرستاده می‌شن، تو یک غلاف جا می‌گیرن و اطلاعات لازم برای رسیدن به پروسهٔ مقصد بهشون اضافه می‌شه. بیت‌های ۱۰۰، ۱۰۱ و ۱۰۲ (اگر شماره رو اشتباه نگفته باشم) رزرو شده هستن و صفر در اون‌ها قرار می‌گیره. تو دانشگاه یک بار بحث پیش اومد که از این بیت‌ها می‌شه استفاده‌های مختلفی کرد. به عنوان مثال این بیت‌ها می‌تونن شمارهٔ کلید رمز‌نگاری/رمز‌گشایی بسته‌ای باشن که توی یک سازمان تعریف شده؛ بسته‌هایی که روی شبکه قرار می‌گیرن، بر اساس مقصد رمز‌نگاری خاصی داشته باشن. از طرفی روند عادی شبکه نباید تغییر کنه و به عنوان مثال مدیر که به همهٔ کلید‌ها دسترسی داره باز هم باید بتونه بسته‌های عادی خودش رو به شبکه (مثل اینترنت، با بیت‌های رزرو شدهٔ صفر) ارسال کنه. از نظر فنی، سیستم‌عامل وظیفهٔ بسته بندی اطلاعات رو بر عهده داره پس ایجاد این روند برای یک سازمان نیاز به تغییر سیستم‌عامل و البته بازنویسی یا تغییر کد اون قسمت از سیستم‌عامله.

عنوان پنجمی بخاطر امتیازای برابر به دو نفر از بچه‌ها رسید.

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

همین باعث می‌شه در دنیایی که ریشه‌ دارم برگ بدم و جوونه بزنم !یه روزی بهار من هم فرا می‌رسه شکوفه می زنم و میوه می‌دم :دی If you know what I mean

  من گنو/لینوکس رو دوست دارم چون کلی دلیل برا دوست داشتنش دارم و خوشحالم که این بازی بازنده نداره . برگ برنده در دست‌های من و ماست :)

اما عنوان پنجمی دیگه به وبلاگ hypermit رسیده. نویسنده این وبلاگ در ابتدا به صورت خلاصه به دلایل دوست داشتن گنو/لینوکس اشاره می‌کنه.

  • تنوع زیاد و آزادی در انتخاب
  • مشکل از کمبود اطلاعات شماست
    اگر کاری رو نمی تونید انجام بدید اشکال از کمی اطلاعات شماست.
  • هیچ چیز رو از صفر شروع نمی کنید
  • بهترین مکان برای گیک ها

و بعد خیلی خوب می‌ره سراغ مثالای عینی و اینکه چطور گنو/لینوکس بهش کمک می‌کنه تو انجام کارهای مختلف.

  • دانلود شبانه رایگان
  • یادآوری
  • کنترل اتفاقات سرور و ارسال sms برای تمامی ادمین ها
    اگر سرور لینوکسی داشته باشید و چندتا ادمین، و سرور هم مهم باشه خیلی ساده می تونید روی سرور اسکریپت بنویسید که چیزهایی که روی سرور مهم هست رو چک کنه و اگر اتفاقی بحرانی افتاد توی یک فایل تکست یک جایی که بشه دانلودش کرد بریزه. و با گوشی n900 یک اسکریپت ساده دیگه بنویسید که اون فایل رو مثلا ۱۵ دقیقه یکبار چک کنه و اگر چیز غیر عادی داخلش بود اون اتفاق رو برای تمامی ادمین های sms کنه.

    • گوشی n900 و جاسوسی
    • کنترل دمای کامپیوتر و فن
    • اجرای موزیک از طریق ترمینال

اما غیر از نفرات اول تا پنجم مطالب خیلی خوب دیگه‌ای هم وجود داشت که درسته رتبه‌ای کسب نکردن اما حقیقتا ارزش وقت گذاشتن بیشتر رو دارن 🙂

دانشجوی دانشگاه امیرکبیر که از خاطره خودش توی این دانشگاه گفته با عنوان چه جوری کل پهنای باند ممکن رو نوش جان کنید!

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

که واقعا نکات خیلی آموزنده و صد البته کاربردی رو این پست داره 🙂

** برای دیدن مطالب بقیه شرکت کننده ها به اینجا مراجعه کنید

سیستم عامل لینوکس را مستقیما از طریق اینترنت نصب کنید

آقا سیستم عامل دیدید داره بوت می‌شه؟ سی‌دی ویندوز رو که  می‌ذارین، برای بار اول وقتی نصب شدا، بعد اون ریست آخر سیستم بوت میشه و می‌یاد بالا! یا وقتی دیسک لایو می‌ذارین و سیستم عامل خوشگل لینوکس رو می‌بینین بدون اینکه نصب کنیدش سیستم بوت میشه!  حالا هکرای کرنل اومدن  یه چیزی ساختن که شما بتونید از طریق اینترنت توزیع خودتون رو نصب کنید و اون رو اصطلاحا بوت کنید.  بدون اینکه سی‌دی یا دی‌وی‌دی داشته باشید. ابزار کار اینترنت هست با یه برنامه فوق کم حجم که حتی می‌تونید روی فلاپی دیسکت رایتش بزنید! قضیه از این قراره که آقایون و دانشمندای boot.kernel.org که ما به اختصار می‌گیم BKO ابزاری رو ساختن به اسم  gPXE که حجمی معادل ۲۲۱ کیلو داره و شما باید اون رو بگیرید. اون رو با توجه به دستورالعملی که داره روی سی‌دی یا فلش یا روی فلاپی دیسکت بگذارید طوری که اولین بار بعد روشن شدن، کامپیوتر پاش رو تو پوتین این gPXE کنه! حالا فک کنین از طریق اینترنت می‌شه چه توزیع‌هایی رو نصب کرد؟ دبیان، اوبونتو ۹٫۰۴، فدورا ۱۱، ناپدری پارسیکس  و یکی از کوچکترین توزیع‌ها یعنی DSL!

دیگه اینکه من با دیدن این عکس واقعا نمی‌دونم چرا تو زبون فارسی به بوت، چکمه و پوتین نمی‌گیم؟! خوب چشه!؟ واقعا همین معنی رو می‌ده!

آقا! تو رو خدا کف پای سیستم بیچاره رو تو چکمه ویندوز نکنید:)))

دیگه اینکه خیال نصب لینوکس رو با دایال آپ ایران نداشته باشید!‌ نه اینکه سرعت زیاده! نه! چون اصلا از این طریق نمی‌شه:)) شما در نظر بگیرید مودمی رو که توی خود اوبونتو با نصبش مشکل دارن، حالا شما چطوری می‌خواین اون رو به یه برنامه ۲۲۱ کیلویی بشناسونین!؟{{:))))}} اما در عوض ای‌دی‌اس‌ال فک کنم جواب بده.

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

و نکته آخر اینکه یه سایت به اسم netboot.me نیز وجود داره که مشابه همین کار رو انجام می‌ده و یه خورده سر انتخاب توزیع شما تنوع بیشتری دارید. اپن سوزه، اوبونتو ۹٫۱۰! فری‌بی‌اس‌دی با چند تا لینوکس کوچولو موچولو انتخابای بیشتر شماست! در عوض این سایت روی سرورای نازنین گوگل میزبانی می‌شه که بر روی ایران بسته هست! من فقط نمی‌دونم آیا خود توزیع هم که از اینترنت گرفته می‌شه روی سرور گوگل هست که اگر باشه کارمون زاره:))

Netboot.me logo

منبع: اینجا و اینجا

۲۰ ابزار مانیتورینگ سیستم لینوکس که هر مدیر سیستمی باید با آن آشنا باشد

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

۱- top — میزان فعالیت یک پروسه

برنامه top ابزاری است برای نشان دادن وضعیت پروسه های فعال به صورت آنی و پویا. به صورت پیشفرض لیست برنامه هایی که بیشترین میزان مصرف cpu را دارند نشان داده می‌شود. این لیست هر ۵ ثانیه به روز میشود.

Fig.01: Linux top command

برای اجرا شدن برنامه در ترمینال دستور top را  در ترمینال وارد کنید. در هنگام فعال بودن برنامه شما می توانید از کلیدهای زیر استفاده کنید.

کلیدهای مهم در هنگام استفاده از برنامه top

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

Tasks: 180 total,   ۲ running, 178 sleeping,   ۰ stopped,   ۰ zombie

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

Mem:   ۳۹۹۳۱۸۰k total,  ۳۹۶۳۸۵۲k used,    ۲۹۳۲۸k free,   ۳۱۷۶۷۶k buffers
Swap:   ۸۱۱۲۰۸k total,     ۳۵۳۲k used,   ۸۰۷۶۷۶k free,  ۲۳۸۷۵۵۶k cached

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

f وارد محیطی می شوید که قادر هستید برنامه top رو تنظیم و پیکربندی کنید. اینکه چه ستون هایی در برنامه top به شما نشان داده بشه، از این قسمت قابل کنترل هست (ستون های نمایش داده شده در برنامه کنارشون یک علامت ستاره قرار دارد). همینطور مخفف تمام ستون‌ها در اینجا نمایش داده می‌شود. برای خارج شدن  از Esc استفاده کنید.

k برای کشتن یک برنامه از این حرف استفاده کنید. بعد از وارد کردن این حرف باید آی دی پروسه ای که قصد نابود کردنش را دارید وارد کنید.

z برای روشن و خاموش کردن رنگ

q برای خارج شدن از برنامه از این حرف استفاده کنید.

اطلاعات بیشتر

۲- vmstat — بررسی فعالیت سیستم، سخت افزار و اطلاعات سیستم

فرمان vmstat اطلاعات در مورد پروسه‌ها، حافظه، صفحه بندی،‌ بلوک IO و فعالیت cpu را گزارش می‌دهد.

vmstat 3

خروجی نمونه:

vmstat3

نمایش استفاده از حافظه Slabinfo

vmstat -m

دریافت اطلاعات در مورد فعال یا غیرفعال بودن حافظه صفحات

vmstat -a

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

vmstat -d

اطلاعات بیشتر

۳- w– پیدا کردن اینکه چه کسی به سیستم متصل است و چه کاری انجام داده است؟

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

w username

w enghezi

خروجی نمونه:

w-enghezi

۴- uptime– چه مدت سیستم در حال کار است؟

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

uptime

خروجی:

uptime

عدد یک برای متوسط بار به عنوان مقدار بار مطلوب در نظر گرفته شود. این عدد برای سیستم با سیستم فرق می‌کند. برای سیستم تک هسته‌ای این عدد از یک تا سه و برای پردازشگر با قابلیت SMP این عدد ۶ تا ۱۰است.

۵- ps — نمایش پروسه‌ها

دستور ps پروسه های جاری را به صورت ثابت و یک عکس به ما نشان می دهد. بر خلاف دستور top که این عمل را به صورت پویا نشان می‌داد. برای نشان دادن همه پروسه‌ها ما از آرگومان A و یا e استفاده می‌کنیم.

ps -A

نمونه خروجی:

ps-A

ps مشابه دستور top است با این تفاوت که می تواند اطلاعات بیشتری را به ما نشان دهد.

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

ps -Al

نمونه خروجی:

ps-Al

برای روشن کردن حالت فول و کامل (در این حالت آدرس دقیق پروسه‌ای که در حال اجراست نمایش داده می‌شود)

ps -AlF

نمونه خروجی:

ps-AlF

برای نمایش Treads ( منظور همان LWP و NLWP)

ps -AlFH

نمونه خروجی:

ps-AlFH

نمایش Treads بعد از انجام پردازش‌ها

ps -AlLm

نمونه خروجی:

ps-AlLm

نسخه قابل چاپ همه پروسه‌ها بر روی سرور

ps ax

نمونه خروجی:

ps ax

ps axu

نمونه خروجی:

ps aux

نسخه قابل چاپ پروسه به صورت سلسله مراتبی(درختی)

ps -ejH

نمونه خروجی:

ps -ejH

ps axjf

نمونه خروجی:

ps axjf

pstree

نمونه خروجی:

pstree

نسخه قابل چاپ امنیتی

ps -eo euser,ruser,suser,fuser,f,comm,label

نمونه خروجی:

ps -eo euser,ruser,suser,fuser,f,comm,label

ps axZ

نمونه خروجی:

ps axZ

ps -eM

مشاهده تمام پروسه‌هایی که متعلق به کاربر enghezi می‌باشد

ps -U enghezi -u enghezi u

تنظیم خروجی در یک قالب تعریف شده توسط کاربر

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -eopid,tt,user,fname,tmout,f,wchan

نمایش شماره پروسه‌ برنامه (در اینجا می‌خواهیم شماره پروسه برنامه فایرفاکس را پیدا کنیم)

ps -C firefox -o pid=

یا

pgrep firefox

یا

pgrep -u enghezi firefox

نمایش نام پروسه‌ای که آی‌دی اون ۴۴۳۹ باشد. (خروجی اسم برنامه رو می‌ده)

ps -p 4439 -o comm=

نمایش ۱۰ پروسه‌ای که بیشترین میزان مصرف حافظه رو دارند

ps -auxf | sort -nr -k 4 | head -10

نمایش ۱۰ پروسه‌ای که بیشترین میزان مصرف پردازشگر رو دارند

ps -auxf | sort -nr -k 3 | head -10

۶- free — میزان استفاده  از حافظه

این دستور میزان کل، آزاد و اشغال شده حافظه اصلی و مجازی (سوپ) رو به ما نشون می‌ده. همچنین می‌توانیم میزان بافری رو که توسط کرنل اشغال شده رو ببینیم.

نمونه خروجی:

free

اطلاعات بیشتر: یک و دو و سه

۷- iostat —  متوسط بار پردازشگر و فعالیت دیسک

دستور iostat آمار مربوط به پردازشگر و آمار مربوط به خواندن و نوشتن ابزاری همچون پارتیشن و NFS را به ما نشان می‌هد.

نمونه خروجی:

iostat

اطلاعات بیشتر

۸- sar– جمع آوری و گزارش فعالیت سیستم

فرمان sar برای جمع آوری، گزارش و ذخیره اطلاعات مربوط به سیستم مورد استفاده قرار می‌گیرد. (دو دستور زیر رو سیستم من اجرا نشد!)

sar -n DEV | more
sar -n DEV -f /var/log/sa/sa24 | more

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

sar 4 5

خروجی نمونه:

sar45

اطلاعات بیشتر

۹- mpstat–  پردازشگرهای چند هسته‌ای

این دستور وضعیت هر پردازشگر رو (هر یک از هسته های پردازشگر رو جدا جدا) به ما گزارش می‌ده. و کاربرد اون در پردازشگرهای چند هسته‌ای هست.

mpstat -P ALL

دستور اول وضعیت هر ۴ هسته رو برای یک بار به ما گزارش می ده. اما دستور دوم برای هر هسته ۵ بار وضعیت رو چک می کنه و برای هر هسته ۵ گزارش به ما برنامه می‌ده. فاصله گزارش گیری ها ۲ ثانیه هست. این دستور تقریبا مشابه دستور sar می باشد.

mpstat -P ALL 2 5

اطلاعات بیشتر

۱۰- pmap — پردازش حافظه استفاده شده در سیستم

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

به عنوان مثال آی‌دی پروسه‌ای به شماره ۴۷۳۹۴ را در نظر بگیرید.

pmap -d PID

خروجی نمونه:

pmap-d

خط آخر خروجی این دستور بسیار مهمه.
mapped: مقدار کل حافظه که به برنامه اختصاص داده شده
writeable/private: مقدار فضای آدرس‌های خصوصی
shared: مقدار فضای آدرس این پروسه که با دیگر برنامه ها مشترک است

اطلاعات بیشتر

۱۱ و ۱۲ – netstat و ss — آمار شبکه

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

اطلاعات بیشتر برای دستور ss و netstat

۱۳- iptraf– آمار مربوط به شبکه

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

  • آمار ترافیک شبکه توسط اتصال TCP
  • آمارترافیک IP   توسط رابط شبکه
  • آمار ترافیک شبکه توسط پروتکل
  • آمار ترافیک شبکه توسط TCP / پورت UDP و اندازه بسته
  • آمار ترافیک شبکه از طریق آدرس Layer2

Fig.02: General interface statistics: IP traffic statistics by network interface

Fig.03 Network traffic statistics by TCP connection

۱۴- tcpdump — جزئیات تحلیل ترافیک شبکه

یک دستور ساده که می‌توان پی به میزان ترافیک روی شبکه برد. با این وجود شما برای استفاده از این برنامه نیاز به داشتن آگاهی در مورد چگونگی کارکرد TCP/IP دارید. برای مثال برای نشان دادن اطلاعات مربوط به ترافیک DNS از دستور زیر استفاده میکنیم.

tcpdump -i eth1 ‘udp port 53’

برای نمایش دادن همه بسته‌هایی که از پورت ۸۰ (HTTP) و IP نسخه چهار هستند کار زیر را می‌کنیم. باید کاری کنیم که فقط بسته‌هایی که حاوی فقط اطلاعات و بسته ACKاست نشان داده شود نه برای مثال بسته‌های SYN و FIN.

tcpdump ‘tcp port 80 and (((ip[2:2] – ((ip[0]&0xf)<<2)) – ((tcp[12]&0xf0)>>2)) != 0)’

برای نشان دادن همه نشست‌های FTP به ۲۰۲٫۵۴٫۱٫۵ از دستور زیر استفاده کنید.

tcpdump -i eth1 ‘dst 202.54.1.5 and (port 21 or 20’

برای نمایش همه نشست‌های HTTP به ۱۹۲٫۱۶۸٫۱٫۵ از دستور زیر سود می‌جوییم.

tcpdump -ni eth0 ‘dst 192.168.1.5 and tcp and port http’

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

tcpdump -n -i eth1 -s 0 -w output.txt src or dst port 80

۱۵- strace — صدا زدن سیستم

برای اشکال زدایی وب سرور و پیدا کردن عیوب بسیار کار گشاست! اما چون خودم هیچی از این دستور نفهمیدم، شما رو مستقیم به چگونگی کارکرد این دستور ارجاع می‌دم 🙂

۱۶- فایل سیستم proc — آماری  از کرنل

فایل‌های درون فولدر proc (در آدرس روت) حاوی اطلاعات دقیق در مورد دستگاه‌های سخت افزاری مختلف و سایر اطلاعات هسته لینوکس است. به عنوان مثال موارد زیر رو در نظر بگیرید.

cat /proc/cpuinfo
cat /proc/meminfo
cat /proc/zoneinfo
cat /proc/mounts

اطلاعات بیشتر

۱۷- Nagios– مایتورینگ سرور و شبکه

Nagios یکی از محبوب ترین برنامه‌های مانیتورینگ شبکه و سیستم کامپیوتری می‌باشد. شما به آسانی می‌توانید بر تمام میزبان‌ها، تجهیزات شبکه و سرویس‌ها نظارت کنید. برنامه هنگامی که به مشکلی برخورد به شما پیغام هشدار می فرستد و همچنین زمانی که اوضاع رو به راه شد، باز هم یک هشدار می‌دهد. حالا یه برنامه به اسم فن ساخته شده که تمام کارا رو برای راه اندازی این Nagios اتومات می‌کنه (Fully Automated Nagios). این برنامه سعی کرده همه برنامه‌هایی که توسط جامعه nAgios ساخته شده رو فراهم کنه. تمام این ابزار همه در یک فایل ایزو به حجم یک سی‌دی قابل دریافت هست.

۱۸- Cacti– ابزار مانیتورینگ مبتنی بر وب

برای چگونگی نصب و تنظیم و استفاده از این ابزار کافیست به اینجا نگاهی بیندازید.

۱۹- کی‌دی‌ای سیستم گارد– گزارش دهی و نموادار فعلی سیستم

KSysguard ابزاری قوی برای مانیتورینگ در محیط کی‌دی‌ای می‌باشد.

Fig.05 KDE System Guard

اطلاعات بیشتر

۲۰- گنوم سیستم مانیتور– گزارش دهی به همراه ترسیم نمودار از وضعیت موجود سیستم

Fig.06 The Gnome System Monitor application

و ابزارهای اضافی دیگر

Nmap: اسکن در سرور شما برای پیدا کردن پورت‌های باز
Lsof: لیست پرونده‌های باز، و اتصالات شبکه
Ntop: ابزاری مبتنی بر وب مشابه دستور top . وضعیت شبکه رو با این دستور به خوبی می‌توان مشاهده کرد.
Conky: ابزار قدرتمند دیگری برای مانیتورینگ سیستم در محیط X
GkreIIM: ابزاری خوب برای مانیتورینگ پردازشگر، رم، هارد، شبکه و چیزای زیاد دیگه
Vnstat: یک کنسول مبتنی بر وب برای مانیتورینگ شبکه هست.
Htop: ورژن بهبود یافته دستور top هست که پروسس‌ها رو به صورت درختی می‌تونه نشون بده.
Mtr: برنامه‌ای که کار چند تا برنامه مثل پینگ و تریس روتر رو همگی با هم یه جا می‌تونه انجام بده.

منبع

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

جناب آقای وزیر، اینترنت ، پرتقال و هندوانه نیست !!

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

در استرالیا برای کاربران خانگی ۱۳ مگابیت پهنای باند وجود دارد اما در اینجا برای موسسات ما ۲ مگابیت است .

بحث تکنولوژی است که برای خانه ها سیم مسی است . این تکنولوژی ۲ مگابیت اسمی است و در عمل اتفاق نخواهد افتاد ! ممکن است ۳۰۰ – ۴۰۰ کیلو شود . بستگی به فاصله خانه تا مرکز تلفن دارد . اگر این فاصله ۵۰۰ – ۶۰۰ متر باشد شاید به دو مگابیت برسد . اگر فاصله بیشتر شد ، ۲ -۳ کیلومتر ، به ۳۰۰ – ۴۰۰ کیلو هم نخواهد رسید !

پی نوشت : جناب آقای وزیر، اینترنت ، پرتقال و هندوانه  نیست که می گویید سرعت آن ۳۰۰ – ۴۰۰ کیلو است !!