مقدمة
هذا البرنامج التعليمي، الذي هو الأول في سلسلة تعلم أساسيات لينكس، يغطي كيفية البدء مع الطرفية، وواجهة سطر الأوامر في لينكس، وتنفيذ الأوامر. إذا كنت جديدًا على لينكس، سترغب في التعرف على الطرفية، لأنها الطريقة القياسية للتفاعل مع خادم لينكس.
إذا كنت ترغب في الاستفادة القصوى من هذا البرنامج التعليمي، فستحتاج إلى خادم لينكس للاتصال به واستخدامه. إذا لم يكن لديك بالفعل واحد، يمكنك إنشاء واحد بسرعة عن طريق اتباع هذا الرابط: كيفية إنشاء قطرة DigitalOcean. هذا البرنامج التعليمي مكتوب لخادم Ubuntu 22.04 ولكن المبادئ العامة تنطبق على أي توزيع آخر من لينكس.
لنبدأ بالتحدث عن محاكي الطرفية.
محاكي الطرفية
A terminal emulator is a program that allows the use of the terminal in a graphical environment. As most people use an OS with a graphical user interface (GUI) for their day-to-day computer needs, the use of a terminal emulator is a necessity for most Linux server users.
إليك بعض محاكيات الطرفية المجانية والمستخدمة بشكل شائع حسب نظام التشغيل:
- Mac OS X: الطرفية (الافتراضي)، iTerm 2
- Windows: ConEmu، Windows Terminal، PuTTy
- لينكس: Gnome Terminal، Konsole، XTerm
كل محاكي طرفية له مجموعة خاصة من الميزات. بشكل عام، يجب أن تتوقع أن يدعم محاكي الطرفية الحديث تبويب النوافذ وتحديد النص.
القشرة
في نظام Linux، القشرة هي واجهة سطر الأوامر التي تفسر أوامر المستخدم وملفات النصوص، وتخبر نظام التشغيل للخادم ما يجب فعله بها. هناك العديد من القواقع التي تستخدم على نطاق واسع، مثل قشرة بورن آجين (bash) وقشرة زد (zsh). لكل قشرة مجموعة خاصة من الميزات والتفاصيل المعقدة بخصوص كيفية تفسير الأوامر، ولكنها جميعًا تتضمن إعادة التوجيه للمدخلات والمخرجات، والمتغيرات، واختبار الشروط، وغيرها من الأشياء.
تم كتابة هذا البرنامج التعليمي باستخدام قشرة بورن آجين (bash)، التي غالبًا ما تُشار إليها باسم bash، والتي تعتبر القشرة الافتراضية لمعظم توزيعات Linux، بما في ذلك Ubuntu وFedora وRHEL.
سطر الأوامر
عندما تقوم بتسجيل الدخول إلى خادم، عادةً ما ستُستقبل بـ رسالة اليوم (MOTD)، والتي عادة ما تكون رسالة معلوماتية تتضمن معلومات متنوعة مثل إصدار توزيعة Linux التي يعمل بها الخادم. بعد رسالة MOTD، سيتم إسقاطك في موجه الأوامر، أو موجه الشل، وهو المكان الذي يمكنك فيه إصدار الأوامر إلى الخادم.
يمكن تخصيص المعلومات التي يتم عرضها في موجه الأوامر من قبل المستخدم، ولكن هنا مثال على موجه الأوامر الافتراضي في Ubuntu 20.04:
sammy@webapp:~$
هنا نستعرض تكوين مكونات موجه الأوامر:
sammy
: اسم المستخدم الحاليwebapp
: اسم الخادم~
: الدليل الحالي. فيbash
، الذي هو الشل الافتراضي، الـ~
، أو التيلدا، هو حرف خاص يتم توسيعه إلى مسار دليل المستخدم الحالي؛ في هذه الحالة، يمثل/home/sammy
$
: رمز الموجه. يشير هذا إلى نهاية موجه الأوامر، بعد ذلك ستظهر إدخالات لوحة المفاتيح للمستخدم
إليك مثالاً على كيفية يمكن أن يبدو موجه الأوامر، إذا تم تسجيل الدخول بصفة مستخدم root
وفي الدليل /var/log
:
root@webapp:/var/log#
لاحظ أن الرمز الذي ينهي سطر الأوامر هو #
، وهو الرمز القياسي للتعبير عن العلامة التجارية root
. في نظام التشغيل Linux، المستخدم root
هو حساب المستخدم الخاص، وهو حساب مميز يمكنه أداء وظائف الإدارة على مستوى النظام. إنه مستخدم غير مقيد لديه إذن لأداء أي مهمة على الخادم.
تشغيل الأوامر
يمكن إصدار الأوامر في سطر الأوامر عن طريق تحديد اسم ملف تنفيذي، والذي يمكن أن يكون برنامجًا ثنائيًا أو نصيًا. هناك العديد من الأوامر والأدوات القياسية في Linux التي يتم تثبيتها مع النظام، والتي تسمح لك بتصفح نظام الملفات، وتثبيت حزم البرامج، وتكوين النظام والتطبيقات.
تُعرف نسخة من الأمر الجاري كـ عملية. عند تنفيذ أمر في الـ الخلفية، وهو الطريقة الافتراضية التي يتم بها تنفيذ الأوامر، يجب على المستخدم الانتظار حتى تنتهي العملية قبل أن يُعاد إلى سطر الأوامر، حيث يمكنه بعدها استمرار إصدار المزيد من الأوامر.
من المهم أن نلاحظ أن معظم الأشياء في Linux حساسة لحالة الأحرف، بما في ذلك أسماء الملفات والمجلدات، والأوامر، والمعاملات، والخيارات. إذا لم يعمل شيء كما هو متوقع، فتحقق مرتين من التهجئة وحالة الأحرف في أوامرك!
وإليك بعض الأمثلة التي ستغطي أساسيات تنفيذ الأوامر.
ملاحظة: إذا لم تكن متصلاً بالفعل بخادم Linux، فالآن هو الوقت المناسب لتسجيل الدخول. إذا كان لديك خادم Linux ولكنك تواجه مشاكل في الاتصال، فاتبع هذا الرابط: كيفية الاتصال بـ Droplet الخاص بك باستخدام SSH.
بدون معلمات أو خيارات
لتشغيل أمر بدون أي معلمات أو خيارات، اكتب اسم الأمر واضغط على Enter
.
إذا قمت بتشغيل أمر مثل هذا، سيظهر سلوكه الافتراضي، والذي يختلف من أمر إلى آخر. على سبيل المثال، إذا قمت بتشغيل أمر cd
بدون أي معلمات، ستعود إلى دليل المستخدم الحالي الرئيسي. سيقوم أمر ls
بطباعة قائمة بالملفات والدلائل في الدليل الحالي. أمر ip
بدون أي معلمات سيطبع رسالة توضح لك كيفية استخدام أمر ip
.
جرب تشغيل أمر ls
بدون أي معلمات لعرض الملفات والدلائل في الدليل الحالي (قد لا يكون هناك أي ملفات):
مع معلمات
العديد من الأوامر تقبل المُعطيات، أو المعاملات، التي يمكن أن تؤثر على سلوك الأمر. على سبيل المثال، الطريقة الأكثر شيوعًا لاستخدام أمر cd
هي تمرير وسيطة واحدة تحدد أي دليل يتم التبديل إليه. على سبيل المثال، للتبديل إلى الدليل /usr/bin
، حيث يتم تثبيت العديد من الأوامر القياسية، يمكنك استخدام هذا الأمر:
cd /usr/bin
المكون cd
هو الأمر، والوسيطة الأولى /usr/bin
تتبع الأمر. لاحظ كيف تم تحديث مسار الدليل الحالي في سطر الأمر الخاص بك.
حاول تشغيل أمر ls
لعرض الملفات الموجودة في الدليل الحالي الجديد.
ls
Output…
grub-mkrescue sdiff zgrep
grub-mkstandalone sed zipdetails
grub-mount see zless
grub-ntldr-img select-editor zmore
grub-render-label semver znew
grub-script-check sensible-browser
مع الخيارات
معظم الأوامر تقبل الخيارات، المعروفة أيضًا باسم العلامات أو المفاتيح، التي تعدل سلوك الأمر. تتبع الخيارات الأمر، ويُشار إليها برمز -
واحد تليها واحدة أو أكثر من الخيارات، والتي تُمثل بحروف كبيرة أو صغيرة فردية. يمكن أن تبدأ بعض الخيارات ذات الكلمات المتعددة بـ --
، تليها نص العلامة.
لنلق نظرة على كيفية عمل الخيارات، دعونا ننظر إلى أمر ls
. إليك بعض الخيارات الشائعة التي تكون مفيدة عند استخدام ls
:
-l
: يطبع “قائمة طويلة”، تتضمن تفاصيل إضافية مثل الأذونات، والملكية، وحجم الملفات، والطوابع الزمنية-a
: قائمة جميع ملفات الدليل، بما في ذلك تلك المخفية (التي تبدأ بـ.
)
لاستخدام العلم -l
مع ls
، استخدم هذا الأمر:
لاحظ أن القائمة تتضمن نفس الملفات كما كانت سابقاً، ولكن مع معلومات إضافية حول كل ملف.
كما ذُكر سابقاً، يمكن تجميع الخيارات في كثير من الأحيان معاً. إذا كنت ترغب في استخدام العلم -l
و -a
معاً، يمكنك تشغيل ls -l -a
، أو مجرد دمجهما كما في هذا الأمر:
لاحظ أن القائمة تتضمن الدلائل المخفية .
و ..
في القائمة، بسبب العلم -a
.
مع الخيارات والمُعاملات
يمكن تجميع الخيارات والمُعاملات معظم الأوقات، عند تشغيل الأوامر.
على سبيل المثال، يمكنك التحقق من محتويات /home
، بغض النظر عن الدليل الحالي الذي تعمل فيه، من خلال تشغيل هذا الأمر ls
:
ls -la /home
الأمر ls
هو الأمر، -la
هي الخيارات، و /home
هو المُعامل الذي يُشير إلى الملف أو الدليل الذي يتعين قائمته. يجب أن يتم طباعة قائمة مفصلة للدليل /home
، الذي يجب أن يحتوي على دلائل المستخدمين العاديين على الخادم.
المتغيرات البيئية
المتغيرات البيئية هي قيم تحمل أسماء تستخدم لتغيير كيفية تنفيذ الأوامر والعمليات. عند تسجيل الدخول لأول مرة إلى خادم، سيتم تعيين العديد من المتغيرات البيئية تلقائياً وفقاً لبعض ملفات التكوين بشكل افتراضي.
عرض جميع المتغيرات البيئية
لعرض جميع المتغيرات البيئية التي تم تعيينها لجلسة الطرفية المحددة، قم بتشغيل الأمر env
:
env
من المحتمل أن يكون هناك الكثير من الناتج. ابحث عن إدخال PATH
:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
المتغير البيئي PATH
هو قائمة مفصولة بالنقاط تحتوي على الدلائل حيث ستبحث القشرة عن البرامج القابلة للتنفيذ أو النصوص النصية عند إصدار أمر. على سبيل المثال، يقع الأمر env
في /usr/bin
، ويمكنك تشغيله دون تحديد مساره الكامل لأن مساره موجود في المتغير البيئي PATH
.
عرض قيمة متغير
قيمة المتغير البيئي يمكن استردادها عبر إضافة اسم المتغير مسبوقًا بعلامة $
. هذا سيوسع المتغير المشار إليه إلى قيمته.
على سبيل المثال، لطباعة قيمة المتغير PATH
، يمكنك استخدام الأمر echo
:
echo $PATH
أو يمكنك استخدام المتغير HOME
، الذي يتم تعيينه إلى دليل المستخدم الرئيسي افتراضيًا، للانتقال إلى دليل المستخدم الرئيسي بهذا الشكل:
cd $HOME
إذا حاولت الوصول إلى متغير بيئي لم يتم تعيينه، فسيتم توسيعه إلى “لا شيء”؛ سلسلة فارغة.
ضبط المتغيرات البيئية
الآن بعد أن تعرف كيفية عرض متغيرات البيئة، يجب عليك أن تتعلم كيفية ضبطها.
لضبط متغير بيئي، كل ما عليك فعله هو البدء بالاسم المتغير، تليها على الفور علامة =
، تليها على الفور قيمته المرغوبة:
VAR=value
لاحظ أنه إذا قمت بتعيين متغير موجود بالفعل، سيتم الكتابة فوق القيمة الأصلية. إذا لم يكن المتغير موجودًا في المقام الأول، فسيتم إنشاؤه.
تتضمن Bash أمرًا يسمى export
الذي يصدر متغيرًا بيئيًا بحيث يتم استنساخه بواسطة العمليات الفرعية. يتيح لك هذا استخدام السكربتات التي تشير إلى متغير بيئي مصدر من جلسة العمل الحالية الخاصة بك.
يمكنك أيضًا الإشارة إلى المتغيرات الحالية عند تعيين متغير. على سبيل المثال، إذا قمت بتثبيت تطبيق في /opt/app/bin
، يمكنك إضافة تلك الدليل إلى نهاية متغير البيئة PATH
بهذا الأمر:
export PATH=$PATH:/opt/app/bin
الآن تحقق من أن /opt/app/bin
قد تمت إضافته إلى نهاية متغير البيئة PATH
باستخدام echo
:
echo $PATH
خذ في اعتبارك أن تعيين المتغيرات البيئية بهذه الطريقة يقوم بتعيينها فقط لجلسةك الحالية. هذا يعني أنه إذا قمت بتسجيل الخروج أو تغيير جلسة أخرى، فلن يتم الاحتفاظ بالتغييرات التي قمت بها في البيئة. هناك طريقة لتغيير المتغيرات البيئية بشكل دائم، ولكن سيتم التطرق إليها في درس لاحق.
الختام
الآن بعد أن بدأت في تعلم سطر أوامر Linux (وبعض الأوامر)، يجب أن تمتلك أساسًا جيدًا لتوسيع معرفتك بأوامر Linux. اقرأ الدرس التالي في هذه السلسلة لتتعلم كيفية التنقل وعرض وتحرير الملفات وصلاحياتها.
Source:
https://www.digitalocean.com/community/tutorials/an-introduction-to-the-linux-terminal