رفتن به مطلب

HosseiN

کاربر فعال
  • تعداد ارسال ها

    56
  • تاریخ عضویت

  • آخرین بازدید

درباره HosseiN

آخرین بازدید کنندگان نمایه

1863 بازدید کننده نمایه

دستاورد های HosseiN

Community Regular

Community Regular (8/14)

  • One Year In
  • Very Popular
  • Well Followed
  • One Month Later
  • Week One Done

نشان‌های اخیر

186

اعتبار در سایت

  1. اول دختره بعد پسره . چون طبیعتا دختر مهمتر از پسر هست
  2. HosseiN

    متولد کدوم ماهی..

    تیر - وفادار که همه هستن اما بستگی به طرف مقابل داره چطور باشه اگه خوب نباشه کم کاری کنه خیانت میشه. ولی خصوصیت اصلیشون زودرنج بودن و مهربانی هست . پسراش یه جنتلمن واقعی هستن
  3. من هیچی به فکرم نمیاد چرا D :
  4. HosseiN

    جمعه های غمگین

    احسنت سعیده خاتون
  5. HosseiN

    تولد داریم چه تولدی!!!

    سلام مرسی خبری ازت نیست خوشحال شدم دیدمت بیا اونور پیشه ما گاهی
  6. HosseiN

    تولد داریم چه تولدی!!!

    Niloofar jion Mobarak Bashe
  7. عشق که ندارم اما خودم تیر هستم . از همین تریبون هرکی عاشقمه میتونه اعلام حضور کنه !!
  8. بسیاری از ما وقتی اسم لینوکس را می‌شنویم، یک سیستم‌عامل پیچیده را تصور می‌کنیم که فقط برنامه‌نویسان حرفه‌ای از آن استفاده می‌کنند؛ ولی لینوکس آن‌قدرها هم ترسناک نیست! لینوکس یک خانواده‌ی بزرگ از سیستم‌عامل‌‎های متن باز مبتنی بر یونیکس است که همگی روی Kernel یا هسته‌ی لینوکس نوشته شده‌اند. لینوکس چندین توزیع یا distribution دارد که اوبونتو، فدورا، مینت و دبیان چند نمونه‌ی معروف از آن‌ها هستند. از سال 1991 که لینوکس برای اولین بار معرفی شد، به طور پیوسته محبوبیت آن افزایش یافته است که شاید بزرگ‌ترین دلیل آن هم این باشد که لینوکس ذاتاً متن باز است؛ یعنی هرکسی می‌تواند مطابق میل خودش در آن تغییراتی ایجاد کند و توزیع اصلاح‌شده‌ی خود را با نام خودش منتشر کند. هنگام استفاده از لینوکس، نیاز به استفاده از شل یا پوسته دارید؛ شل رابطی است که دسترسی به سرویس‌های سیستم‌عامل را برای شما امکان‌پذیر می‌کند. اکثر توزیع‌های لینوکس از یک رابط کاربری گرافیکی یا GUI به عنوان شل استفاده می‌کنند، که دلیل اصلی آن هم راحت‌تر کردن استفاده از سیستم‌عامل برای کاربران است. با این وجود، اکثر اوقات بهتر است از رابط کاربری خط فرمان (CLI) یا همان ترمینال لینوکس برای انجام کارهای مختلف استفاده کنیم، چون این رابط نسبت به GUI قدرتمندتر و موثرتر است. بعضی کارها که ممکن است در GUI به طی‌کردن چندین مرحله نیاز داشته باشند، ظرف چند ثانیه و از طریق نوشتن دستور در CLI قابل انجام هستند. به همین خاطر است که به هر دلیل قصد استفاده از لینوکس را داشته باشید، یادگیری دستورات پایه و پرکاربرد خط فرمان اهمیت بالایی دارد. در ادامه 50 دستور پایه و پرکاربرد در خط فرمان لینوکس را به ترتیب الفبا با هم خواهیم دید. مطالعه این مقاله برای همه افرادی که در استفاده از لینوکس تجربه چندانی ندارند به‌شدت توصیه می‌شود؛ گرچه افرادی هم که تجربه زیادی در استفاده از لینوکس دارند، می‌توانند با مطالعه این مقاله دانسته‌های خود را مجدداً مرور کنند! 1- alias دستور alias به شما اجازه می‌دهد به یک دستور یا مجموعه‌ای از دستورات یک نام اختصاری یا اصطلاحاً «نام مستعار» بدهید. زمانی که این نام کوتاه را در ترمینال تایپ کنید، شل آن دستور خاص یا مجموعه دستورات را برای شما اجرا خواهد کرد: alias cls=clear دستور بالا یک alias یا دستور اختصاری به نام cls را تنظیم می‌کند، که نام دیگری برای دستور clear است. یعنی وقتی در alias دستور cls را تایپ کنید، متن‌های موجود در صفحه‌ی ترمینال پاک می‌شوند، درست مثل زمانی که دستور clear را تایپ کنید. شاید فکر کنید برای تایپ چند کاراکتر کمتر، نیاز به تنظیم یک alias برای دستور clear نباشد، اما وقتی زیاد بین محیط خط فرمان ویندوز و لینوکس جابه‌جا شوید، ممکن است دستور cls را در خط فرمان لینوکس تایپ کنید و با خطا مواجه شوید، اما اگر این نام اختصاری را تنظیم کرده باشید، خط فرمان متوجه این دستور خوهد شد. البته دستورات اختصاری می‌توانند بسیار پیچیده‌تر از مثال بالا باشند. مثلا در نمونه زیر یک alias به اسم pf (کوتاه‌شده‌ی process find) تنظیم شده که کمی پیچیده‌تر است. توجه داشته باشید که دنباله‌ی دستورات داخل علامت دابل کوتیشن یا « “ » قرار داده شده‌اند. در صورتی که در دنباله دستورات فاصله (اسپیس) وجود داشته باشد، استفاده از این علامت در دو طرف آن ضروری است. این دستور اختصاری یا alias، از دستور ps برای لیست‌کردن تمام پروسس‌هایی در حال اجرا استفاده می‌کند و سپس آن‌ها در دستور grep پایپ می‌کند (در واقع خروجی آن را به دستور grep می‌فرستد، در ادامه بیشتر درباره این دستور توضیح داده‌ایم). دستور grep در خروجی‌های دستور ps، به دنبال انتری‌هایی می‌گردد که با پارامتر خط فرمان $1 تطابق داشته باشند (یعنی اولین نامی که بعد از این دستور تایپ شود، به عنوان ورودی grep انتخاب می‌شود). alias pf=”ps -e | grep $1″ مثلا اگر بخواهید ID پروسس shutter (یا همان PID آن را9 بیابید – یا حتی ببینید اصلا پروسس shutter در حال اجرا هست یا نه!- می‌توانید از این دستور اختصاری به شکل زیر استفاده کنید: کافی است pf را تایپ کنید، یک اسپیس بعد از آن قرار دهید و نام پروسسی را بنویسید که می‌خواهید آن را بررسی کنید (نام پروسس می‌شود همان پارامتر خط فرمان شماره 1، یا همان $1): pf shutter هر alias یا دستور اختصاری که در یک پنجره ترمینال تعریف کنید، با بسته شدن آن پنجره از بین می‌رود. اگر می‌خواهید یک alias همیشه در دسترس شما باشد، باید آن را به فایل .bash_aliases در دایرکتوری home اضافه کنید. 2- apt دستور apt برای نصب، به‌روزرسانی، حذف و به‌طور کلی مدیریت پکیج‌های دبیان روی توزیع‌های مبتنی بر دبیان مانند اوبونتو و کالی لینوکس استفاده می‌شود. این دستور معمولا به صورت ترکیبی با ابزارهای دیگر و به صورت apt-get و apt-cache به کار می‌رود که برای چند گزینه‌ی مختلف، مقادیر پیشفرضی را تنظیم می‌کنند. در اسکریپت‌های شل بهتر است از apt-get و apt-cache استفاده شود چون با نسخه‌های قدیمی و متفاوت سازگاری دارند و گزینه‌ها و امکانات بیشتری هم دارند. اکثر دستورات apt باید در کنار sudo استفاده شوند. برای به‌روزرسانی فهرست پکیج‌ها، می‌توانید از دستور زیر استفاده کنید. این دستور آخرین تغییرات ریپازیتوری‌های APT را دریافت می‌کند. sudo apt update همیشه باید قبل از ارتقای پکیج‌ها یا نصب پکیج‌های جدید، باید پکیج‌ها را آپدیت کنید. به‌روزرسانی مستمر سیستم لینوکس یکی از تاثیرگذارترین فاکتورها در امنیت کلی سیستم است. برای ارتقای پکیج‌های نصب‌شده به آخرین نسخه، می‌توانید دستور زیر را اجرا کنید: sudo apt upgrade 3- cat دستور cat (کوتاه‌شده‌ی concatenate) محتویات فایل‌ها را در پنجره ترمینال لیست می‌کند. این دستور از بازکردن فایل در ویرایشگر سریع‌تر است، ضمن این که دیگر احتمال تغییردادن اتفاقی و اشتباهی فایل هم وجود ندارد. به عنوان مثال، برای خواندن محتویات فایل .bash_log_out، می‌توانید به دایرکتوری home بروید (دایرکتوری که ترمینال به طور پیش‌فرض در آن باز می‌شود) و دستور زیر را تایپ کنید: cat .bash_logout اگر فایل طولانی‌تر از تعداد خط‌های موجود در پنجره ترمینال شما باشد، متن فایل به سرعت از ترمینال عبور می‌کند و نمی‌توانید آن را بخوانید. همیشه می‌توانید با اسکرول در ترمینال متن‌های ردشده را بخوانید، اما مواقعی که در محیط CLI بدون GUI کار می‌کنید و موس در کار نیست، می‌توانید خروجی دستور cat را در دستور less پایپ کنید تا بتوانید با کلیدهای فلش بالا و پایین، PgUp و PgDn و Home و End روی کیبورد در نتایج حرکت کنید (برای خارج‌شدن از دستور less حرف q را تایپ کنید). cat .bashrc | less 4- cd با دستور cd (که شاید معروف‌ترین دستور ترمینال باشد!) می‌توانید بین دایرکتوری‌ها جابه‌جا شوید و در واقع current directory یا همان دایرکتوری جاری (یا دایرکتوری کاری) را تغییر دهید. اگر می‌خواهید به دایرکتوری بروید که داخل دایرکتوری جاری شما قرار دارد، به‌سادگی می‌توانید نام آن دایرکتوری را بعد از دستور cd بنویسید. اگر می‌خواهید به دایرکتوری دیگری در فایل‌سیستم منتقل شوید، باید پس از نوشتن cd، آدرس دایرکتوری را بعد از یک فوروارد اسلش ( / ) بیاورید. cd work cd /usr/local/bin برای بازگشت سریع به دایرکتوری home، می‌توانید از کاراکتر تیلدا ( ~ ) به جای نام دایرکتوری استفاده کنید: cd ~ یک میانبر دیگر که می‌توانید با دستور cd استفاده کنید، علامت دو نقطه یا « . . » است که برای نشان‌دادن دایرکتوری مادر دایرکتوری جاری است. برای تغییر دایرکتوری داخل دایرکتوری مادر، می‌توانید از علامت « . . » برای تایپ کمتر استفاده کنید. cd ../games 5- chmod دستور chmod برای تنظیم فلگ‌های file permission مربوط به یک فایل یا فولدر استفاده می‌شود. این فلگ‌ها تعریف می‌کنند که چه‌کسی می‌تواند فایل را بخواند، بنویسد یا اجرا کند. وقتی فایل‌‎ها را با گزینه –l (یا همان فرمت long) لیست کنید، رشته‌ای از کاراکترها می‌بینید که شبیه استرینگ زیر هستند: -rwxrwxrwx اگر اولین کاراکتر « – » باشد یعنی آیتم فایل است و اگر d باشد یعنی آیتم دایرکتوری است. باقی استرینگ سه رشته‌ی سه‌تایی از کاراکترها هستند. از سمت چپ، سه کاراکتر اول نشان‌دهنده مجوزهای owner، سه کاراکتر وسطی نشان‌دهنده مجوزهای group و سه کاراکتر راست نشان‌دهنده مجوزهای others هستند. در هر رشته، r علامت خواندن، w نوشتن و x علامت مجوز اجرا است. اگر کاراکتر r، w یا x وجود داشته باشد، نشان‌دهنده وجود مجوز مربوطه است. اگر کاراکتری موجود نداشته باشد به جای آن یک « – » نمایش داده می‌شود. یکی از راه‌های استفاده از chmod، دادن دسترسی‌های مورد نظر به owner، group و others با یک عدد 3 رقمی است. عدد سمت چپی برای owner، عدد وسطی برای group و عدد سمت راستی هم برای others است. رقم‌هایی که می‌توانید به عنوان پارامتر chmod استفاده کنید، و معنای هرکدام عبارتند از: 0 : بدون هیچ‌گونه مجوز. 1 : مجوز اجرا. 2 : مجوز نوشتن. 3 : مجوز نوشتن و اجرا. 4 : مجوز خواندن. 5 : مجوز خواندن و اجرا. 6 : مجوز خواندن و نوشتن. 7 : مجوز خواندن، نوشتن و اجرا. برای مثال فایل example.txt را در نظر بگیرید. می‌بینیم که هر سه رشته کاراکتر برای این فایل rwx هستند. این یعنی همه می‌توانند آن را بخوانند، بنویسند و اجرا کنند. حال فرض کنید می‌خواهیم این مجوزها را برای این فایل تنظیم کنیم: خواندن، نوشتن و اجرا برای owner (یعنی عدد 7) خواندن و نوشتن برای group (یعنی عدد 6) خواندن و اجرا برای others (یعنی عدد 5) یعنی باید از عدد 765 به عنوان آرگومان chmod استفاده کنیم: chmod 765 example.txt برای تنظیم مجوزهای خواندن، نوشتن و اجرا برای owner (عدد 7)، خواندن و نوشتن برای group و هم‌چنین others (عدد 6) باید از عدد 766 به همراه دستور chmod استفاده کنیم: chmod 766 example.txt 6- chown دستور chown به شما اجازه می‌دهد که مالک و گروه (owner و group owner) یک فایل را عوض کنید. مثلا با لیست‌کردن فایل example.txt با دستور ls –l، عبارت lian_group lian_group را در توضیحات فایل می‌بینیم. اولی نشان‌دهنده مالک یا owner فایل است که در این مورد lian_group است. دومی هم نام گروه فایل را نشان می‌دهد که آن هم lian_group است. هر کاربر یک گروه پیش‌فرض دارد که هم‌زمان با ایجاد کاربر ایجاد می‌شود و کاربر تنها گروه آن است. این مجوزها به این معناست که فایل با هیچ گروه دیگری از کاربران به اشتراک گذاشته نمی‌شود. شما می‌توانید از chown برای تغییر مالک یا گروه فایل، یا هر دوی آن‌ها استفاده کنید. برای این کار باید نام owner و گروه مورد نظر خود را به این دستور بدهید و آن‌ها را با یک « : » از هم جدا کنید. برای استفاده از این دستور باید از sudo استفاده کنید. برای حفظ lian_group به عنوان مالک فایل ولی تغییر گروه فایل به lordm369، از دستور زیر استفاده می‌کنیم: sudo chown lian_group:lordm369 example.txt برای تغییر مالک و گروه فایل به lordm369، باید از دستور زیر استفاده کنید: sudo chown lordm369:lordm369 example.txt برای این که دوباره lian_group را به مالک و گروه فایل تبدیل کنیم، از این دستور استفاده می‌کنیم: sudo chown lian_group:lian_group example.txt 7- cp دستور cp برای کپی کردن فایل‌ها بین دایرکتوری‌ها استفاده می‌شود و گزینه‌ها و قابلیت‌های آن شبیه دستور mv است، با این تفاوت که بعد از اجرای این دستور فایل مبدا دست‌نخورده باقی می‌ماند. 8- curl دستور curl ابزاری برای دریافت اطلاعات و فایل از آدرس‌های URL یا همان لینک‌های مختلف است. دستور curl ممکن است به صورت پیش‌فرض در توزیع لینوکس شما وجود نداشته باشد، ولی اگر از اوبونتو یا توزیع مبتنی بر دبیان دیگری استفاده می‌کنید، می‌توانید با دستور apt-get این پکیج را روی سیستم خود نصب کنید. در توزیع‌های لینوکسی دیگر، می‌توانید از ابزار مدیریت پکیج مخصوص همان توزیع استفاده کنید. sudo apt-get install curl فرض کنید می‌خواهید یک فایل را جداگانه از یک ریپازیتوری گیت‌هاب دانلود کنید. عملا هیچ راه رسمی و مستقیمی برای این کار وجود ندارد و مجبورید کل ریپازیتوری را کلون کنید. ولی با دستور curl، می‌توانید فایل مورد نظر خود را مستقیما و جداگانه دانلود کنید. این دستور فایل را برای ما دانلود می‌کند. توجه داشته باشید که برای ذخیره فایل باید با استفاده از گزینه –o (به معنای output یا خروجی)، نام فایل را برای ذخیره‌کردن نیز تعیین کنید. اگر این کار را نکنید، محتویات فایل به‌سرعت روی پنجره ترمینال نمایش داده می‌شوند ولی روی کامپیوتر شما ذخیره نمی‌شوند. curl https://blog.liangroup.net/wp-content/uploads/2021/04/kaspersky-threat-landscape-for-industrial-automation-systems-statistics-for-h2-2020-en.pdf -o kaspersky_report.pdf اگر نمی‌خواهید روند دانلودشدن فایل را در ترمینال ببینید، می‌توانید از گزینه –s (silent) استفاده کنید. curl -s https://blog.liangroup.net/wp-content/uploads/2021/04/kaspersky-threat-landscape-for-industrial-automation-systems-statistics-for-h2-2020-en.pdf -o kaspersky_report.pdf 9- df با دستور df می‌توانید حجم، میزان فضای استفاده‌شده و میزان فضای موجود در فایل‌سیستم‌های موجود روی کامپیوتر خود را ببینید. دوتا از مفیدترین گزینه‌های این دستور، -h (قابل خواندن برای انسان) و –x (exclude) هستند. گزینه‌ی –h اندازه‌ها را به جای بایت، به صورت مگابایت و گیگابایت نشان می‌دهد. با گزینه –x هم می‌توانید به دستور df بگویید که فایل‌سیستم‌هایی را که علاقه‌ای به آن‌ها ندارید نمایش ندهد. برای مثال، ممکن است بخواهید شبه-فایل‌سیستم‌های squashfs را که هنگام نصب اپلیکیشن‌ها با دستور snap ایجاد می‌شوند، از نتایج حذف کنید. df -h -x squashfs 10- diff دستور diff دو فایل متنی را با هم مقایسه می‌کند، و تفاوت‌های بین آن‌ها را نشان می‌دهد. این دستور گزینه‌های زیادی دارد که با استفاده از آن‌ها می‌توانید خروجی آن را مطابق میل خود تنظیم کنید. گزینه –y فایل‌ها را روبه‌روی هم قرار می‌دهد تا بتوانید راحت‌تر آن‌ها را مقایسه کنید و با گزینه –w (width) می‌توانید طول خط را در خروجی مشخص کنید تا نتایج در ترمینال به خط بعدی نروند. برای مثال دو فایل lian1.txt و lian2.txt را در نظر بگیرید. گزینه –suppress-common-lines هم باعث می‌شود دستور diff خطوطی که یکسان هستند را در نتیجه نیاورد. این‌گونه می‌توانید فقط روی خط‌هایی تمرکز کنید که متفاوت هستند. diff -y -W 50 lian1.txt lian2.txt –suppress-common-lines 11- du اگر می‌خواهید چک کنید یک فایل یا دایرکتوری چقدر فضا اشغال کرده، می‌توانید از دستور du (disk usage) استفاده کنید و نام فایل یا دایرکتوری را مقابل آن بنویسید. اگر می‌خواهید اندازه‌ها را راحت‌تر بخوانید، جلوی این دستور از گزینه –h استفاده کنید. 12- echo دستور echo یک رشته متن را در پنجره ترمینال چاپ می‌کند (یا اصطلاحا echo می‌کند). مثلا دستور زیر کلمات «A string of text» را در پنجره ترمینال چاپ می‌کند. echo A string of text دستور echo می‌تواند مقدار متغیرهای محیطی (Environment Variables)، مثل $USER، $HOME و $PATH را هم نشان دهد. این سه متغیر مقادیر نام کاربر، دایرکتوری home کاربر و مسیری را که دستورات تایپ‌شده داخل خط فرمان در آن جستجو می‌شوند، نشان می‌دهد. echo $USERecho $HOMEecho $PATH کد زیر باعث پخش شدن یک صدای بوق کوتاه می‌شود. گزینه –e (کد escape) کاراکتر بعد از بک‌اسلش (یا همان کاراکتر escape شده) را به عنوان یک کاراکتر bell تفسیر می‌کند. echo -e “\a” دستور echo در اسکریپت‌های شل هم خیلی به‌دردبخور است. در یک اسکریپت می‌توان از این دستور برای تولید یک خروجی قابل مشاهده استفاده کرد تا بتوانیم پیشرفت اجرای یک اسکریپت را در خروجی ترمینال متوجه شویم. 13- exit دستور exit پنجره ترمینال را می‌بندد، اجرای یک اسکریپت شل را متوقف می‌کند، شما را از یک سشن SSH ریموت لاگ‌آوت می‌کند یا از حالت root خارج می‌کند. exit 14- find با استفاده از دستور find می‌توانید فایل‌های مورد نظر خود را در یک دایرکتوری و ساب‌‌دایرکتوری‌های آن جستجو کنید. برای استفاده از این دستور، باید محل شروع جستجو و چیزی را که باید جستجو کند، برای آن تعیین کنید. در این مثال، برای محل شروع جستجو یک نقطه گذاشته‌ایم که به معنای دایرکتوری جاری است و گزینه –name هم به دستور find می‌گوید که باید به دنبال فایل‌هایی باشد که نام آن‌ها با الگوی جستجوشده مطابقت داشته باشد. شما می‌‎توانید در جستجوی خود از wildcard هم استفاده کنید، که به‌جای آن هرچیزی می‌تواند بیاید و وقتی کاراکتر * باشد، دنباله‌ای از کاراکترها و وقتی ? باشد، فقط یک کاراکتر می‌تواند جای آن بنشیند (در صورتی عدم استفاده از wildcard، عبارتی که جستجو کرده‌اید بدون هیچ حرف بیشتری و عیناً جستجو می‌شود). ما از عبارت *lian* استفاده می‌کنیم تا هر فایلی که داخل آن نام lian را داشت پیدا شود. find . -name ‘*lian*’ همان‌طور که می‌بینیم دستور find لیستی از فایل‌ها و دایرکتوری‌هایی که نام آن‌ها حاوی عبارت lian بوده برگردانده است. حال اگر بخواهیم فقط بین فایل‌ها جستجو را انام دهیم، می‌توانیم از گزینه –type استفاده کنیم و حرف f را به عنوان پارامتر به آن بدهیم. پارامتر f به معنی فایل است. find . -type f -name ‘*lian*’ اگر می‌خواهید جستجو نسبت به بزرگ و کوچک بودن حرف‌ها حساس نباشد، از گزینه –iname استفاده کنید: find . -iname ‘*lian*’ 15- finger دستور finger درباره یک کاربر اطلاعات مختصری از جمله زمان آخرین لاگین کاربر، دایرکتوری home او و نام کامل حساب کاربری او به شما می‌دهد. 16- free دستور free خلاصه‌ای از میزان مصرف حافظه توسط کامپیوتر به شما می‌دهد. این حافظه هم RAM و هم حافظه swap را شامل می‌شود. با گزینه –h (قابل خواندن برای انسان) از واحدهایی برای نمایش اطلاعات حافظه استفاده می‌شود که برای انسان راحت‌تر قابل خواندن باشد. بدون این گزینه، اعداد به بایت نمایش داده می‌شوند. free -h 17- grep ابزار grep به دنبال خط‌هایی می‌گردد که حاوی یک عبارت جستجوشده باشند. وقتی داشتیم دستور alias را استفاده می‌کردیم، از grep برای جستجو میان خروجی یک برنامه دیگر، یعنی ps استفاده کردیم. دستور grep می‌تواند در محتویات فایل‌ها هم جستجو را انجام دهد. در اینجا ما از این دستور برای جستجوی کلمه Cisco در فایل‌های متنی دایرکتوری جاری استفاده کرده‌ایم: grep Cisco *.txt خروجی، لیستی از نام فایل‌های حاوی کلمه Cisco است که خط حاوی کلمه نیز جلوی آن‌ها نشان داده شده است. کلمه جستجوشده در هر خط هایلایت شده است. 18- groups دستور groups به شما می‌گوید که هر کاربر عضو چه گروهی است. groups lian_groupgroups lordm369 19- gzip دستور gzip فایل‌ها را فشرده می‌کند. این دستور در حالت پیش‌فرض فایل اصلی را پاک می‌کند و فقط نسخه فشرده‌شده را باقی می‌گذارد. برای این که فایل اصلی بعد از فشرده‌سازی حذف نشود، از گزینه –k (keep) استفاده کنید. gzip -k lian1.txt 20- head دستور head لیستی از 10 خط اول هر فایل به شما می‌دهد. اگر می‌خواهید تعداد خطوط بیشتر یا کمتری ببینید، از گزینه –n (number) استفاده کنید. در این مثال، ما ابتدا از دستور head با مقدار پیش‌فرض یعنی 10 خط و سپس با 5 خط استفاده کرده‌ایم. head ReadMe.md head -n 5 ReadMe.md 21- history دستور history لیستی از دستوراتی را نشان می‌دهد که روی خط فرمان اجرا کرده‌اید. با نوشتن علامت ! و نوشتن عدد خط مورد نظرتان، می‌توانید آن خط را دوباره اجرا کنید. !532 نوشتن دو علامت تعجب ( !! ) باعث می‌شود خط قبلی شما دوباره اجرا شود. !! 22- hostname اگر می‌خواهید نام هاست یا شبکه‌ی خود را بدانید، می‌توانید از دستور hostname استفاده کنید. اگر این دستور را به همراه گزینه –i استفاده کنید، آدرس IP شبکه شما هم نمایش داده می‌شود. 23- jobs دستور jobs تمام جاب‌های در حال اجرا به همراه وضعیت آن‌ها را نشان می‌دهد. جاب اساساً پروسسی است که توسط شل آغاز شده است. 24- kill با دستور kill می‌توانید یک پروسس را از خط فرمان ببندید. برای این کار باید ID آن پروسس (PID) را به دستور kill بدهید. در استفاده از این دستور احتیاط زیادی به خرج دهید و بی‌دلیل پروسس‌ها را نبندید. مثلا در این مثال، ما فرض کرده‌ایم firefox به دلیلی از کار افتاده است. برای یافتن PID برنامه فایرفاکس، از ترکیب ps و grep استفاده کرده‌ایم که در بخش alias راجع به آن‌ها صحبت کردیم. به شکل زیر می‌توانیم پروسس firefox را بیابیم و PID آن را به دست آوریم: ps -e | grep firefox وقتی PID را متوجه شدیم – که در این مورد 12601 است- می‌توانیم پروسس را با دستور زیر متوقف کنیم: kill 19208 25- less با دستور less می‌توانید فایل‌ها را بدون بازکردن آن‌ها در یک ویرایشگر متن ببینید. استفاده از این دستور راحت‌تر است، و احتمال تغییر اتفاقی و ناخواسته‌ی فایل هم هنگام استفاده از آن وجود ندارد. با دستور less می‌توانید به راحتی با کلیدهای نشانه‌‎ی بالا و پایین، PgUp و PgDn و Home و End فایل را اسکرول کنید. برای خروج از دستور less، کلید q را فشار دهید. برای مشاهده یک فایل با این دستور، کافی‌است نام فایل را جلوی less بنویسید: less ReadMe.md شما می‌توانید خروجی دستورات دیگر را هم در less پایپ کنید. برای مثال می‌توانیم برای لیست‌کردن کل هارددرایو با دستور ls، از خط زیر استفاده کنیم: ls -R / | less 26- locate این دستور مانند دستور search در ویندوز است و برای یافتن یک فایل می‌توانید از آن استفاده کنید. با استفاده از دستور –i در کنار این دستور می‌توانید جستجو را به صورت case-insensitive (عدم حساسیت به بزرگ یا کوچک‌بودن حروف) انجام دهید تا حتی اگر نام دقیق فایل را به یاد نداشتید بتوانید آن را پیدا کنید. اگر صرفا به یاد دارید که اسم یک فایل یک یا دو کلمه را داخل خود دارد، اما اسم دقیق آن را به یاد ندارید، می‌توانید از کاراکتر * استفاده کنید. برای مثال، با دستور زیر می‌توانید تمام فایل‌هایی را جستجو کنید که حاوی کلمه lian یا academy است، چه حروف آن بزرگ باشد چه کوچک. Locate –i academy*lian 27- ls این دستور احتمالا اولین دستوری است که برای خیلی از افراد، اولین زبانی است که می‌آموزند. این دستور فایل‌ها و فولدرهایی را لیست می‌کند که در دایرکتوری مشخص‌شده توسط شما قرار دارند. اگر هیچ دایرکتوری را مشخص نکنید، ls به طور پیش‌‎فرض آیتم‌های موجود در دایرکتوری جاری را نشان می‌دهد. این دستور آن‌قدر گزینه‌ها و امکانات متفاوتی دارد که در این مقاله نمی‌گنجد، و به همین خاطر اکیداً توصیه داریم که دستور ls را گوگل کنید و بیشتر درباره آن بخوانید. برای لیست‌کردن فایل‌ها و فولدرهای دایرکتوری جاری از این دستور استفاده کنید: ls برای لیست‌کردن فایل‌ها و دایرکتوری‌ها با جزییات بیشتر، از گزینه –l (long) استفاده کنید: ls -l برای نشان دادن اطلاعات با واحدهای قابل خواندن برای انسان (مگابایت و گیگابایت به جای بایت) از گزینه –h استفاده کنید: ls -lh برای دیدن فایل‌های مخفی، از گزینه -a (all files) استفاده کنید: ls -lha 28- man دستور man صفحات «man pages» برای یک دستور را نشان می‌دهد و البته به طور خودکار خروجی را در less پایپ می‌کند. صفحات man در واقع راهنمای کاربری یک دستور هستند. از آن‌جایی که man از less برای نمایش صفحات استفاده می‌کند، در خروجی آن می‌توانید از تمام امکانات و قابلیت‌های less استفاده کنید. برای مثال، اگر می‌خواید صفحات راهنمای دستور chown را ببینید، دستور زیر را تایپ کنید: man chown 29- mkdir با دستور mkdir می‌توانید روی فایل‌سیستم دایرکتوری‌های جدید بسازید. برای این کار اسم دایرکتوری جدید را جلوی mkdir بنویسید. اگر قرار نیست دایرکتوری جدید در دایرکتوری جاری ساخته شود، باید مسیر دایرکتوری جدید را مشخص کنید. برای ایجاد دو دایرکتوری جدید در دایرکتوری فعلی به اسم training و security در دایرکتوری فعلی، از دستورات زیر استفاده می‌کنیم: mkdir training mkdir security برای ساختن یک دایرکتوری جدید linux در دایرکتوری training، از این دستور استفاده می‌کنیم: mkdir training/events اگر می‌خواهید یک دایرکتوری ایجاد کنید ولی دایرکتوری مادر (parent directory) آن وجود ندارد و می‌خواهید آن را هم هم‌زمان ایجاد کنید، از گزینه –p استفاده کنید تا دستور mkdir همه دایرکتوری‌های بالادستی مورد نیاز را هم ایجاد کند. در دستور زیر، یک دایرکتوری fortigate داخل دایرکتوری Fortinet داخل دایرکتوری security که قبلا درست کرده بودیم، ایجاد می‌کنیم. دایرکتوری fortinet وجود نداشت، ولی ما با گزینه –p کاری کردیم که دستور mkdir آن را به صورت خودکار ایجاد کند: mkdir -p security/fortinet/fortigate 30- mv با دستور mv می‌توانید فایل‌ها و دایرکتوری‌ها را از یک دایرکتوری به دایرکتوری دیگر انتقال دهید، و می‌توانید هم‌زمان با جابه‌جا کردن آیتم، نام آن را هم تغییر دهید. برای انتقال فایل باید آدرس فایل و سپس آدرسی که می‌خواهید فایل به آن منتقل شود را جلوی دستور mv بنویسید. در این مثال، ما فایل SecuritySignals.pdf را از دایرکتوری ~/Downloads به دایرکتوری جاری منتقل می‌کنیم که با یک نقطه تنها نشان داده می‌شود. mv ~/Downloads/SecuritySignals.pdf . برای تغییر نام فایل، آن را به یک فایل جدید با نام جدید «انتقال» می‌دهید: mv SecuritySignals.pdf MS_SEC_SIG.pdf البته می‌شد انتقال و تغییر نام فایل را در یک قدم انجام داد: mv ~/Downloads/SecuritySignals.pdf ./MS_SEC_SIG.pdf 31- passwd دستور passwd به شما اجازه می‌دهد رمز عبور یک کاربر را تغییر دهید. کافی‌است دستور passwd را در ترمینال تایپ کنید تا بتوانید رمز خود را تغییر دهید. شما می‌توانید پسورد یک اکانت دیگر را هم تغییر دهید، ولی برای این کار باید از sudo استفاده کنید. بعد از این کار از شما خواسته می‌شود که پسورد جدید را دو بار وارد کنید. sudo passwd lordm369 32- ping با دستور ping می‌توانید اتصال خود از طریق شبکه به یک دستگاه دیگر در شبکه را بررسی کنید. این دستور معمولا برای عیب‌یابی مشکلات شبکه استفاده می‌شود. برای استفاده از دستور ping، آدرس IP یا نام ماشین هدف را به این دستور می‌دهیم. ping 192.168.100.50 دستور ping تا وقتی با Ctrl+C آن را متوقف کنید اجرا می‌شود. در این پنجره این اتفاقات دارد می‌افتد: دستگاه با آدرس آی‌پی 168.100.50 دارد به ریکوئست‌های پینگ ما پاسخ می‌دهد و پکت‌های 64 بایتی را که به آن ارسال کرده‌ایم بازمی‌گرداند. مقدار icmp_seq عددی است که دنباله پیام‌های ICMP را نشان می‌دهد و با استفاده از آن می‌توانیم متوجه شویم کدام پاسخ ارسال نشده است. مقدار ttl کوتاه‌شده «time to live» پکت است؛ هر بار که پکت از یک روتر عبور کند، این عدد یکی کم می‌شود. اگر این عدد به صفر برسد، دور انداخته می‌شود و دیگر انتقال داده نمی‌شود. هدف این کار جلوگیری از پرشدن ظرفیت شبکه به خاطر ایجاد حلقه‌ی بسته است. مقدار time زمانی است که طول کشیده تا پکت از کامپیوتر شما به دستگاه مقصد برسد و بازگردد. به زبان ساده، هرچه این زمان کمتر باشد بهتر است. برای تعیین‌کردن تعداد پکت‌های ارسال‌شده توسط دستور پینگ، از گزینه –c استفاده کنید: ping -c 5 192.168.100.50 برای شنیدن صدای پینگ، از گزینه –a استفاده کنید: ping -a 192.168.100.50 33- ps دستور ps پروسس‌های در حال اجرا را لیست می‌کند. اگر ps را بدون هیچ گزینه‌ی دیگری استفاده کنید، پروسس‌هایی که در شل جاری در حال اجرا هستند لیست می‌شوند. ps برای دیدن تمام پروسس‌های یک کاربر، از گزینه –u (user) استفاده کنید. این پروسس‌ها احتمالا لیست بلندی می‌شوند، پس بهتر است برای راحتی بیشتر خروجی را در less پایپ کنیم: ps -u lian_group | less برای دیدن تمام پروسس‌های در حال اجرا، دستور ps را با گزینه –e (every process) اجرا کنید: ps -e | less 34- pwd دستور pwd دایرکتوری جاری را (دایرکتوری که الان در آن هستید) با شروع از دایرکتوری root نشان می‌دهد: pwd 35- rm دستور rm برای حذف فایل‎‌ها و البته دایرکتوری‌ها در لینوکس به کار می‌رود. این دستور سه گزینه پرکاربرد دارد: – گزینه –i که باعث می‌شود پیش از حذف هر فایل، از شما پرسیده شود نسبت به حذف آن اطمینان دارید یا نه. می‌توان به طور کلی دستور rm را در فایل alias معادل دستور rm –i تعریف کرد تا پیش از پاک‌کردن هر فایل از شما پرسیده شود نسبت به حذف آن مطمئن هستید یا خیر. البته می‌توانید rm را معادل rm –I هم تعریف کنید، این گونه فقط وقتی که بخواهید بیش از 2 فایل را حذف کنید، و فقط یک بار از شما پرسیده می‌شود نسبت به حذف فایل‌ها مطمئن هستید یا نه. – گزینه –r برای حذف‌کردن یک دایرکتوری و تمام محتویات آن استفاده می‌شود. در حالت عادی دستور rm دایرکتوری‌ها را پاک نمی‌کند و دستور rmdir هم فقط دایرکتوری‌های خالی را پاک می‌کند. – گزینه –f فایل‌ها را بدون پرسیدن حذف می‌کند. این گزینه وقتی به کار می‌آید که rm را در فایل alias معادل rm –i تعریف کرده باشید، ولی بخواهید تعداد زیادی فایل را حذف کنید، بدون این که برای هر فایل از شما پرسیده شود نسبت به حذف آن مطمئن هستید یا نه. 36- rmdir از دستور rmdir برای حذف دایرکتوری‌های خالی از فایل‌سیستم لینوکس استفاده می‌شود. این دستور فقط در صورتی دایرکتوری‌ها را حذف می‌کند که خالی باشند؛ بنابراین اگر یک دایرکتوری پر بود، نمی‌توانید آن را با دستور rmdir حذف کنید. اگر یک دایرکتوری خالی داخل یک دایرکتوری دیگر بود، می‌توانید از گزینه –p استفاده کنید تا ابتدا دایرکتوری داخلی (child) حذف شود، و بعد دایرکتوری مادر (parent): Rmdir –p parent/child 37- shutdown با دستور shutdown می‌توانید لینوکس را خاموش یا ری‌استارت کنید. اگر shutdown را بدون هیچ پارامتری استفاده کنید، کامپیوتر شما بعد از یک دقیقه خاموش می‌شود. shutdown برای این که بلافاصله سیستم را خاموش کنید، از پارامتر now استفاده کنید. shutdown now شما می‌توانید خاموش‌شدن را زمانبندی کنید و به همه‌ی یوزرهایی که در سیستم لاگین هستند هم زمان خاموش‌شدن آن را اطلاع دهید. برای فهماندن زمان خاموش‌شدن به دستور shutdown، باید زمان دقیق را برای آن مشخص کنید. این زمان را می‌توانید به‌صورت تعداد دقیقه از زمان فعلی، مثل +90 تعیین کنید، یا می‌توانید به صورت مستقیم مثل 23:00 مشخص کنید. هر پیامی هم که پس از آن بنویسید، برای تمام کاربرهایی که در سیستم لاگین کرده‌اند ارسال می‌شود. !shutdown 23:00 Shutdown tonight at 23:00, save your work and log out before then 38- SSH با استفاده از دستور ssh می‌توانید از راه دور به یک کامپیوتر لینوکس وصل شوید و در اکانت خود لاگین کنید. برای ایجاد اتصال، باید نام کاربری و آدرس آی‌پی یا نام دامنه‌ی کامپیوتر هدف را وارد کنید. در این مثال، ما قصد داریم وارد حساب کاربری lordm369 در کامپیوتر به آدرس 192.168.2.127 شویم. وقتی اتصال ایجاد شد، پسورد آن حساب از ما پرسیده می‌شود. ssh lordm369@192.168.2.127 یوزرنیم و پسورد کاربر lordm369 اعتبارسنجی و قبول می‌شوند، و در حساب این کاربر لاگین می‌کنیم. دقت کنید که نام هاست از LordM به kali تغییر کرده است. حال حساب lordm369، دستور w را وارد می‌کند تا تمام کاربرهای موجود روی سیستم kali لیست شوند. در جلوی نام این کاربر نوشته شده که از pts/1 متصل شده است، که یک pseudo-terminal slave است؛ یعنی ترمینالی است که مستقیما به کامپیوتر متصل نیست. برای بستن سشن، exit را تایپ می‌کنیم تا به شل کامپیوتر LordM برگردیم. wexit 39- sudo دستور sudoهنگام انجام اقداماتی استفاده می‌شود که به مجوز root یا سوپریوزر نیاز دارند. sudo passwd lian_group 40- tail دستور tail لیستی از آخرین 10 خط یک فایل به شما می‌دهد. اگر دوست دارید تعداد خط‌های کمتر یا بیشتری ببینید، از گزینه –n (number) استفاده کنید. در این مثال، از tail با مقدار پیش‌فرض 10 خط استفاده کرده‌ایم و سپس همین دستور را با تعداد خط 5 تکرار کردیم تا فقط 5 خط آخر فایل نشان داده شوند. tail ReadMe.mdtail -n 5 ReadMe.md 41- tar با دستور tar می‌توانید یک فایل آرشیو (یا tarball) درست کنید که حاوی چندین فایل دیگر است. این‌گونه می‌توانید مجموعه‌ای از چندین فایل را راحت‌تر منتقل و ارسال کنید. معمولا از دستور tar خواسته می‌شود که آرشیو را فشرده‌سازی هم بکند؛ اگر از این دستور نخواهید آرشیو را فشرده کند، فایل آرشیو بدون فشرده‌سازی ایجاد می‌شود. برای ایجاد یک فایل آرشیو، باید به tar بگویید کدام فایل را داخل آرشیو قرار دهد، و دوست دارید چه نامی بر فایل آرشیو بگذارید. در این مثال، تمام فایل‌های موجود در دایرکتوری liancourses را که در دایرکتوری جاری قراردارد با دستور tar آرشیو می‌کنیم. در این‌جا از گزینه –c (create9 و –v (verbose) استفاده شده است. گزینه verbose حین اضافه‌شدن فایل‌ها به آرشیو، آن‌ها را در ترمینال لیست می‌کند و بازخوردی تصویری از فرایند ایجاد آرشیو به شما می‌دهد. گزینه –f (filename) پیش از نام مورد نظر برای آرشیو می‌آید که در این مورد lian.tar است. tar -cvf lian.tar liancourses/ برای این که به دستور tar بگویید فایل باید فشرده شود، دو راه دارید. اولین راه استفاده از گزینه –z (gzip) است. این گزینه به دستور tar می‌گوید که بعد از ایجاد آرشیو، از ابزار gzip برای فشرده‌کردن آن استفاده کند. معمولا پسوند .gz به این نوع آرشیو اضافه می‌شود. این پسوند باعث می‌شود هرکسی که می‌خواهد آرشیو را از حالت فشرده خارج کند، دقیقا بداند چه دستوراتی به tar برای بازیابی درست فایل‌ها بدهد. tar -cvzf lian.tar.gz liancourses/ این بار به خاطر زمان اضافه‌شده برای فشرده‌سازی آرشیو، ایجاد آن بیشتر طول می‌کشد. با استفاده از گزینه –j می‌توانید آرشیو را با یک الگوریتم فشرده‌سازی قدرتمندتر (bzip2) فشرده کنید که باعث می‌شود فایل نهایی کوچک‌تر شود. tar -cvjf lian.tar.bz2 liancourses توجه داشته باشید که گزینه –j به طور قابل ملاحظه‌ای از گزینه –z کُندتر است. اگر می‌خواهید تعداد زیادی فایل را آرشیو کنید، باید بین گزینه –z و –j انتخاب کنید؛ -z میزان فشرده‌سازی و سرعت معقولی دارد، ولی –j فشرده‌سازی بسیار بیشتر ولی سرعت بسیار کمتری دارد. همان‌طور که در اسکرین شات زیر می‌بینید، فایل .tar بیشترین حجم را دارد، فایل .tar.gz کوچک‌تر است، و فایل .tar.bz2 کمترین حجم را دارد. برای استخراج یک فایل آرشیو، از گزینه –x (extract9 استفاده کنید. گزینه‌های –v و –f در این‌جا رفتار یکسانی با هنگام ایجاد فایل آرشیو دارند. با دستور ls مطمئن شوید فایل‌ها را دارید از چه نوع آرشیوی استخراج می‌کنید، و سپس دستور زیر را وارد کنید: ls tar -xvf lian.tar برای استخراج فایل‌ها از آرشیو .tar.gz از گزینه –z (gzip) استفاده کنید. tar -xvzf lian.tar.gz برای استخراج آرشیو .tar.bz2 هم از گزینه –j به جای –z استفاده کنید. tar -xvjf lian.tar.bz2 42- top دستور top داده‌های مربوط به ماشین لینوکس شما را به صورت بلادرنگ نمایش می‌دهد. در قسمت بالای صفحه، خلاصه‌ای از وضعیت ماشین آمده است. اولین خط زمان و مدت‌زمانی را که کامپیوتر شما در حال کارکردن بوده است، تعداد کاربران که به آن لاگین کرده‌اند، و میزان بار میانگین را ظرف یک، پنج و پانزده دقیقه گذشته نشان می‌دهد. دومین خط تعداد تسک‌ها و وضعیت آن‌ها را نشان می‌دهد (running، stopped، sleeping و zombie). سومین خط اطلاعات CPU را نشان می‌دهد. معنی فیلدهای این خط به قرار زیر است: us: درصد زمانی از کل زمان کارکرد CPU که در «فضای کاربری» یا «user space» صرف اجرای پروسس‌ها برای کاربران می‌کند. sy: درصد زمانی از کل زمان کارکرد CPU که صرف اجرا کردن پروسس‌های سیستمی «فضای کرنل» یا «kernel space» می‌شود. ni: درصد زمانی از کل زمان کارکرد CPU که صرف اجرای پروسس‌هایی می‌شود که nice value برای آن‌ها به‌صورت دستی تنظیم شده است. id: درصد زمان idle برای CPU. wa: درصد زمانی از کل زمان کارکرد CPU که پردازنده منتظر کامل‌شدن I/O (ورودی/خروجی) است. hi: درصد زمان کارکرد CPU که صرف رسیدگی به وقفه‌های سخت‌افزاری می‌شود. hs: درصد زمان کارکرد CPU که صرف رسیدگی به وقفه‌های نرم‌افزاری می‌شود. st: درصد زمان ازدست‌رفته‌ی CPU به خاطر اجرای ماشین‌های مجازی (یا همان «steal time»). چهارمین خط مقدار کل حافظه‌ی فیزیکی، مقدار آزاد (free)، استفاده‌شده (used)، بافرشده و کش‌شده را نشان می‌دهد. پنجمین خط مقدار کل حافظه‌ی swap، مقدار آزاد، استفاده‌شده و در دسترس را (که در آن میزان حافظه‌ای که انتظار می‌رود از کش‌ها قابل بازیابی باشد هم محاسبه شده) نشان می‌دهد. top هنگام اجراشدن دستور top می‌توانید با فشاردادن دکمه‌ی E، می‌توانید واحدها را از بایت به واحدهایی تغییر دهید که خواندن آن‌ها راحت‌تر باشد (که در تصویر بالا هم همین کار را کرده‌ایم). معنی ستون‌های آمده به قرار زیر است: PID: آی‌دی پروسس USER: نام مالک پروسس PR: اولویت پروسس NI: مقدار nice value پروسس VIRT: میزان حافظه‌ی مجازی مورد استفاده‌ی پروسس RES: میزان حافظه رزیدنت مورد استفاده‌ی پروسس SHR: میزان حافظه اشتراکی مورد استفاده‌ی پروسس S: وضعیت پروسس که در پایین همین لیست آن را توضیح داده‌ایم %CPU: سهم درصدی پروسس از زمان کارکرد CPU در آخرین تازه‌سازی لیست %MEM: سهم درصدی پروسس از حافظه‌ی فیزیکی TIME+: کل زمان مورد استفاده‌ی تسک از CPU به صدم ثانیه COMMAND: نام یا خط دستور (اسم دستور + گزینه‌ها) پروسس می‌تواند یکی از پنج وضعیت زیر را داشته باشد: Uninterruptable Sleep R: Running S: Sleeping T: Traced (Stopped) Z: Zombie برای خروج از دستور top هم کافی‌است دکمه‌ی Q را فشار دهید. 43- touch با دستور touch هم می‌توانید برچسب زمانی (timestamp) روی فایل‌ها و دایرکتوری‌ها را عوض کنید، هم فایل‌های خالی جدید ایجاد کنید. پیش از آن که استفاده از دستور touch را بیاموزیم، باید بیشتر درباره timestamp فایل‌ها در لینوکس صحبت کنیم. در لینوکس هر فایل سه برچسب زمانی دارد: atime : آخرین زمانی که دستور یا اپلیکیشنی (مانند cat، nano یا vim) به فایل دسترسی داشته و آن را باز کرده است. mtime: آخرین باری که محتویات فایل تغییر کرده است. ctime: آخرین باری که مشخصات فایل (یا به عبارت بهتر attribute های فایل) یا محتوای آن تغییر کرده است. attribute در لینوکس شامل مجوزهای فایل، مالکیت فایل و محل قرارگیری آن است. برای دیدن مشخصات فایل از جمله برچسب‌‎های زمانی آن در لینوکس، می‌توانید از دستور stat استفاده کنید: stat file_name برای ایجاد یک فایل جدید در لینوکس با استفاده از دستور touch، می‌توانید به صورت زیر از این دستور استفاده کنید؛ با این دستور می‌توانید چندین فایل را هم به صورت هم‌زمان ایجاد کنید. touch example.txt touch file1 file2 file3 با استفاده از دستور touch –c می‌توانید برچسب زمانی فایل را تغییر دهید. در صورتی که فایل وجود داشته باشد، این دستور زمان آخرین دسترسی و تغییر فایل را به زمان فعلی تغییر می‌دهد، و اگر فایل وجود نداشت کاری نمی‌کند. با استفاده از دستور touch –a می‌توانید زمان دسترسی، و با استفاده از دستور touch –m زمان تغییر فایل را به زمان فعلی تغییر دهید. touch –c file1 touch –a file1 touch –m file1 با استفاده از دستورات touch –d و touch –t هم می‌توانید برچسب‌های زمانی را دقیقا به زمانی که دوست دارید تغییر دهید؛ برای مثال دستورات زیر برچسب‌های زمانی فایل را به 12 ژوئن سال 2018 ساعت 11:02 تغییر می‌دهند: touch –d ’12 June 2018 11:02’ file1 touch –t 201806121102 file1 44- uname با دستور uname می‌توانید بعضی از اطلاعات سیستمی مربوط به کامپیوتر لینوکسی را که دارید روی آن کار می‌کنید به دست آورید. از گزینه –a استفاده کنید تا همه اطلاعات را ببینید. از گزینه –s استفاده کنید تا نوع کرنل را ببینید. از گزینه –r استفاده کنید تا release کرنل را ببینید. از گزینه –v استفاده کنید تا version کرنل را ببینید. uname -a uname -s uname -r uname -v 45- useradd/userdel لینوکس معمولا توسط چندین کاربر استفاده می‌شود؛ یعنی معمولا چندین کاربر به طور هم‌زمان با سیستم یکسانی تعامل می‌کنند. با دستور useradd می‌توانید یک کاربر جدید ایجاد کنید و سپس با دستور passwd یک رمز عبور هم برای آن کاربر تعیین کنید. کافی است نام کاربر مورد نظرتان روبه‌روی این دستورها بنویسید. برای حذف کاربر هم کافی‌ست دستور userdel را تایپ کنید و سپس یوزرنیم کاربر را روبه‌روی آن بنویسید. به یاد داشته باشید که استفاده از این دستورات، نیاز به دسترسی sudo دارد. 46- usermod با استفاده از دستور usermod می‌توانید اطلاعات لاگین یک کاربر را تغییر دهید. برای مثال با usermod می‌توانید یک کاربر را به یک گروه اضافه کنید، گروه اصلی کاربر را تغییر دهید، نام کامل کاربر را تغییر دهید، دایرکتوری Home کاربر را تغییر دهید، شل پیشفرض کاربر را تغییر دهید و بسیاری کارهای دیگر. به عنوان مثال برای اضافه کردن یک کاربر به گروه sudoers، می‌توانیم از گزینه –a (add) و –G (group) استفاده کنیم: sudo usermod –aG sudo lian_group به یاد داشته باشید که این دستور را هم باید با دسترسی sudo اجرا کنید. 47- w دستور w تمام کاربرهایی را که در حال حاضر لاگین کرده‌اند نشان می‌دهد. w 48- wget دستور wget برای دانلود فایل از اینترنت استفاده می‌شود. با استفاده از ابزار wget می‌توانید فایل‌های مختلف را با استفاده از پروتکل‌های HTTP، HTTPS و FTP دانلود کنید. گزینه‌‌های مختلف دستور wget به شما اجازه می‌دهند چندین فایل را هم‌زمان دانلود کنید، دانلودها را ادامه دهید، پهنای باند را محدود کنید، دانلود را در پس‌زمینه انجام دهید، و بسیاری کارهای دیگر را انجام دهید. اما شاید مهم‌ترین کاری که می‌توانید با wget انجام دهید، کپی‌کردن صفحات وب به صورت محلی، یا به اصطلاح بهتر mirror کردن صفحات وب است. برای مثال برای mirror کردن وبسایت liangroup.net از دستور زیر استفاده می‌کنیم: wget –mkEpnp https://liangroup.net 49- whoami با دستور whoami می‌توانید ببینید با چه حسابی لاگین کرده‌اید. whoami 50- zip/unzip با دستورات zip و unzip می‌توانید فایل‌ها را به صورت آرشیو زیپ ذخیره کنید، یا آرشیوهای زیپ را استخراج کنید. کافی‌ست آدرس فایل را جلوی این دستورات بنویسید. نکات نهایی اگر ترمینال پر از دستور شده بود و خواستید آن را تمیز کنید، از دستور clear استفاده کنید. برای کامل‌کردن خودکار دستورات در ترمینال، کافی‌ست یک tab بعد از دستورات بزنید. برای مثال، اگر می‌خواهید به دایرکتوری Documents بروید، می‌توانید زمانی که در دایرکتوری مادر آن هستید، تایپ کنید cd Doc و سپس کلید تب را بزنید تا ترمینال به طور خودکار دستور را کامل کند. با میانبرهای Ctrl+C و Ctrl+Z می‌توانید هر دستوری را که در ترمینال در حال اجراست متوقف کنید. دستور Ctrl+C دستور را به طور کامل متوقف می‌کند، در حالی که Ctrl+Z دستور را pause می‌کند. اگر به صورت اتفاقی ترمینال را با میانبر Ctrl+S، می‌توانید آن را به راحتی با میانبر Ctrl+Q از حالت فریز خارج کنید. میانبر Ctrl+A شما را به ابتدای خط و Ctrl+E شما را به انتهای خط می‌برد. با علامت سمی‌کالن ( ; ) می‌توانید چند دستور جداگانه را در یک خط از هم جدا کنید : Command1;Command2;Command3. البته به جای این علامت می‌توانید از && هم استفاده کنید تا هر دستور فقط در صورتی اجرا شود که دستور قبلی آن اجرا شده باشد.
  9. راه اندازی سایت بر روی سرور مجازی لینوکس اوبونتو اگر قصد راه اندازی سایت بر روی vps یا سرور مجازی را دارید، با این مقاله همراه باشید و قدم به قدم با آموزش پیش روید. توجه کنید که راه اندازی سایت بر روی vps اوبنتو تنها یکی از راه های ایجاد وبسایت میباشد و روش های دیگری نیز برای برای اینکار وجود دارد. به عنوان مثال ساخت سایت بر روی سرور مجازی centos لینوکس نیز امکان پذیر است . راه اندازی سایت بر روی سرور مجازی تهیه virtual server مناسب: اولین کاری که باید انجام دهید خرید سرور مجازی مناسب از یک ارائه دهنده معتبر میباشد. بهتر است یک سرور با سیستم عامل اوبونتو تهیه نمایید. بعد از خرید و پرداخت مبلغ معمولا اطلاعات سرویس برای شما ایمیل میشود. اوبونتو چیست؟ اوبونتو یکی از توزیع های کاربر پسند و محبوب لینوکس میباشد که جایگاه خوبی بین کاربران مجازی دارد. این توزیع متن باز است و از زبان های مختلف از جمله زبان فارسی پشتیبانی میکند. نکته جالب دیگر در مورد اوبونتو این است که نصب و راه اندازی آن روی سرور آسان و راحت است. و شاید مهمترین دلیل محبوبیت این توزیع همین باشد. و از دیگر مزایای آن میتوان به امنیت بالا- به روز رسانی بخش های مختلف- محیط زنده و رایگان بودن و… اشاره کرد. اتصال به سرور: برای اتصال به سرور میبایست از پروتکل SSH استفاده نمایید. برای این کار میتوانید از نرم افزارهای جانبی مانند putty استفاده کنید. یا اگر سیستم عامل شما لینوکسی میباشد، از طریق ترمینال با دستور زیر به virtual server متصل شوید: ssh root@server-address بعد از متصل شدن به سرور می بایست پکیج های نرم افزاری آن را آپدیت نمایید تا بتوانید نرم افزارهای مربوطه را بر روی آن نصب کنید. برای آپدیت سیستم عامل اوبونتو دستور زیر را وارد نمایید: Sudo apt-get update نصب نرم افزارهای مورد نیاز روی سرور با سیستم عامل اوبونتو لینوکس: در این مرحله میبایست نرم افزارهای apache – mysql – perl – php را نصب نمایید. Apt-get install httpd php php-mysql perl mysql mysql-server تنظیمات Apache در سرور مجازی اوبونتو: حالا به قسمت فنی تر کار می رسیم. اگر میخواهید تنها یک وبسایت راه اندازی کنید، میتوانید فایل های مربوط به سایت خود را در مسیر /var/www کپی نمایید و از سایت خود استفاده کنید. نکته: شما می توانید چندین وب سایت را روی VPS راه اندازی نمایید و از پتانسیل واقعی سرور استفاده کنید. به منظور ایمنی سرور مجازی و سایت ها توصیه میشود که برای هر وبسایت یک کاربر ایجاد نمایید و سپس فایل های آن وبسایت را در پوشه public_html و پوشه اصلی /home نگهداری کنید. حالا مراحل بعدی را با هم انجام میدهیم: ۱−با دستور زیر یک یوزر جدید بسازید. useradd user1 ۲−با دستور زیر پسورد این کاربر را تعیین نمایید. Passwd user1 ۳−در دایرکتوری home یک فولدر برای کاربر مورد نظر ایجاد کنید. mkdir /home/user1/public_html ۴−دسترسی های لازم را به کاربر بدهید. /chown user1:user1/home/user1/public_html /chmod 755 /home/user1/public_html/ && chown 711 /home/example ۵− فایل زیر را با ویرایشگر باز کنید. Nano /etc/httpd/conf/httpd.conf به انتهای فایل بروید و کد زیر را در انتهای فایل کپی کنید. NameVirtualHost *:80 RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.user1website\.com$ [NC] RewriteRule ^(.*)$ http://user1website.com$1 [R=301,L] ServerName user1website.com ServerAlias www. user1website.com DocumentRoot /home/user1/public_html ErrorLog /var/log/ user1website.com_error_log CustomLog /var/log/ user1website.com_access_log combined DirectoryIndex index.html index.htm index.php index.php4 index.php5 SetOutputFilter DEFLATE Options -Indexes +IncludesNOEXEC +SymLinksifOwnerMatch +ExecCGI allow from all AllowOverride All سپس فایل را ذخیره کنید و از آن خارج شوید. ۶−حالا باید مطمئن شویم که نرم افزار apache هنگام بوت شدن سیستم فعال شود. برای این کار دستورات زیر را در ترمینال وارد نمایید: etc/init.d/httpd start/ chkconfig httpd on ۷−در نهایت میبایست یک a record برای آی پی سرور خود ثبت نمایید تا هر زمانی که آدرس سایت را وارد مرورگر میکنید، به این سرور هدایت شوید و محتوای سایتتان را ببینید. تنظیمات Mysql در سرور مجازی ۱− در جهت نصب Mysql بر روی اوبونتو، با دستورات زیر نرم افزار را هنگام بوت فعال نمایید: etc/init.d/mysqld start/ chkconfig mysqld on ۲− رمز عبور کاربر root را برای MySQL تنظیم کنید. برای این کار از دستورات زیر استفاده کنید: mysql -u root ;’UPDATE mysql.user SET Password = PASSWORD(‘P@ssw0rd’) WHERE User = ‘root نکته: به جای کلمه “P@ssw0rd” رمز عبور دلخواه خود را وارد نمایید. ۳−در مرحله بعد، دیتابیس را ایجاد کنید و دسترسی های لازم را به کاربر مربوطه بدهید: mysql -u root -p ;create database test ; grant all privileges on test.* to your_username@localhost ;FLUSH PRIVILEGES آپلود فایل های سایت در سرور مجازی حالا که تنظیمات mysql و apache را انجام دادید و این دو نرم افزار را فعال نمودید، میبایست فایل های مربوط به وبسایت خود را از طریق نرم افزارهای انتقال اطلاعات مانند Filezilla بر روی سرور آپلود نمایید. ۱−با نام کاربری مربوطه و نرم افزار filezilla به سرور متصل شوید. ۲−تمامی فایل های وبسایت خود را انتخاب و در مسیر /home/public_html بارگذاری کنید. در صورتی که تمام موارد بالا را درست انجام دهید، با وارد کردن آدرس دامنه خود میتوانید وبسایتتان را ببینید.
  10. قربانت . من یکی دوبار بیشتر از rufus استفاده نکردم . بعدا دانلود میکنم این برنامه که گفتی رو. چون فایل iso ویندوز یا لینوکسی که دانلود میکنم رو با برنامه winrar از فشرده خارجش میکنم و میریزم رو فلش . و اکثر سیستما هم قبول میکنن از طریق بوت. نیازی نداشتم فلش رو بوت کنم . البته همه فلش ها مثل هم نیستن باید بوت بشن برای اینکه بخوای فایل ایزو رو از حالت فشرده خارجش کنی باید موقعی که برنامه winrar رو نصب میکنی از اکستنشن فایل ها iso رو هم تیک بزنی تا ساپورت کنه این فرمت رو . چون تو حالت عادی تیک نخورده .
  11. وی ای پی بشن بهتره . کسایی هم که صلاحیت دارن بهشون وی ای پی داده بشه بعد از چک کردن اکانتشون. کلا عضویت اگه دومرحله ای بود بهتر بود که واسه طرف ایمیل تایید ارسال بشه و ایمیل فیک نزنه واس عضویت. کلا باید یوزر تو زحمت بیوفته وگرنه قدر یوزرشو نمیدونه. وی ای پی میشن هم دلیت اکانت میزنن عکسشو میذارن پروف . قال حصین (ع)
×
×
  • اضافه کردن...