پس از توضیحات کافی راجع به کار کردن و همچنین مدیریت سرور لینوکس، حالا وقت آن رسیده که به دستورات پرکاربرد و مهم لینوکس بپردازیم. دستوراتی که ما در خط فرمان لینوکس وارد میکنیم، در اینجا مختص توزیع CentOS لینوکس است که شباهت زیادی به Ubuntu دارد. البته باید گفت بیشتر دستورات لینوکس در تمامی توزیعهای آن شبیه به هم است و از این بابت نگرانی خاصی وجود ندارد. فقط چند تا دستور جزئی وجود دارد که مختص یک توزیع به خصوص است. به هر حال این اولین قسمت از آموزش دستورات سرور لینوکس است که در ادامه با ۲۰ تا از پرکاربردترین آنها آشنا خواهیم شد.
ما فرض میکنیم شما آموزشهای قبلی را دنبال کردید و حال آمادهاید تا درون محیط خط فرمان نرم افزار Putty یا خط فرمان توزیعهای میزکار لینوکس با استفاده از دستور SSH که به سرور متصل شدید، دستورات را به سرور لینوکس ارسال نمایید. فراموش نکنید که این یک دورۀ آموزشی به صورت سلسله وار است. پس شاید نیاز داشته باشید پیش نیازها و پس نیازها را رعایت کنید تا مفاهیم را کامل دریافت کنید.
این دستوراتی که شما در اینجا میآموزید، فرقی نمیکند روی چه ویرایشی از لینوکس اعمال میکنید. به این معنی که اگر رایانۀ شخصی شما هم لینوکس است میتوانید از این آموزش برای کار کردن با آن استفاده کنید. در ضمن برای یادگیری این دستورات شدیداً پیشنهاد میشود روی یک محیط آزمایشی اقدام به وارد کردن آنها کنید. مثلاً یک ماشین مجازی که روی رایانۀ شخصی خود برپا کردید. در آموزشهای قبلی به طور کامل نحوۀ انجام این کار را توضیح دادم.
کار کردن با دستورات لینوکس هم دارای آدابی است. مثلاً باید بدانید مشخصه برای هر دستور چه کاری را انجام میدهد و چگونه باید آن را تعیین کرد. به طور خلاصه مشخصههای هر دستور با یک خط فاصله – مشخص میشوند و در نوشتههای قبلی راجع به این موضوع هم توضیحات کامل داده شده است.
۱- دستور cd
در ویندوز ما برای اینکه به پوشه یا مسیر به خصوصی از حافظههای جانبی رایانه برویم، باید به پنجرۀ Explorer مراجعه میکردیم و با دوبار کلیک روی پوشهها از آخر به مسیر مورد نظر وارد میشدیم. ما همین کار را در لینوکس با دستور cd انجام میدهیم. البته باید اندکی با سیستم فایل لینوکس آشنا بوده و مسیر را در جلوی عبارت cd وارد کنیم تا لینوکس ما را به آنجا ببرد.
در دستور بالا میبینید که من با زدن دستور cd /root/csf به مسیر /root/csf وارد شدم. این را از آخرین قسمت عبارت داخل [] میتوانید ببینید. پس من الان داخل پوشۀ csf از مسیر /root هستم. از این نظر دقیقاً شبیه ویندوز است. زیاد گیج نشوید.
۲- دستور ls
این دستور یکی از پر استفاده ترین دستورات لینوکس است. اگر خواسته باشید بدانید در مسیری که همینک درون آن هستید، چه نوع فایلها و پوشههای قرار دارد، باید از دستور ls استفاده کنید. پس به سادگی میتوانید این دستور را وارد کرده و Enter کنید. فهرستی از فایل ها و پوشهها به شما نشان داده خواهند شد. البته این به صورت درهم و برهم است.
اگر میخواهید نتایج به صورت مرتب به همراه اطلاعات اضافه هر پرونده یا پوشه نمایش داده شود، باید از دستور ls -l استفاده کنید. این دستور نتیجه را به صورت زیر بر خواهد گرداند.
ستون اول جواز یا Permission هر پوشه یا فایل را نشان میدهد. عبارت root root نشان میدهد که آن فایل یا پوشه مختص کاربر root در گروه root است. حتماً میدانید که در لینوکس ما گروههای کاربری داریم که در هر گروه میتواند کاربران زیادی جای گیرند. این خاصیت چند کاربره بودن لینوکس است که هر گروه و کاربر میتواند دسترسیهای خاص خودش را به سیستم و نرم افزارهای روی آن داشته باشد.
ستون بعدی حجم پرونده را به بایت نشان میدهد. ستون یکی مانده به آخر تاریخ و زمان آخرین اصلاحیه را نمایش میدهد و ستون آخر هم نام پرونده یا پوشه را به ما نشان میدهد. این بود توضیح کامل دستور ls که حتماً و حتماً باید آن را یاد میداشتید. البته باید گفت در لینوکس ما پروندههای مخفی هم داریم که با نقطه در ابتدای آنها مشخص میشوند. اگر خواسته باشید این گونه پروندهها هم با دستور ls نمایش داده شوند، باید از دستور ls -la استفاده کنید.
۳- دستور pwd
دستور pwd برای نمایش مسیری که همینک در آنجا هستیم کاربرد دارد. مثلاً الان من از این دستور استفاده میکنم تا شما نتیجۀ آن را بینید. شما هم میتوانید چنین کار را روی سرور خود یا محیط آزمایشی انجام دهید.
۴- دستور clear
این دستور به سادگی تمامی دستورات و همچنین خروجی آنها را که تا به حال در پنجرۀ پایانه وارد شده است را پاک میکند. در اصل دستورات و نتایج را پاک نمیکند. بلکه صفحه را تا حدی میبرد بالا که هیچ دستوری نشان داده نشود. ولی شما با استفاده از لغزندۀ عمودی هنوز قادرید دستورات قبلی را ببینید.
اما توجه داشته باشید که در برخی از مواقع مثل زمانی که در حال کار کردن روی ماشین مجازی نصب شده روی رایانۀ خودتان هستید، ممکن است دستوراتی که از بالای صفحه خارج میشوند، دیگر قابل دسترس نباشند که در این صورت پیشنهاد میشود در این شرایط هم از SSH و نرم افزار Putty برای وصل شدن به سیستم مجازی لینوکس استفاده کنید.
۵- دستور lsblk
این دستور از دستورات سرور لینوکس که بر پایۀ List Block Devices میباشد، و قطعات حافظههای سخت افزاری رایانه یا سرور شما را نشان میدهند. البته کاری به RAM ندارد. مثلاً اگر یک حافظۀ جدیدی را به رایانه یا سرور متصل کرده باشید، با استفاده از این دستور میتوانید آن را در اینجا ببینید. با این دستور به سادگی میتواند حجم حافظۀ سخت سرور را هم ببینید. البته دستورات دیگری هم برای این کار وجود دارد.
۶- دستور dd
این دستور برای تبدیل و همچنین گرفتن یک نسخۀ دیگر روی یک حافظۀ دیگر استفاده میشود. بیشتر هم برای فایلهای iso مورد استفاده قرار میگیرد. بنابراین برای ساخت یک Bootable USB Flash میتوان از این دستور استفاده کرد. این دستور زیاد روی سرور استفاده نمیشود. ولی در هر صورت برای استفاده از آن باید نهایت دقت را به خرج داد. یک نمونه از این دستور در زیر نمایش داده شده.
dd if=/home/user/Downloads/debian.iso of=/dev/sdb1 bs=512M; sync
۷- دستور uname
دستور uname سرنامی از Unix Name میباشد که اطلاعاتی را راجع به رایانه، سیستم عامل و هستۀ آن به ما بر میگرداند. استفاده از uname بدون مشخصه فقط نام سیستم عامل را به ما نشان میدهد. اما اگر از uname -a استفاده کنیم، اطلاعات جامعتری را بر میگرداند.
پس اگر در جای خواستید بدانید نسخۀ سیستم عامل و همچنین معماری و توزیع آن چیست از دستور uname -a استفاده کنید.
۸- دستور history
این دستور از مجموعه دستورات سرور لینوکس به ما تاریخچهای از آخرین دستوراتی که تا به حال وارد خط فرمان لینوکس کردیم را نشان میدهد که میتواند هزار دستور آخر را همراه با شمارۀ آنها به ما برگرداند.
۹- دستور sudo
در صورتی که همینک با حساب کاربری ریشه یا همان مدیر کل وارد خط فرمان نشده باشید، با استفاده از دستور sudo میتوانید به طور موقتی دستورات را به عنوان مدیر کل یا ریشه وارد کنید. ممکن است با زدن این دستور از شما رمز عبور بخواهد که باید وارد کنید. کلاً پیشنهاد میشود زمانی که سرور را تحویل گرفتید، یک کاربر دیگر ایجاد کنید از این به بعد با کاربر جدید وارد سرور شوید. این کار به دلایل امنیتی شدیداً توصیه میشود که آموزش انجام این کار را در مقالات بعدی خواهم داد.
sudo add-apt-repository ppa:tualatrix/ppa
۱۰- دستور mkdir
با استفاده ازاین دستور میتوان یک پوشۀ جدید ساخت. اگر پوشهای قبلاً در همان مسیری که تعیین کردید با همان نام وجود داشته باشد، به شما خطا بر میگرداند که چنین پوشهای از قبل وجود دارد. شما باید جلوی دستور mkdir نام پوشۀ مورد نظر خود را بنویسید. این پوشه در همان مسیری که همینک در آن قرار دارید ساخته خواهد شد.
mkdir webnology
۱۱- دستور touch
یک دستور ساده اما کاربردی برای ساخت یک پروندۀ خالی و جدید. پس از عبارت touch نام فایل را بزنید و Enter کنید. خواهید دید که در مسیری که همینک هستید پروندۀ مورد نظر ساخته خواهد شد. دقت داشته باشید که این دستور هم مثل دستور mkdir اگر پروندهای از قبل با همین نام وجود نداشته باشد، پروندۀ جدید را میسازد. در غیر این صورت به شما خطا میدهد.
touch webnology.ir.txt
۱۲- دستور chmod
این دستور یکی از کاربردیترین دستوراتی است که کاربران لینوکس باید آن را یاد داشته باشند. از change mode گرفته شده و برای تغییر جواز دسترسیِ (permission) فایلها، پوشهها و اسکریپتها استفاده میشود. خیلی از اوقات که لینوکس و سرویسهای مورد نظر ما به خوبی کارشان را انجام نمیدهند، مثلاً قسمتی از سایت قابل بازدید برای بازدید کنندگان نیست، دلیلش تنظیم غلط جواز دسترسیها است.
Read (r)=4 Write(w)=2 Execute(x)=1
راجع به جواز دسترسیها سعی میکنم درون یک نوشتۀ جداگانه توضیحات کامل را ارائه کنم. اما به طور خلاصه باید گفت، یک پرونده یا پوشه ۳ نوع دسترسی خواندن، نوشتن و اجرا کردن دارد که توسط ۳ دسته کاربر، گروه و دیگر کاربران قابل دسترس است. تعیین اینکه چه دسته از کاربران با چه جوازهایی قادر به ویرایش، خواندن و اجرا کردن پرونده یا پوشۀ مورد نظر باشند، ما باید permission یا جواز دسترسی خاص آن را تعیین کنیم. که این کار را با دستور chmod به صورت زیر انجام میدهیم.
chmod 777 abc.sh
۱۳- دستور chown
با این دستور از دستورات سرور لینوکس میتوانیم تعیین کنیم که یک پوشه یا پرونده متعلق به چه کاربر یا گروهی از گروههای سرور لینوکس ماست. از این دستور باید به شکل زیر استفاده کنید.
chown apache:apache public_html
این دستور پوشۀ public_html را متعلق به کاربر و گروه apache میکند.
۱۴- دستور yum یا apt
این دستور برای نصب و مدیریت بستههای نرم افزاری مورد استفاده قرار میگیرد. مثلاً فرض کنید ما میخواهیم وب سرور آپاچی یا سرویس sendmail برای ارسال و دریافت ایمیل را روی سرور CentOS نصب کنیم. باید از دستور زیر استفاده کنیم. yum برای نصب و مدیریت بستهها روی سرور redhat base مورد استفاده قرار میگیرد که CentOS هم جزئش است. در صورتی که apt برای نصب بستهها روی توزیعهای بر پایۀ Debian استفاده میشود، مثل Ubuntu.
ما با این دستور خیلی کار داریم. در آینده با جوانب بیشتر این دستور آشنا خواهید شد. گول اعداد و حروف زیاد دستورات لینوکس مثل این دستور را هم نخورید. وقتی آشنایی شما با دستورات سرور لینوکس بیشتر شد، ترس شما کاملاً میریزد.
۱۵- دستور tar
ما در لینوکس با دستورات فشرده کردن و از حالت فشرده خارج کردن پروندهها زیاد کار میکنیم. پس باید دستوری هم برای این کار وجود داشته باشد. به همین منظور ما از دستور tar به همراه مشخصههای آن استفاده خواهیم کرد. شکل کلی این دستور برای از حالت فشرده خارج کردن یک پروندۀ tar.gz به قرار زیر است. هر کدام از مشخصههای این دستور دارای کاربردی هستند.
# tar -zxvf abc.tar.gz
۱۶- دستور cal
دستور cal یک دستور ساده اما کاربردی برای نمایش تقویم البته به میلادی است. از این دستور میتوانید بدون هیچ گونه مشخصهای استفاده کنید. البته که این دستور هم برای سفارشی شدن دارای مشخصههایی هم است.
۱۷- دستور date
این دستور برای نمایش تاریخ و زمان سیستم به کار میرود. حتی با این دستور میتوانید تاریخ و زمان سیستم را هم تغییر دهید. دستور زیر یک نمونه برای انجام این کار است. این دستور برای اسکریپت نویسی خیلی مورد نیاز است. توجه داشته باشید که تغییر تاریخ و زمان سیستم را فقط کاربر ریشه میتواند انجام دهد.
date --set='1 sep 2015 22:57'
۱۸- دستور cat
این دستور برای الحاق محتوای چندین پرونده به داخل یک پرونده استفاده میشود. یا حتی قادرید با این دستور محتوای متنی یک فایل ساده را روی خروجی خط فرمان چاپ کنید. یعنی ببینید درون یک فایل چیست. در تصویر زیر من میخواستم بدانم درون پرونده x-arf.txt چی بود.
۱۹- دستور cp
این دستور برای کپی کردن پرونده از یک مکان به جایی دیگر است. این دستور به صورت زیر استفاده میشود. مسر اول که /home/user/Downloads است مسیر اصلی پروندهای است که قصد کپی کردنش را داریم. مسیر دوم که /home/user/Desktop است مسیر مقصد برای کپی کردن فایل است. abc.tar.gz که نام فایل مور نظر است. از این دستور هم زیاد استفاده میشود. خوب است که طریقۀ کار کردن با آن را به خوبی بیاموزید.
cp /home/user/Downloads abc.tar.gz /home/user/Desktop
۲۰- دستور mv
و دستور آخر از اولین دسته دستورات سرور لینوکس mv نام دارد که برای جابه جا کردن یک پرونده از یک مسیر به مسیری دیگر استفاده میشود. البته اگر مسیر اصلی پرونده و مسیر مقصد آن فایل که قرار است جابه جا شود یکی باشد، برای تغییر نام یک پرونده هم استفاده میشود. یعنی ما در لینوکس دستوری برای تغییر نام پرونده نداریم. باید از همین دستور استفاده کنیم.
mv /home/user/Downloads abc.tar.gz /home/user/Desktop
این بود از ۲۰ دستور اول و پرکابردی لینوکس که برای مدیریت سرور لینوکس هم ما باید آنها را یاد میداشتیم. شاید لازم نباشد این دستورات را یکی یکی حفظ کنید. اینجا کلاس درس نیست! همین که برای یادگیری سرور لینوکس پیش رفته و با قسمتهای مختلف آن آشنا شوید، کم کم همۀ این دستورات را به خاطر میسپارید بدون اینکه خودتان متوجه آن بشوید. در هر صورت دستورات سرور لینوکس تمام نشده و در نوشتههای دیگر از سایت وبنولوژی به بیشتر این دسورات اشاره خواهم کرد. کافی است که پیگیر قضیه باشد و خودتان هم دست به کار شده و کدها را یکی یکی روی محیط آزمایشی امتحان کنید و نتیجه را بررسی کنید. بهترین روش یادیگری همین است.
۰ دیدگاه