<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Hal_9000</title>
        <link>https://virgool.io/feed/@hal9000</link>
        <description></description>
        <language>fa</language>
        <pubDate>2026-06-17 04:56:39</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/52550/avatar/avatar.png?height=120&amp;width=120</url>
            <title>Hal_9000</title>
            <link>https://virgool.io/@hal9000</link>
        </image>

                    <item>
                <title>زود تند سریع یه backup  لینوکسی بگیریم</title>
                <link>https://virgool.io/@hal9000/%D8%B2%D9%88%D8%AF-%D8%AA%D9%86%D8%AF-%D8%B3%D8%B1%DB%8C%D8%B9-%DB%8C%D9%87-backup-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3%DB%8C-%D8%A8%DA%AF%DB%8C%D8%B1%DB%8C%D9%85-mp0altqhirn0</link>
                <description>البته منظورم از زود تند سریع مراحل کار هست وَاِلّا بدیهی که Backup اونم از کل سیستم مخصوصا بار اول زود تند سریع نمیشه!خب دستور های مثل dd یا dc3dd یا حتی کپی کردن فایل های مهم تو هارد دیگه یا حتی سرویس ابری از راه حل هایی هست که اکثرمون وقتی فایلامون مهم میشن ازشون استفاده میکنیم.اما و اما !اگر بعد از یکبار backup گرفتن از سیستم  بخوایم دوباره از کل اون سیستم backup بگیریم؛ backup قبلی رو پاک میکنیم و جدیده رو جایگزین می کنیم ؟! backup جدید رو روی یه دیسک دیگه نگه میداریم ؟! یا میشینیم دونه دونه فایل هارو بررسی میکنیم ببینیم کدومشون تغییر کردن فقط اونارو جایگزین کنیم ؟!  راه حل اول و دوم ایراداتی داره : چون دوباره باید کل اطلاعات سیستم از نو نوشته بشه (حالا یا جایگزین backup قبلی بشه یا یه جای جدید ذخیره بشه) زمان خیلی زیادی میبره، هیچ کس دوست نداره سیستمش مدت طولانی اشغال باشه. اگر مرتباً به این روش back up گرفته بشه  به علت Read &amp; write بالا خیلی زود هارد مستهلک میشه وقتی زمان پشتیبانگیری طولانی میشه در حین عملیات backup کلی فایل اضافه یا کم میشه یا حتی تغییر میکنه که این اتفاق backup رو فاقد اعتبار میکنه.تو حالتی که تعداد فایل ها زیاد باشن عملا راه حل سوم هم کارایی نداره. پس از RSYNC استفاده میکنیم کار این دستور این که یک مبداء و یک مقصد بهش میدیم . مقصد  رو با مبداء مقایسه میکنه هر چی اضافه یا کم داشته باشه رو تو مقصد تغییر میده . backup گرفتم  به این روش اولین بار با کپی فایل معمولی هیچ فرقی نداره چون  تو مقصد هیچی نیست و کل مبداء رو تو مقصد کپی میکنه.اما برای بار دوم که از کل سیستم backup میگیرم با این روش فقط اون قسمت هایی که تغییر کردن رو کپی یا حذف میکنه (برای حذف کردن باید تعیین کنیم براش به صورت پیشفرض اینکارو نمیکنه).و نکته جذاب این برنامه اینه که خیلی خیلی سریع اینکارو میکنه. من بار اول که از کل فایل های سیستمیم backup گرفتم کل حجمی که کپی کرد ۱۲۷ گیگ شد که شامل کل دایرکتوری های bin/  و lib/ و lib64/ و var/ بود که همونطور که میدونید این دایرکتوری های پر از فایل های ریز ریز هستن. بار دوم تمام این فایل هارو تو ۴۱ ثانیه چک کرد و ۸۴ مگ که اضافه شده بود رو به مقصد اضافه کرد که غالبا log file بودن . طبیعی اگر فایل حجیمی اضافه شده باشه به سیستم، زمان این پشتیبان گیری به نسبت حجم فایل های جدید بیشتر میشه.سریع بودن این عملیات و زمان کمی که لازم داره باعث میشه هم backup ما معتبر باشه هم طول عمر دیسک ها بالاتر بره.پایان کار اولین backup از کل سیستم با rsyn یک مزیت دیگه ی این برنامه اینه که میتونید بهش بگید یه سری آدرس هارو نادیده بگیره.خب این به چه درد میخوره؟ یه سری از دایرکتوری ها نیازی به backup گرفتن ندارن چون تو هر بار boot شدن سیستم، محتواشون به کلی عوض میشه مثلا دایرکتوری proc/ که پروسس ها رو نگه میداره با tmp/ که فایل های موقتی رو نگهداری میشه ویا حتی cach های  سیستم و برنامه ها.خب بریم سراغ دستور :شکل دستور اینطوری که: اول rsync رو مینویسیم.دوم آرگومان های کوتاه رو اضافه میکنیم که اینجا من زدم aArXv که جلوتر توضیح میدم هرکدوم چی هست.سوم آرگومان های بلند مثل delete - - و exclude - -  چهارم  آدرس مبداء که من زدم */ یعنی کل سیستم.پنجم آدرس مقصد که من زدم media/hal900/backup/ که آدرس هارد اکسترنالم هست.rsync -aArXv --delete --exclude={&amp;quot/home/hal9000/.cache/*&amp;quot,&amp;quot/home/hal9000/.mozilla/*&amp;quot,
&amp;quot/dev/*&amp;quot,&amp;quot/media/*&amp;quot,&amp;quot/proc/*&amp;quot,&amp;quot/run/&amp;quot,&amp;quot/mnt/*&amp;quot,&amp;quot/tmp/*&amp;quot,&amp;quot/sys/*&amp;quot,&amp;quot/lost+found/*&amp;quot} /* /media/hal9000/backup/دستور بالا رو مستقیم میتونید کپی پیست کنید البته با تغییر مقصد.خب rsync که مشخص بود بریم سراغ توضیح آرگومان های کوتاه :a : آرشیو میکنه یا به بیان ساده تر یه کپی برمیداره دقیقا کاری که ما میخوایم انجام بده v : با این پارامتر تمام کارهایی که انجام میشه رو صفحه نمایش داده میشه همونطور که میدونید در حین عمل کپی مواردی مثل زمان ایجاد فایل، مالک فایل و دسترسی های اون تغییر میکنه آرگومان های زیر هر از این قبیل تغییرات جلوگیری میکنن.A : ها ACL حفظ   o : حفظ مالک فایل X : حفظ اتریبیوت های فایل مثل دسترسی ها و بیت چسبناک و غیرهg : حفظ گروه فایلt : حفظ زمان ایجاد فایل   حالا بریم سراغ آرگومان های بلند،مثل همه دستورات دیگه قبل از آرگومان دوتا دَش یا خط فاصله بدون فاصله میاد ولی اینجا من مجبور شدم فاصله اش بدم که دیده بشه. آرگومان delete - - مشخص میکنه اگر فایلی  در مبداء پاک شد موقع backup، از مقصد هم پاک بشه. و exclude - - که در ادامه مسیر هایی رو داخل {}= اضافه کردیم بهش رو نادیده میگیره یعنی ازشون بکاپ نمیگیره، انگار اصلا وجود ندارن.مسیر هایی که بهش میدیم باید داخل دابل کوتیشن باشن و با کاما از هم جدا بشه اینطوری: {&amp;quotمسیر اول&amp;quot,&amp;quot مسیر دوم&amp;quot}=و بعد از اسم دایرکتوری حتما */ بزنید مثل */proc/ که تمام فایل های داخلش هم نادیده بگیره.مسیر هایی که لازم نادیده گرفته بشن اینا هستن :dev - media - proc - run - mnt - tmp - sys - lost+found - و cach خود سیستم و برنامه هایی که اطلاعات زیادی رو cach میکنن مثل مرورگر وب:{&amp;quot/home/hal9000/.cache/*&amp;quot,&amp;quot/home/hal9000/.mozilla/*&amp;quot} در کل خیلی ساده بود ،اگر از یک هارد اکسترنال مشخص استفاده میکنید میتونید برای راحتی بیشتر، کل دستور رو alias کنید و با هر بار تایپ یک کلمه راحت backup تون رو بگیری.alias backup=&amp;quotکل دستور رو بذارید اینجا&amp;quotبدرد خودم که خیلی خورد، امیدوارم شما هم استفاده کنید.</description>
                <category>Hal_9000</category>
                <author>Hal_9000</author>
                <pubDate>Thu, 29 Aug 2019 00:16:33 +0430</pubDate>
            </item>
                    <item>
                <title>چجوری درلینوکس اطلاعات فلش یا هارد رو جوری پاک کنیم که قابل بازیابی نباشه</title>
                <link>https://virgool.io/@hal9000/%DA%86%D8%AC%D9%88%D8%B1%DB%8C-%D8%AF%D8%B1%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D9%81%D9%84%D8%B4-%DB%8C%D8%A7-%D9%87%D8%A7%D8%B1%D8%AF-%D8%AC%D9%88%D8%B1%DB%8C-%D9%BE%D8%A7%DA%A9-%DA%A9%D9%86%DB%8C%D9%85-%DA%A9%D9%87-%D9%82%D8%A7%D8%A8%D9%84-%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C-%D9%86%D8%A8%D8%A7%D8%B4%D9%87-zrvgerpqvcd9</link>
                <description>یه چیزی یادگرفتم که خیلی به کارم اومد گفتم تو یه پست کوتاه منتشرش کنم . برای درک مطالب این پست کار با سیستم عامل لینوکس رو در حد کمی بلد باشید.ما لینوکسی ها میدونیم برای انتقال داده حجیم  از حافظه ای به حافظه دیگه دستور بسیار کاربردی ای وجود داره به نام dd که معمولا  برای بکاپ گرفتن استفاده میشه ولی من تو این مقاله میخوام روش wipe کردن باهاشو یاد بدم. در واقع طرز کارش خیلی راحته :# dd if=/dev/sda1 of=/dev/sdbخیلی خیلی سادس، دستور یه if داره که کوتاه شده ی input file هست که مبداء ماست  یه of داره که کوتاه شده  output file  و به مقصد اشاره میکنه. الان دستور بالایی که نوشتم یعنی هر چیزی که تو dev/sda هست رو بردار بریز تو dev/sdb/.یادتون باشه این دستور اصلا کاری نداره تو of یا همون مقصدتون از قبل چه فایلایی دارید اگر براش مشخص نکنید از اول هارد مینویسه میره جلو ممکنه خیلی از دیتا های روی هارد رو overwrite کنه و دیگه قابل دسترسی نباشه. برای همین استفاده از دستور dd برای تازه کار های لینوکس اصلا پیشنهاد نمیشه !!! و میتونه حتی خطرناک باشه !!!البته این چیزی که من نوشتم، با حداقل پارامتر های دستوره، مواردی مثل block size یا انتخاب سکتور خاصی برای شروع هم داره که ما کاریش نداریم فعلا. یه قسمتی هست تو دایرکتوری dev به اسم zero از اینجا میتونیم هرچقدر دلمون میخواد کاراکتر صفر برداریم بریزیم هر جا که دلمون میخواد .خب ما برمیداریم کل حافظه رو با صفر پر میکنیم ، عملا با این کار همه  اطلاعات  جوری پاک میشه که قابل بازیابی نیست به راحتی، حداقل نه با تجهیزات خونگی.به عنوان یه توضیح جمع و جور :وقتی ما اطلاعاتی رو Delete میکنیم در واقع خود فایل سر جاش هست، و از حافظه حذف نمیشه ، ما فقط آدرس شروع و پایان  فایل رو پاک میکینم برای همین پاک کردن نسبت به کپی و انتقال فایل  اینقدر سریع اتفاق میوفته. حالا اگر به نحوی قسمت هایی که آدرسی دهی نشده (از نظر سیستم عامل خالیه، ولی واقعا نیست) رو بگردیم و فرم فایل ها رو بتونیم در بیاریم، میتونیم با دوباره آدرس دهی کردنش اونو بازیابی کنیم.ولی اگر به جای Delete اون فایل رو wipe کنیم، هم آدرس فایل پاک میشه هم خود فایل با یه کاراکتر مشخص رونویسی میشه. حالا با دستوری که ذکر میشه کل هارد رو با صفر بازنویسی میکنیم . که معنی اینو میده که کل حافظه wipe شده. دستور dd برای wipe کردن یه حافظه خاص مثلا sdb2 :# dd if=/dev/zero of=/dev/sdb2 bs=1Mهر حافظه ی دیگه ای رو میتونید به جای sdb2 بذارید . حتی اگر میخواید کل پارتیشن ها هم پاک بشه میتونید بدون شماره بزنید یعنی مثلا sdb. حالا یه مشکل گنده !!!دستور dd کارشو  وقتی شروع میکنه ساکت میمونه و تا وقتی که تموم نشده هیچ خبری نمیده، یعنی هیچ لودینگ یا progress bar تو این برنامه وجود نداره، از طرفی وقتی مثلا یه  هارد ۱ ترابایتی رو بخوایم wipe کنیم عملا به اندازه پر کردن کامل هارد زمان میبره،پس!!! ما به progress bar نیاز داریم .نویسنده های dd که ۳ نفر بودن با همکاری چند نفر دیگه یه نسخه پیشرفته تر از dd رو گسترش دادن به اسم dc3dd . تو این برنامه پارامتراش راحت تر شدن، progress bar اضافه شده، ولی مثل dd به صورت پیش فرض روی شل لینوکس نیست و باید تو توزیع های غیر امنیتی نصب بشه ( توزیع هایی مثل parrot و kali به صورت پیشفرض دارنش) کلی تغییر دیگه هم هست که تو man page میتونید بخونید.حالا با dc3dd میخوایم wipe کنیم .# dc3dd wipe=/dev/sdb pat=000111اون pat که مخفف کلمه pattern هست الگوی دیتایی هست که قراره overwrite بشه ، هر چی دلتون میخواد بزنید.به همین سادگی.البته progress bar که تعبیه شده به شکل درصد و میزان دیتای کپی شده هست، مدت زمان گذشته و سرعت کپی کردن هست .اینجا واقعا یه هارد ۱ ترابایتی رو دارم wipe میکنم که تا اینجا که ۳۱ درصد رفته حدودا ۲ ساعت و خرده ای زمان برده.برای wipe یک حافظه یک ترابایتی حدودا ۷ ساعت زمان لازمه .البته با سرعت ۳۷ مگابایت برثانیه که من دارم.امیدوارم که کاربردی بوده باشه. </description>
                <category>Hal_9000</category>
                <author>Hal_9000</author>
                <pubDate>Tue, 27 Aug 2019 21:02:19 +0430</pubDate>
            </item>
                    <item>
                <title>این halـ9000 چی هست اصلا ؟!</title>
                <link>https://virgool.io/@hal9000/%D8%A7%DB%8C%D9%86-hal%D9%809000-%DA%86%DB%8C-%D9%87%D8%B3%D8%AA-%D8%A7%D8%B5%D9%84%D8%A7-u8w9e3vixdsz</link>
                <description>2001: A Space Odyssey هال ۹۰۰۰ به عنوان یک کاراکتر کامپیوتری با هوش مصنوعی فوق العاده است که در سال ۱۹۶۸ توسط آرتور .سی کلارک رمان نویس بریتانیایی خلق شد و اولین بار در فیلم یک ادیسه فضایی ۲۰۰۱ (2001: A Space Odyssey) به کارگردانی استندلی کوبریک فقید به عنوان شخصیت منفی داستان به تصویر درآمد.HAL_9000اسم HAL9000 کوتاه شده Heuristically Programmed Algorithmic computer است، که ترجمه فارسی اون میشه کامپیوتری که با الگوریتم هیوریستیک برنامه ریزی شده. الگوریتم جستجوی کاشف، هیوریستیک یا ابتکاری،  یه روشی برای  حل مسائلی است که راه‌های کلاسیک حل آن‌ها بسیار کند هستن یا راه‌حل  تقریبی برای مسائلی است که راه‌های کلاسیک نمی‌توانند برای آن‌ها جواب  دقیقی پیدا کنند. بیشتر مسائل پیچیده نیازمند ارزیابی تعداد انبوهی از حالت‌های ممکن  برای تعیین یک جواب دقیق هستن. زمان لازم برای یافتن یک جواب دقیق اغلب  بیشتر از یک طول عمر است. هیوریستیک‌ها با استفاده از روش‌هایی نیازمند ارزیابی‌های کمتر و ارائه جوابی‌هایی در محدودیت‌های زمانی قابل قبول دارای  نقش مهمی تو حل اینجور مسائل دارن.فیلم داستان فضاپیمایی را روایت میکند که ماموریت  انتقال بشر به نقاط  دوردست کیهان را دارد . در این سفر  بیشتر فضانوردان به خواب مصنوعی فرورفته دو نفر دیگر وظیفه کنترل سفینه و مراقبت از بقیه افراد را دارند و هال ۹۰۰۰ به عنوان یه رایانه کمکی ایفای نقش میکند که در خلال فیلم بیننده متوجه میشود ماموریت اصلی فضاپیما چیز دیگری بوده و در واقع به هال محول شده و اوست که کنترل اصلی تمامی فضاپیما و ماموریت را در دست دارد نقطه اوج فیلم و رمان از این قسمت به بعد است که ترجیح میدم اسپویل نکنم خودتون  اگر دوست دارید ببینید یا بخونید.بعد از اکران طرفدار های فیلم متوجه شدن  این اسم درواقع روی یکی از مدل های کامپوتر های شرکت IBM نیز بوده ولی در ادامه ماجرا کلارک کپی بودن این اسم رو  رد کرد.در آخر میشه گفت هال ۹۰۰۰  به نماد ماهیت غیر انسانی که غالبا اهداف ضد بشریت  داره تبدیل شد، به طوری که در آثاری سینمایی  بسیار دیگری هم، شباهت هایی، هم از نظر ظاهر هم شخصیت پردازی به هال ۹۰۰۰  را مشاهده  میکنیم : WALL-E  شخصیت منفی انیمیشن    کاراکتر  Fabrication Machine در انیمیشن  9 لوگو کاراکتر Cyborg در کمیک ها و فیلم های دنیای ماورای DC لباس کاراکتر Cyborg در کمیک ها و فیلم های دنیای ماورای DC</description>
                <category>Hal_9000</category>
                <author>Hal_9000</author>
                <pubDate>Tue, 06 Aug 2019 13:55:24 +0430</pubDate>
            </item>
                    <item>
                <title>مانتورینگ سیستم در یک بازه زمانی (linux)</title>
                <link>https://virgool.io/@hal9000/%D9%85%D8%A7%D9%86%D8%AA%D9%88%D8%B1%DB%8C%D9%86%DA%AF-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D8%AF%D8%B1-%DB%8C%DA%A9-%D8%A8%D8%A7%D8%B2%D9%87-%D8%B2%D9%85%D8%A7%D9%86%DB%8C-linux-ofr9d39rgyoj</link>
                <description>یک اصطلاح معروف در علوم مهندسی وجود داره که میگه اگر چیزی رو نتونی اندازه گیری کنی و بسنجی قطعا نمیتونی کنترل و مدیریتش کنی.پس لازمه بتونیم میزان مصرف منابع و درگیر بودن سیستممون رو بسنجیم تا بتونیم مدیریتش کنیم.  تو علوم رایانه ما به این کار میگیم مانیتورینگ یا نظارت بر سیستم .در مانیتورینگ ۴ منبع اصلی وجود داره که ممکنه به علت های مختلف توشون گلوگاه ایجاد بشه :۱− حافظه اصلی (RAM)   ۲-ورودی خروجی حافظه ثانویه (I/O)     ۳-پردازنده(CPU)    ۴-شبکه (Network)برای عیب یابی سیستم به صورت realtime (در لحظه )تو یه مطلب جداگانه یه سری دستورات رو توضیح دادم که میتونید از این لینک بهش دسترسی داشته باشید. تو این مطلب قراره ما همون کارو کنیم در یک بازه زمانی طولانی تر. ترافیک مصرفی شبکه که تو یه پست جدا در بارش مینویسم.                                                  SARدستور sar  وضعیت کلیه منابع سیستم رو در بازه های زمانی خاصی که ما تعیین میکنیم ثبت میکنه و با استفاده از اون ما می تونیم ببینم پیک مصرف چه زمانی بوده و به اگر رفتار مشکوکی وجود داره اونو کشف و عیب یابی کنیم.برای نصب این دستور ابتدا باید سرویس sysstsat رو از پکیج منیجر توزیع مورد نظرمون نصب کنیم.من از دبیان استفاده میکنم :$sudo apt install sysstat تو مرحله بعد فایل etc/default/sysstat/ رو با هر ویرایشگری که راحت ترید باز کنید و کلمه false رو به  true تغییر بدید تا عملکرد دستور sar فعال بشه یادتون نره قبل از بستن حتما saveش کنید.در قدم بعدی فایل etc/cron.d/sysstat/ رو ویرایش میکنیم تا بازه های زمانی دستور رو مقدار دهی کنیم . تو این فایل باید مقدار 55/10-5 که باعث میشه از دقیقه ۵ ام هر ساعت تا دقیقه ۵۵ ام هر ۱۰ دقیقه یکبار دستور یک ثبت انجام بده رو به 2/* تغییر بدید که باعث میشه در کلیه ساعات هر ۲ دقیقه یکبار این اتفاق بیوفته، طبیعتا ۵ برابر بیشتر لاگ تولید میشه ولی بجاش دقیق تره.حالا باید سرویس sysstat رو یکبار ریستارت کنید تا قابل استفاده بشه :$sudo systemctl restart sysstatحالا دستور sar آماده استفاده است :خروجی دستور sar -Aاین دستور تعداد زیادی سوییچ داره که بسته به نیازتون میتونید اطلاعات خاصی رو با این سوییچ ها از لاگ های اون سرویس sysstat استخراج کنید به عنوان مثال :سوییچ A- : مخفف All هست که همه اطلاعات رو نمایش میده .سوییچ B- : پیجینگ های های مموری رو نمایش میده سوییچ b- :با این سوییچ transfer rate I/Oرو نمایش میده .سوییچ H- : پیک استفاده منابع رو مشخص میکنه.و تعداد زیادی سوییچ دیگه که از طریق man pages می تویند کاراییشونو متوجه بشید. البته به صورت realtime هم میتونید با این دستور کار بکنید . بررای مثال من میخوام ۱۰ بار وضعیت سیستم رو در فاصله های زمانی ۲ ثانیه ای ببینم ،خیلی ساده :$sar -A 2 10بعد از اتمام دستور یه summery بهتون میده از کل این logهایی که نشونتون داد.امیدوارم بدردبخور بوده باشه.</description>
                <category>Hal_9000</category>
                <author>Hal_9000</author>
                <pubDate>Tue, 06 Aug 2019 12:25:13 +0430</pubDate>
            </item>
                    <item>
                <title>لینوکس کند شده !؟ چجوری بفهمیم مشکل از کجاس.</title>
                <link>https://virgool.io/@hal9000/%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3-%DA%A9%D9%86%D8%AF-%D8%B4%D8%AF%D9%87-%DA%86%D8%AC%D9%88%D8%B1%DB%8C-%D8%A8%D9%81%D9%87%D9%85%DB%8C%D9%85-%D9%85%D8%B4%DA%A9%D9%84-%D8%A7%D8%B2-%DA%A9%D8%AC%D8%A7%D8%B3-m4xqqk6ru7mz</link>
                <description>قبل از هر چیزی بهتره یه نگاهی بندازیم به حداقل میزان منابع سیستم که توزیع های معروف برای روون اجرا شدن لازم دارن : اوبونتو   -  فدورا  -   مینت  -   دبیان   -  ردهت  -   سنت او اس  ـ   آرچ   -  جنتو   -   المنتریمسلما بعضی از توزیع ها که نسخه سرور هستن منابع بیشتری هم لازم دارن.وقتی سخت افزارتون به نسبت نیاز توزیع مورد نظر قدرت مطلوبی داره ولی بازم کند عمل میکنه  قطعا یه برنامه ای داره بیشتر منابع سیستم رو اشغال میکنه که باعث گلوگاه شده. سرعت اجرا سیستم عامل بستگی به میزان CPU ، RAM و IO هارد داره پس با دستور هایی که یادآوری میکنم اول این سه تا منبع رو چک کنید.۱- با دستور top میزان بار روی CPU دستگاه رو چک کنید و مقدار load average سه تا عدد داره که به ترتیب از سمت چپ وضعیت بار روی CPU رو تو 1, 5 ,15  دقیقه گذشته نشون میده .این اعداد نباید تو حالت که سیستم کار خاصی انجام نمیده نزدیک به تعداد هسته های CPU باشن. با قدرت CPU های نسل حاضر معمولا باید یک و پایین تر باشه . با زدن دکمه C و M میتونید لیست رو بر اساس استفاده CPU و Memory (RAM) مصرفی مرتب کنید.به طور مثال تو تصویر زیر بالاترین عنوان لیست gnome-shell هست که داره ۲۱٫۹ درصد از CPU سیستم رو استفاده میکنه.تصویر ۱ - دستور top۲- با دستور free میزان مصرف RAM و SWAP رو چک کنید تو حالت بیکاری نباید سیستم از SWAP استفاده کنه. یعنی ستون use از ردیف Swap باید صفر باشه.اگر صفر نبود یعنی تمام حافظه RAMسیستم اشغال شده و این اتفاق معمولا باعث کندی شدید سیستم میشه.تصویر ۲ −دستور freeتو سیستم هایی که مصرف خونگی دارن معمولا مرورگر بیشترین مصرف رم رو داره که عواملی مثل باز کردن تعداد زیادی Tab و اضافه کردن افرونه (Add-ons) باعث این اتفاق میشه.۳- با دستور sudo iotop میزان استفاده برنامه ها از هارد و swap رو کنترل کنید ، در قسمت بالایی دستور از total disk read و total disk write میشه فهمید هارد درگیر هست یا نه . اگر هست چه برنامه ای داره استفاده میکنه.تو بیشتر توزیع ها این دستور به صورت پیش فرض وجود نداره و باید خودتون اضافه اش کنید :در توزیع های دبیان بیس مثل Ubuntu و mint و kali  :$ sudo apt install iotopدر توزیع های Cent OS و RHEL و Fedora :# yum install python python-ctypes# yum install iotopدر توزیع فدورا ورژن ۲۲ به بعد :# dnf install iotopتصویر  ۳− دستور iotopاگر تو تست های بالا متوجه شدید Desktop environment شما داره  بیشتر از ۷۰٪ منابع رو اشغال میکنه از دسکتاپ  های سبک تر مثل lxde ،xfce و openbox استفاده کنید.خود من از gnome استفاده میکنم از به نظرم جزء زیبا ترین و بهترین دسکتاپ هاس اما اینجا ما دنبال بهترین نیستیم! دنبال سبک ترینیم.دسکتاپ های Gnome، Unity و KDE به خاطر جلوه های بصری که دارن جز دسکتاپ های سنگین به شمار میرن . برای چک کردن منابع تا اینجا ابزار هایی رو معرفی کردم که Command line بودن و علتش هم اینه که تو نسخه های Core لینوکس و همینطور به صورت Remote که وصل میشیم به ماشین بشه ازشون استفاده کرد. اما بعضی وقتا ترجیح میدیم در محیط گرافیکی نیازهامونو برطرف کنیم .از برنامه هایی گرافیکی که همزمان میزان مصرف منابع سیستمون رو بهتون نشون میدن میشه به Stracer اشاره کرد.تصویر ۴ - نرم افزار Stacerقالبیت های کلیدی نرم افزار :− مانیتورینگ CPU, Memory,Disk− مانیتورینگ پهنای باند مصرفی− نشان دادن مشخصات سیستم− کنترل برنامه های  startup سیستم− پاکسازی سیستم از انواع Cashها و logها ( من این گزینه رو مطلقاً پیشنهاد نمیکنم )− کنترل سرویس های سیستم − مانیتورینگ پروسه های برنامه (دقیقا مثل دستور top )− مدیریت آدرس های Repository-  مدیریت دگیج های نصب شدهسورس این نرم افزار رو میتونید از صفحه Github  و پکیج های deb. و rpm. رو از سایت Sourceforge دانلود کنید.از روش های موثر دیگه اینه که سرویس هایی که موقع up شدن سیستم عامل به صورت پیشفرض روشن هستن رو چک کنید و اونایی که لازم ندارید رو غیر فعال کنید برای این کار از دستور های زیر میتونید استفاده کنید  : $ service --status-all$ chkconfig --list$ initctl list# systemctl list-unit-files --state=enabledمشخصا همه دستور های بالا رو همه توزیع ها جواب نمیده بسته به نوع توزیع بعضیاشون به صورت پیش فرض وجود دارن بعضیاشونم باید نصب کنید.و در آخر اگر سخت افزار ضعیفی دارید سراغ توزیع های سبک یا به اصطلاح lite برید :۱−توزیع Bodhi :  500MHz processor128MB RAM4GB storage space۲−توزیع Puppy :333MHz processor256MB RAM۳−توزیع Linux Lite :700MHz processor512MB RAMVGA screen 1024×768 resolution۳− توزیع  Ubuntu MATE750MHz processor512MB RAM۴−توزیع Arch به علاوه یه میز کار سبک :512MB RAM64-bit architectureدر بیشتر موارد از روش هایی که گفتم میتونید علت کندی سیستم رو بفهمید ولی خب موارد مثل خرابی سخت افزار (مخصوصا هارد دیسک - زیاد شدن bad sector) - اتصال یک سخت افزار ناسازگار - پر شدن هارد - بدافزار ( تو لینوکس خیلی کم پیش میاد ولی خب محال نیست) - راه اندازی سیستم تو حالت کم مصرف (مخصوصا تو لپ تاپ ها که از باتری استفاده میکنن اگر  power manager مناسبی نصب کردید محتمل تره ) و گرد خاک زیاد داخل کیس یا بدنه لپ تاپ هم میتونه عامل کندی باشه.برای مطالعه این  مطالب به سایت زوم طب به دسته بندی لینوکس زیر دسته عیب یابی مراجعه فرماید.</description>
                <category>Hal_9000</category>
                <author>Hal_9000</author>
                <pubDate>Fri, 14 Jun 2019 12:36:08 +0430</pubDate>
            </item>
            </channel>
</rss>