دستورات لینوکس در DevOps
دستورات لینوکس برای مهندسان DevOps ضروری هستند، زیرا مدیریت سیستم، اتوماسیون و عیب یابی را سریع و قابل اعتماد میکنند. چه در حال مدیریت ماشینهای مجازی ابری باشید، چه در حال ساخت خطوط لوله CI/CD یا اشکالزدایی کانتینرها باشید، خط فرمان ابزارهایی را در اختیار شما قرار میدهد تا سیستمها را بررسی کنید، وظایف را خودکار کنید و مشکلات را به سرعت برطرف کنید.
دستورات پایه
دستور pwd
دستور pwd به شما کمک میکند مکان فعلی خود را در سیستم فایل شناسایی کنید:
`pwd` - Print Working Directory
دستور ls
دستور ls برای فهرست کردن فایلها و دایرکتوریها در فهرست فعلی استفاده میشود:
`ls` - List Files and Directories
| دستور | شرح |
|---|---|
| ls | «هر مسیر تعریف شده» پس از دستور «ls» تعریف میشود، همه موارد مربوط به آن مکان را نمایش میدهد. |
| ls -l | پرچم `-l` برای نمایش لیست تمام محتویات با برخی اطلاعات اضافی مانند مجوز فایل یا پوشه، مهر زمان استفاده می شود. |
| ls - a | پرچم `-a` برای دیدن فایل ها و پوشه های مخفی استفاده می شود. |
دستور uname
دستور uname اطلاعات سیستم را بازیابی میکند:
uname - Print System Information
توجه: با افزودن پرچم «-r» به دستور «uname»، میتوانید نسخه انتشار هسته را نمایش دهید.
uname -r Print Kernel Release Information
دستور cd
دستور cd به شما اجازه می دهد تا با تغییر دایرکتوری فعلی خود در سیستم فایل حرکت کنید.
cd - Change Directory
دستور clear
دستور clear صفحه ترمینال را پاک میکند و یک فضای کاری تمیز فراهم میکند.
clear - Clear the Terminal Screen
دستور whoami
whoami نام کاربری کاربر فعلی وارد شده به ترمینال را برمیگرداند.
whoami - It returns the username of the current user logged into the terminal
دستور history
این دستور برای نمایش تاریخچه دستوری که قبلا اجرا شده است استفاده میشود.
history
دستور free
این دستور برای بررسی جزئیات مربوط به حافظه در سیستم شما استفاده میشود.
free
دستور nslookup
nslookup برای به دست آوردن اطلاعات برای سرور DNS استفاده میشود. مخفف Name Server Lookup است.
nslookup <domain name>
دستور ssh-keygen
ssh-keygen برای ایجاد یک اتصال SSH ایمن از دستگاه میزبان شما به هر سرور راه دور استفاده میشود. این یک جفت کلید عمومی/خصوصی تولید میکند.
ssh-keygen -t rsa
دستور curl
curl ابزاری است که برای واکشی دادهها و ارسال دادهها از طریق اینترنت استفاده میشود. میتواند از پروتکل های مختلفی مانند HTTPS، SMTP و FTP استفاده کند.
curl [options] [URL]
دستور curl -o
پرچم curl -o دادهها را در یک فایل در ماشین محلی ذخیره میکند.
`curl -o` [file_name] [URL...]
دستور apt-get
دستور apt-get برای مدیریت بستهها در لینوکس استفاده میشود. APT مخفف Advanced Packaging Tool است و کاربرد اصلی آن نصب، بهروزرسانی، ارتقا و حذف بستهها است.
apt-get [options] command
دستور du
دستور du برای بررسی فضای استفاده از دیسک استفاده میشود.
du
دستور df
دستور df برای بررسی فضای دیسک موجود در سیستم استفاده میشود.
df -h
دستور ifconfig
دستور ifconfig برای مشاهده اطلاعات مربوط به رابط شبکه شما استفاده میشود.
ifconfig [OPTIONS] [INTERFACE]
دستور ip
دستور ip جایگزین مدرن دستور ifconfig است. از این دستور برای مشاهده و مدیریت تنظیمات شبکه استفاده میشود. با استفاده از این دستور میتوانید آدرسهای IP را بررسی کنید، رابطهای شبکه را پیکربندی کنید و جداول مسیریابی را مشاهده کنید.
ip [OPTIONS] OBJECT {COMMAND | help}
ایجاد فایلها و دایرکتوریها
در DevOps، ایجاد و مدیریت فایلها و دایرکتوریها یک کار رایج است. در اینجا چند دستور ضروری آورده شده است:
برای ایجاد دایرکتوریها
۱. برای ایجاد یک دایرکتوری واحد:
mkdir GFG
۲. برای ایجاد چندین دایرکتوری:
mkdir GFG1 GFG2 GFG3
۳. برای ایجاد مسیرهای دایرکتوری (دایرکتوریهای درون دایرکتوریهای دیگر):
mkdir -p /GFG/GFG1/GFG2
۴. برای ایجاد مجموعهای از دایرکتوریهای شمارهگذاریشده:
mkdir gfg{1..3}
برای ایجاد فایلها
ما میتوانیم با استفاده از دستورات مختلفی مانند vi، touch، echo، nano و غیره در لینوکس فایل ایجاد کنیم. جدول زیر موارد استفاده هر دستور را توضیح میدهد:
| دستور | هدف | مثال | توضیحات |
|---|---|---|---|
| touch | ایجاد یک فایل خالی | touch file.txt | میتواند چندین فایل ایجاد کند: touch a.txt b.txt |
| echo | ایجاد یک فایل با مقداری محتوا | echo "Hello" > hello.txt | اگر فایل از قبل وجود داشته باشد، رونویسی میکند |
| cat | ایجاد یک فایل و نوشتن در آن | cat > notes.txt | محتوا را تایپ کنید، سپس Ctrl + D را برای ذخیره فشار دهید |
| nano | باز کردن یک ویرایشگر متن ترمینال | nano file.txt | کاربرپسند؛ برای خروج و ذخیره، Ctrl + X را فشار دهید |
| vi or vim | باز کردن یک ویرایشگر ترمینال قدرتمند | vi file.txt | برای درج، i، برای خروج، Esc و برای ذخیره، wq: را فشار دهید. |
کپی و پیست فایلها و دایرکتوریها
دستور cp برای کپی کردن و چسباندن فایلها یا دایرکتوریها در لینوکس استفاده میشود. در اینجا چند گزینه و مثال رایج آورده شده است:
برای کپی کردن یک فایل با استفاده از verbosity و force:
cp -rvf gfg1 gfg
حذف فایلها و دایرکتوریها
برای حذف فایلها یا دایرکتوریها در DevOps، میتوانید از دستور rm استفاده کنید. محتاط باشید، زیرا دادهها را به طور دائم حذف میکند. در اینجا مثالی آورده شده است:
برای حذف یک دایرکتوری و محتویات آن:
rm -rvf gfg
تغییر نام فایلها و دایرکتوریها
دستور mv برای تغییر نام فایلها یا دایرکتوریها استفاده میشود. برای مثال، برای تغییر نام یک دایرکتوری از “gfg” به “gfg-devops”، میتوانید از دستور زیر استفاده کنید:
mv gfg gfg-devops
مدیریت کاربر
مدیریت کاربران در لینوکس یکی از جنبههای حیاتی DevOps و مدیریت سیستم است. مدیریت کاربران و مجوزهای آنها تضمین میکند که سیستمهای شما ایمن، سازمانیافته و مطابق با نیازهای سازمان شما باشند. در اینجا مروری بر مدیریت کاربران در لینوکس در چارچوب DevOps داریم:
۱. ایجاد یک کاربر
برای ایجاد یک کاربر جدید در لینوکس، میتوانید از دستور useradd استفاده کنید. به عنوان مثال:
sudo useradd [usernam]
۲. تنظیم رمز عبور
پس از ایجاد کاربر، با استفاده از دستور passwd یک رمز عبور تنظیم کنید:
sudo passwd [username]
۳. حذف یک کاربر
برای حذف یک کاربر، از دستور userdel استفاده کنید:
sudo userdel [username]
۴. تغییر به کاربری دیگر
دستور su به شما امکان میدهد با وارد کردن نام کاربری به عنوان آرگومان، به حساب کاربری دیگری بروید. برای خروج از حساب کاربری و بازگشت به جلسه اصلی خود، میتوانید به سادگی exit را تایپ کنید.
su [USER NAME]
۵. تغییر نام کاربر
برای تغییر نام کاربری از نام فعلی (oldname) به نام جدید (newname)، از دستور زیر استفاده کنید:
sudo usermod -l [newname] [oldname]
مدیریت گروه
یک گروه مجموعهای از حسابهای کاربری است که برای مدیران سیستم جهت مدیریت و اعمال مجوز به تعدادی از کاربران بسیار مفید است.
| دستور | شرح |
|---|---|
| sudo groupadd | ساخت گروه جدید |
| sudo groupdel | حذف گروه |
| sudo usermod -g | اضافه کردن کاربر به گروه |
مدیریت فرآیند
مدیریت فرآیند، فرآیند کنترل و نظارت بر فرآیند در حال اجرا در سیستم لینوکس است.
دستور ps
دستور ps فرآیندهای در حال اجرا را نمایش میدهد.
ps aux
دستور top
دستور top برای نظارت بر حافظه استفاده میشود و نمایی از فرآیندهای سیستم را به صورت بلادرنگ (real-time) نشان میدهد.
top
دستور kill
دستور kill برای خاتمه دادن به یک فرآیند با استفاده از PID آن استفاده میشود.
kill 1234
دستور pidof
دستور pidof برای بدست آوردن PID یک فرآیند در حال اجرا بر اساس نام آن استفاده میشود.
pidof bash
دستور systemctl
دستور systemctl برای شروع/توقف/راهاندازی مجدد سرویسهای مدیریتشده توسط systemd (مانند Docker، Nginx و غیره) توسط کاربر استفاده میشود.
sudo systemctl status nginx
پرمیژنهای سیستم فایل لینوکس
در لینوکس، برای افزایش امنیت فایل و دایرکتوری، باید از پرمیژنها استفاده کنیم. در مجموع سه نوع پرمیژن برای فایل وجود دارد: خواندن، نوشتن و اجرا.
سه نوع پرمیژن فایل به شرح زیر وجود دارد:
- user (u): مجوزهای مورد استفاده برای کاربر فایل.
- group (g): مجوز مورد استفاده توسط عضو گروه.
- other (o): مجوز مورد استفاده توسط سایر کاربران.
برای مثال، فرض کنید یک فایل دارای مجوزهای خواندن است که برای کاربر مجاز است. در این حالت، کاربر فقط میتواند آن فایل را بخواند، در حالی که گروه و دیگران قادر به خواندن آن نخواهند بود.
دستور ls -ld
برای بررسی مجوز دایرکتوری استفاده میشود.
ls -ld
| پرمیژن | دسترسی برای یک فایل | دسترسی به یک دایرکتوری |
|---|---|---|
| Read (r) | نمایش محتویات فایل و کپی کردن فایل | مشاهده محتویات دایرکتوری |
| Write (w) | تغییر محتویات فایل | تغییر محتویات یک دایرکتوری |
| Execute (x) | اجرای فایل در صورت فایل دارا بودن مجوز اجرایی | اجازه دسترسی به دایرکتوری با استفاده از دستور cd |
پرمیژن با عدد و نماد
| عدد | نوع پرمیژن | نماد |
|---|---|---|
| 0 | No permission | --- |
| 1 | Execute | --x |
| 2 | Write | -w- |
| 3 | Execute +Write | -wx |
| 4 | Read | r-- |
| 5 | Read + Execute | r-x |
| 6 | Read +Write | rw- |
| 7 | Read + Write + Execute | rwx |
دستور chmod
این دستور برای تغییر سطح دسترسی فایلها و دایرکتوریها استفاده میشود.
chmod <permission of user , group , other> {filename }
دستور chown
برای تغییر مالک فایل و دایرکتوری استفاده میشود.
chown [owner_name] [file name]
دستور cat
برای خواندن و الحاق متن داخل فایلها استفاده میشود. با کمک این دستور میتوانیم محتوای داخل فایل را نمایش دهیم.
cat <flag> {filename}
| دستور | شرح |
|---|---|
| cat -b | این پرچم عدد را به خط متن اضافه میکند. |
| cat -E | این پرچم، علامت $ را به انتهای هر خط اضافه میکند. |
دستور grep
این فیلتر، یک فایل را برای یافتن الگوی خاصی از کاراکترها جستجو میکند و تمام خطوطی را که حاوی آن الگو هستند، نمایش میدهد.
grep <flag or search_word> {file name}
| دستور | شرح |
|---|---|
| grep -i | نتایج را برای رشتههای غیر حساس به حروف بزرگ و کوچک ارائه میدهد. |
| grep -n | رشتههای مربوطه و شماره خطهای مربوطه را بازیابی کنید. |
| grep -v | خروجی خطوطی را ارائه میدهد که حاوی رشته جستجو نیستند. |
دستور sort
sort filename
دستور head
دستور head برای نمایش چند خط اول یک یا چند فایل متنی استفاده میشود.
head -n 2 gfg
دستور tail
دستور tail برای نمایش چند خط آخر یک یا چند فایل متنی استفاده میشود.
tail -n 3 gfg
دستور find
دستور find برای جستجوی فایلها و دایرکتوریها بر اساس معیارهای مختلفی مانند نام، اندازه، نوع و تاریخ تغییر استفاده میشود.
find [path] [expression]
دستور stat
دستور stat برای نمایش جزئیات فرادادههای مجوز و مالکیت استفاده میشود.
stat data.txt
درباره فرشید نوتاش حقیقت
همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرمافزارهای آزاد/ متنباز و سیستمعامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.
نوشتههای بیشتر از فرشید نوتاش حقیقتاین سایت از اکیسمت برای کاهش جفنگ استفاده میکند. درباره چگونگی پردازش دادههای دیدگاه خود بیشتر بدانید.














































دیدگاهتان را بنویسید