لینوکس برای مهندس DevOps: 101🚀🎯🔥

آیا شما یک مهندس DevOps هستید که به دنبال ساده سازی عملیات خود و مدیریت موثر زیرساخت های خود هستید؟ اگر چنین است، ممکن است قبلاً بدانید که لینوکس یک ابزار مهم در جعبه ابزار شما است. اما دقیقاً چرا لینوکس برای متخصصان DevOps بسیار مهم است؟ بیایید بررسی کنیم که چرا تسلط بر دستورات لینوکس ضروری است، کمی تاریخچه پشت لینوکس، و چگونه می تواند زندگی کاری شما را آسان کند.
چرا لینوکس برای مهندسان DevOps؟
لینوکس را به عنوان ستون فقرات بسیاری از محیط های سرور در نظر بگیرید. این مانند پایه قابل اعتماد و محکم خانه ای است که از هر چیزی که در بالا ساخته شده است پشتیبانی می کند. به عنوان یک مهندس DevOps، خواهید دید که بسیاری از ابزارها و محیط های شما بر روی لینوکس اجرا می شوند. در اینجا دلیل آن است:
-
ثبات و عملکرد: لینوکس به دلیل پایداری و عملکرد خود شناخته شده است و آن را برای اجرای برنامه ها و سرویس های حیاتی ایده آل می کند.
-
منبع باز: لینوکس منبع باز است، به این معنی که می توانید آن را مطابق با نیازهای خاص خود تغییر داده و سفارشی کنید.
-
تسلط بر خط فرمان: بسیاری از وظایف DevOps از طریق خط فرمان انجام می شود و لینوکس یک محیط قدرتمند و انعطاف پذیر برای این عملیات فراهم می کند.
تاریخچه مختصر لینوکس
آیا تا به حال فکر کرده اید که چگونه لینوکس به چنین نیروی مسلط در دنیای IT تبدیل شده است؟ در اینجا یک نگاه سریع به گذشته است:
1991لینوکس توسط لینوس توروالدز، دانشجوی فنلاندی، که میخواست جایگزینی رایگان و متنباز برای سیستمعاملهای تجاری یونیکس بسازد، ایجاد شد.
رشد: در طول سالها، لینوکس از یک پروژه شخصی ساده به یک سیستم عامل قوی تبدیل شده است که در همه چیز از سرورها و رایانههای رومیزی گرفته تا گوشیهای هوشمند و سیستمهای تعبیه شده استفاده میشود.
در مورد چگونگی تکامل لینوکس و تأثیر آن بر محاسبات مدرن کنجکاو هستید؟ برای آشنایی عمیق با دستورات لینوکس و نحوه استفاده از آنها در پروژه های شرکتی بلادرنگ، وبلاگ ما را بررسی کنید.
دستورات لینوکس برای مهندسان DevOps
در پروژه های نرم افزاری شرکتی بلادرنگ، مهندسان DevOps اغلب از دستورات لینوکس برای مدیریت سیستم ها، سرورها و پیکربندی ها استفاده می کنند. در اینجا دستورات ضروری لینوکس همراه با مثال آمده است:
-
اطلاعات سیستم:
-
uname -a– نمایش اطلاعات سیستم - مثال:
uname -aنسخه هسته، معماری سیستم و نام میزبان را برمی گرداند.
-
-
مدیریت فایل و دایرکتوری:
-
ls -la– لیست فایل ها با اطلاعات دقیق - مثال:
ls -laهمه فایل ها، از جمله فایل های مخفی را به همراه مجوزها، مالکان و اندازه آنها فهرست می کند. -
cp file1 file2– کپی فایل ها - مثال:
cp /etc/config.txt /backup/را کپی می کندconfig.txtفایل به دایرکتوری پشتیبان. -
mv file1 file2– انتقال یا تغییر نام فایل ها - مثال:
mv test.txt /tmp/حرکت می کندtest.txtبه/tmp/دایرکتوری -
rm -rf directory_name– حذف فایل ها یا دایرکتوری ها - مثال:
rm -rf /old_files/را حذف می کندold_filesدایرکتوری و محتویات آن
-
-
مجوزها و مالکیت:
-
chmod 755 file.txt– تغییر مجوزهای فایل - مثال:
chmod 755 script.shبه مالک فایل اجازه می دهد فایل را بخواند، بنویسد و اجرا کند، در حالی که دیگران فقط می توانند آن را بخوانند و اجرا کنند. -
chown user:group file.txt– تغییر مالکیت فایل - مثال:
chown devops:admin config.ymlصاحب آن را تغییر می دهدconfig.ymlفایل بهdevopsو گروه بهadmin.
-
-
مدیریت بسته (اوبونتو):
-
apt-get update– لیست بسته ها را به روز کنید. - مثال:
sudo apt-get updateلیست بسته را بهروزرسانی میکند تا آخرین نسخههای نرمافزار موجود از مخازن را شامل شود. -
apt-get install– بسته ها را نصب کنید. - مثال:
sudo apt-get install nginxوب سرور NGINX را روی سیستم نصب می کند.
-
-
شبکه سازی:
-
ping www.example.com– اتصال شبکه را بررسی کنید. - مثال:
ping google.comبررسی می کند که آیا سیستم می تواند به سرورهای Google دسترسی پیدا کند یا خیر. -
ifconfig– نمایش یا پیکربندی رابط های شبکه - مثال:
ifconfig eth0اطلاعات شبکه را برایeth0رابط کاربری -
netstat -tuln– نمایش پورت های باز و اتصالات فعال - مثال:
netstat -tulnتمام پورت های گوش دادن فعال در سیستم را لیست می کند.
-
-
مشاهده و مانیتورینگ فایل:
-
tail -f /var/log/syslog– گزارش های سیستم را در زمان واقعی نظارت کنید. - مثال:
tail -f /var/log/nginx/error.logبهروزرسانیهای بلادرنگ گزارشهای خطای NGINX را نشان میدهد. -
dmesg– نمایش پیام های سیستم (بافر حلقه هسته). - مثال:
dmesg | grep errorپیام های سیستم را فیلتر می کند تا فقط خطاها را نشان دهد. -
cat file.txt– مشاهده محتویات یک فایل - مثال:
cat /etc/hostsمحتویات را نمایش می دهدhostsفایل
-
-
مدیریت فرآیند:
-
ps aux– لیست فرآیندهای در حال اجرا - مثال:
ps aux | grep nginxتمام فرآیندهای در حال اجرا NGINX را نشان می دهد. -
kill -9 PID– خاتمه یک فرآیند توسط PID آن. - مثال:
kill -9 1234به زور فرآیند را با PID 1234 متوقف می کند.
-
-
آرشیو و فشرده سازی:
-
tar -czvf archive.tar.gz /folder/– ایجاد یک آرشیو فشرده - مثال:
tar -czvf backup.tar.gz /var/www/یک آرشیو فشرده از/var/www/پوشه -
unzip file.zip– یک آرشیو فشرده را استخراج کنید. - مثال:
unzip backup.zipرا استخراج می کندbackup.zipرا در دایرکتوری فعلی فایل کنید.
-
ویرایشگرهای متن در لینوکس
لینوکس چندین ویرایشگر متن قدرتمند را برای ویرایش فایل ها به طور مستقیم از خط فرمان ارائه می دهد. پرکاربردترین ویرایشگرها عبارتند از vi، sed، و cat.
1. vi ویرایشگر (Vim):
-
viیک ویرایشگر متن همه کاره و پرکاربرد در لینوکس با دو حالت دستور و درج است.
مثال:
- برای ویرایش فایل از:
vi filename.txt - را فشار دهید
iبرای وارد کردن حالت درج و شروع به ویرایش فایل. - را فشار دهید
Escبرای خروج از حالت درج، و تایپ کنید:wqبرای ذخیره و خروج، یا:q!برای ترک بدون ذخیره کردن
2. sed ویرایشگر (ویرایشگر جریان):
-
sedیک ویرایشگر جریان قدرتمند است که برای تجزیه و تبدیل متن در فایل ها استفاده می شود. معمولاً برای عملیات جستجو و جایگزینی استفاده می شود.
مثال:
- برای جایگزینی “foo” با “bar” در یک فایل:
sed -i 's/foo/bar/g' file.txt - این دستور هر رخداد “foo” را با “bar” در جایگزین میکند
file.txt.
3. cat (الحاق) ویرایشگر:
-
catدر درجه اول برای مشاهده محتویات یک فایل استفاده می شود، اما همچنین می تواند فایل های جدید را به هم متصل کرده و ایجاد کند.
مثال:
- برای مشاهده یک فایل:
cat filename.txt - برای ایجاد یک فایل جدید:
cat > newfile.txtو سپس محتوا را تایپ کنید. را فشار دهیدCtrl+Dبرای ذخیره و خروج
مجوزهای فایل در لینوکس
مجوزهای فایل در لینوکس کنترل می کند که چه کسی می تواند یک فایل یا دایرکتوری را بخواند، بنویسد و اجرا کند. مجوزها برای سه نوع کاربر تنظیم شده است:
- مالک (u)
- گروه (g)
- دیگران (o)
هر فایل یا دایرکتوری دارای سه نوع مجوز است:
- بخوانید (r) – اجازه خواندن مطالب
- بنویس (w) – اجازه تغییر محتوا
- اجرا (x) – اجازه اجرای فایل به صورت برنامه
مثال:
- برای تنظیم مجوزهایی که مالک دسترسی کامل دارد، گروه میتواند بخواند و اجرا کند و دیگران فقط میتوانند بخوانند:
chmod 755 script.sh- این یعنی:
- مالک: خواندن، نوشتن و اجرا.
- گروه: بخوانید و اجرا کنید.
- دیگران: فقط خواندن.
فایل Sudoers در لینوکس چیست:
این sudoers فایل در لینوکس برای کنترل اینکه کدام کاربران یا گروه ها می توانند با استفاده از امتیازات (ریشه) بالا دستورات را اجرا کنند استفاده می شود. sudo.
-
مکان:
/etc/sudoers -
ویرایش: شما باید استفاده کنید
visudoبرای ویرایش ایمنsudoersفایل این تضمین می کند که از خطاهای نحوی جلوگیری می شود و شما را از سیستم قفل نمی کند.
مثال:
برای اجازه دادن به یک کاربر (devops) برای اجرای تمام دستورات با sudo امتیازات، شما باید خط زیر را به آن اضافه کنید sudoers فایل:
devops ALL=(ALL:ALL) ALL
این اعطا می کند devops کاربر توانایی اجرای هر دستوری را مانند هر کاربر یا گروهی با استفاده از آن دارد sudo.
آیا در مورد استفاده از دستورات لینوکس در حال حاضر اعتماد به نفس بیشتری دارید؟ این ابزارها و دستورات برای مدیریت و خودکارسازی زیرساخت فناوری اطلاعات شما ضروری هستند.
غذای آماده شما
به عنوان یک مهندس DevOps، تسلط بر دستورات لینوکس فقط یک گزینه نیست، بلکه یک ضرورت است. از مدیریت سرورها و نظارت بر عملکرد گرفته تا عیب یابی مشکلات، لینوکس پایه و اساس لازم را برای برتری در نقش خود فراهم می کند.
ممنون که پست من را خواندید!
حتما واکنش نشان دهند در پست و دنبال کنید نویسنده 👏



