Monday 15 February 2016

Linux part 3



يعتبر هذا الدرس موجها لمن يستخدم لينوكس للمرة الأولى، حيث سأحاول أن أشرح بالصور الخطوات الأولى للتعرف على لينوكس و اكتشاف واجهته الرسومية و كيفية التعامل معها، و سيكون الشرح على كل من واجهة KDE و GNOME و ستكون الصور معتمدة على توزيعة Mandrake 8.2.

بعد الانتهاء من تنصيب توزيعة لينوكس و تشغيل النظام ستظهر الصورة التالية للدخول الى النظام:



سيظهر في هذه الصورة اسم المستخدم الذي أعددت له حسابا عند تنصيب النظام، و كل ما عليك فعله هو أن تنقر على الاسم و من ثم تدخل كلمة المرور Password التي اخترتها عند التنصيب، و من ثم عليك أن تختار الواجهة التي تود استخدامها من خلال النقر أمام Session Type كما في الصورة التالية:



عليك الاختيار بين الواجهتين الرسوميتين KDE و GNOME و من ثم انقر على Go! و سيبدأ تحميل الواجهة التي اخترتها ، فإن اخترت KDE فستظهر الصورة التالية بعد التحميل :



أما إذا اخترت الواجهة GNOME فستظهر الصورة التالية:



سنحاول فيما يلي التعرف على أيقونات سطح المكتب:

1-  أيقونة مدير الملفات و عند النقر عليها تظهر الصورة التالية (على اليمين وفقا لـ GNOME و على اليسار وفقا لـ KDE):



2-  أيقونة القرص المضغوط لاكتشاف محتوياته.

3-  أيقونة القرص المرن لاكتشاف محتوياته.

4-  أيقونة الطباعة.

5-  أيقونة مركز تحكم Mandrake للوصول إلى إعدادات النظام، و عند النقر عليها تظهر الصورة التالية:



6-  أيقونة الانترنت للوصول الى الانترنت و إعداداته.

7-  أيقونة سلة المهملات.

8-  أيقونة إنهاء أو قتل البرامج التي لا تعمل كما يرام.

9-     أيقونات لروابط في موقع Mandrake على الانترنت.

سنحاول الآن التعرف على مكونات شريط المهام و نبدأ مع شريط مهام KDE كما في الصورة التالية:



و هو يحتوي على المكونات التالية:

1-  و عند النقر عليها تظهر قائمة البرامج و هي تعمل عمل ابدأ أو Start في ويندوز.

2-  لإظهار سطح المكتب و تصغير كافة النوافذ.

3-  عند النقر عليها تظهر نافذة لكتابة الأوامر ( سنشرح أوامر لينوكس بالتفصيل إن شاء الله في الحلقات القادمة).

4-  و تستخدم لتشغيل مركز تحكم KDE و الذي يهتم بإعدادات واجهة KDE و يقدم تحكم كبير في شكل و مكونات الواجهة و عند النقر عليها تظهر الصورة التالية:



5-  للوصول الى ملفات المساعدة.

6-  لتشغيل مدير الملفات.

7-  لتشغيل متصفح الإنترنت Konqueror.

8-  لتشغيل برنامج البريد الالكتروني.

9-  لتشغيل محرر النصوص Kwrite.

10-  و هذا يستخدم للتبديل بين أسطح المكتب، مما يعني أن بإمكانك أن تفتح في كل سطح مكتب ما تود من برامج أو نوافذ و تنتقل بكل سهولة بين هذه الأسطح مما يساهم في عدم ازدحام سطح المكتب.

11-  و يستخدم لإقفال الشاشة و منع استخدامها في غيابك.

12-  و يستخدم للخروج من واجهة KDE.

13-  و يستخدم للوصول الى clipboard أو حافظة الذاكرة.

14-  الساعة لبيان الوقت.

15-  عند النقر عليها ينكمش شريط المهام.

ننتقل الآن للتعرف على شريط مهام GNOME كما في الصورة التالية:



و هو يحتوي على المكونات التالية:

1-  و عند النقر عليها تظهر قائمة البرامج و هي تعمل عمل ابدأ أو Start في ويندوز.

2-  و يستخدم للخروج من واجهة GNOME.

3-  و يستخدم لإقفال الشاشة و منع استخدامها في غيابك.

4-  لتشغيل مدير الملفات.

5-  للوصول الى ملفات المساعدة.

6-  عند النقر عليها تظهر نافذة لكتابة الأوامر ( سنشرح أوامر لينوكس بالتفصيل إن شاء الله في الحلقات القادمة).

7-  و تستخدم لتشغيل مركز تحكم GNOME و الذي يهتم بإعدادات واجهة GNOME و يقدم تحكم كبير في شكل و مكونات الواجهة و عند النقر عليها تظهر الصورة التالية:



8-  و هذا يستخدم للتبديل بين أسطح المكتب، مما يعني أن بإمكانك أن تفتح في كل سطح مكتب ما تود من برامج أو نوافذ و تنتقل بكل سهولة بين هذه الأسطح مما يساهم في عدم ازدحام سطح المكتب.

9-  الوقت و التاريخ.

10-  لتشغيل برنامج البريد الالكتروني.

الآن بعد أن تعرفنا على مكونات واجهة KDE و GNOME بقي أن نعرف كيفية الخروج من النظام و إغلاق الجهاز و لعمل ذلك ننقر على علامة الخروج  في KDE لتظهر لنا الصورة التالية:



إذا وضعت علامة Restore session when logging in next time فإنك تستطيع الاحتفاظ بجميع برامجك المفتوحة كما هي و عند دخولك المرة المقبلة ستجد البرامج مفتوحة كما هي و لا تضطر الى إعادة تشغيلها من جديد.

أما في GNOME فننقر على علامة الخروج  و عندها ستظهر رسالة تأكيد.

بعد الخروج من أي من الواجهتين نعود الى الشاشة الرئيسية :



و من ثم ننقر على Shutdown لإيقاف تشغيل الجهاز.







سنقوم في هذا الدرس بشرح عملية تعريف كرت الصوت في نظام لينكس Sound Configuration

من الشريط السفلي نقوم باختيار Terminal ..انظر الصورة

اضغط على أيقونة الـ Terminal والمحددة باللون الأحمر



عند ذلك تفتح هذه الـ Terminal



لابد من الولوج للنظام كجذر root وذلك بكتابة الأمر التالي su بعدها سوف يطلب منك الـ Password للجذر.



الآن نكتب الأمر التالي sndconfig وبعدها نضغط Enter.



سوف تفتح النافذة الخاصة بالتعريف وتطلب منك ضغط Enter للتحديد والبحث الآلي لكرت الصوت..انظر الصورة.



بعد ضغط Enter سوف يقوم النظام بالبحث عن كرت الصوت المثبت في جهازك ... أثناء ذلك يكون شكل النافذة كالتالي:



وعندما يجد النظام الكرت المثبت سوف يعرض لك هذه النافذة والتي تحتوي على نوع الكرت و ماركته ...



اذا لم يحدد آليا كرت الصوت لديك سوف يطالبك بتحديدها يدويا وذلك بعرض قائمة تحتوي على أنواع مختلفة من الكروت المدعومة من قبل لينكس.

أما اذا تمت عملية التحديد الآلي بنجاح سوف يعرض لك نوع الكرت .

الآن نقوم بالضغط على Enter للمتابعة ... تتغير النافذة كالتالي :



تخبرك هذه النافذة الضغط على Enter و ذلك لعرض تسجيل صوتي للتأكد من نتيجة التعريف....

بعد أن ينتهي التسجيل الصوتي تظهر لك هذه النافذة وذلك لكي يعرف النظام هل قمت بسماع التسجيل أم لا ...

إذا سمعت التسجيل الصوتي قم بالضغط على Yes إذا كانت ملونة بالأصفر وذلك بالضغط على Enter ... تم التعرف الآن على كرت الصوت المثبت في جهازك بنجاح 





أولا: أوامر أساسية


سوف نحاول في هذه الحلقة التعرف على بعض الأوامر الأساسية المستخدمة في نظام لينوكس، و يمكن تشبيه هذه الأوامر بتلك التي تستخدم في الدوس في بيئة ويندوز، و قد حرصت على شرح هذه الأوامر بالرغم من إمكانية تطبيقها من خلال الواجهة الرسومية لأن التعرف على هذه الأوامر و إتقانها يساهم في تكوين و إعداد مستخدمين محترفين لهذا النظام الجديد على كثير منا.

كما سبق أن ذكرنا في الحلقات السابقة فإننا نستطيع الوصول الى موجه الأوامر من خلال تشغيل Terminal بالضغط على أيقونته في شريط المهام.

نستطيع استخدام الكثير من الأوامر مع لينوكس، حيث تبدأ هذه الأوامر باسم الأمر و يمكن أن يتبع بخيارات أو متغيرات، مع الفصل بين الأوامر بفراغ واحد أو أكثر فلينوكس لا يهتم بعدد الفراغات بين الأوامر، و لكن عليك التنبه من حالة الأحرف هل هي صغيرة أو كبيرة لأن لينوكس يفرق بين USERADD و useradd.

من الأوامر الأولى التي علينا تعلمها هي تلك التي تساعدنا في تصفح نظام الملفات.

نظام الملفات الافتراضي في لينوكس يبدو كما يلي:



حيث يرمز للمجلد الرئيسي ب / و يطلق عليه الجذر أو root و يندرج تحته مجموعة من المجلدات مثل boot و home و usr و يمكن أن يحتوي على غيرها.

عندما تدخل الى النظام فإنك بشكل تلقائي تكون داخل مجلد يحمل اسمك و يكون داخل المجلد home كما في الصورة التالية:



أما من خلال نافذة Terminal فسيتم التعبير عن موقعك كما يلي:

$[walid@localhost walid]

و تشرح الصورة التالية هذا التعبير:



و يشير الرمز $ الى أن المستخدم الحالي ليس مديرا أما إذا تم الدخول كمدير أو root فإن الرمز سيكون # بينما اسم المستخدم فسيعبر عنه ب root.
إذا كنت موجودا في أي مجلد كان و تريد أن تعرف مكانك فبإمكانك استخدام الأمر pwd و هو اختصار ل print current working directory و من ثم تضغط على Enter و عندها ستحصل على المسار الحالي الذي توجد داخله، فإذا قمت بذلك من داخل المجلد الافتراضي فستظهر لك النتيجة التالية:

/home/walid

طبعا سيظهر اسمك بدلا من walid.

إذا رغبت بمعرفة مساحة القرص الفارغة المتوفرة على نظام ملفاتك فاستخدم الأمر df و ستحصل على النتيجة التالية:



للتغيير الى مجلد ما تستطيع استخدام الأمر cd متبوعا باسم مجلد موجود داخل المجلد الحالي أو المسار الكامل لأي مجلد.

فإذا افترضنا وجود مجلد اسمه Islam موجود داخل المجلد الحالي walid، فلكي ننتقل إليه نستخدم الأمر:

cd walid

أما إذا رغبنا بالانتقال الى مجلد آخر اسمه Palestine موجود داخل المجلد Jihad داخل المجلد usr فنستخدم الأمر التالي:

cd /usr/Jihad/Palestine

تستطيع في أي وقت العودة الى مجلدك الافتراضي ( walid في مثالنا الحالي) باستخدام الأمر cd دون أي إضافة.

أما إذا رغبت في التوجه الى المجلد الرئيسي root فاستخدم الأمر:

/ cd

أما للعودة الى المجلد السابق الذي كنت تتصفحه فاستخدم الأمر:

- cd

أما للانتقال الى مجلد أعلى مثلا من المجلد walid الى المجلد home فاستخدم الأمر:

.. cd

للتعرف على المستخدمين الموجودين حاليا في النظام تستطيع استخدام الأمر who و ستحصل على أسماء المستخدمين و وقت ولوجهم الى النظام، أما إذا استخدمت الأمر finger فستحصل على معلومات إضافية مثل الاسم الحقيقي لكل مستخدم و موقع تواجده حاليا، فإذا رغبت بالمزيد من المعلومات مثل الأوامر التي يشغلها كل مستخدم فاستخدم الأمر w.

للتعرف على معلومات عن نفسك فاستخدم الأمر id كما تستطيع تغيير معلوماتك التي تظهر لغيرك من المستخدمين عند استخدامهم للأمر finger، بأن تستخدم الأمر chfn

تستطيع معرفة الوقت و التاريخ باستخدام الأمر date ، و إذا رغبت بالحصول على تقويم شهري فاستخدم الأمر cal و إذا أحببت الحصول على التقويم الشهري لعام محدد فاستخدم الأمرcal متبوعا بالعام المطلوب كما في المثال التالي:

cal 2002

للحصول على قائمة بمحتويات مجلد ما تستطيع استخدام الأمر ls و هو اختصار ل list، فإذا استخدمت هذا الأمر دون أي إضافات فستحصل على محتويات المجلد الحالي الذي تعمل عليه، أما إذا رغبت بمعرفة محتويات مجلد معين فعليك تحديد مساره كاملا، فلمعرفة محتويات المجلد Palestine فاستخدم الأمر التالي:

ls /usr/Jihad/Palestine

أما إذا رغبت بالحصول على معلومات تفصيلية عن محتويات المجلد فاستخدم الأمرls –l كما يلي:

ls –l /usr/Jihad/Palestine

أما إذا رغبت بالحصول على قائمة محتويات مصنفة فاستخدم الأمر ls –F و انتبه أن الحرف هو F و ليس f.

لتمييز الملفات القابلة للتنفيذ عند سرد محتويات أي مجلد سنجد أن الملف القابل للتشغيل قد ألحق الرمز * بنهايته مثلا ملف تشغيل Yahoo Messenger ستجده بهذا الشكل:

*ymessenger

إذا رغبت بالحصول على قائمة بجميع الملفات في المجلد بما فيها الملفات المخفية فاستخدم الأمر ls –a و عندها ستظهر جميع الملفات حتى المخفية و التي سيتميز اسمها بأنه يبدأ بنقطة كمثال :

bashrc.

للحصول على قائمة محتويات مرتبة وفقا لوقت إنشائها الأحدث فالأقدم استخدم الأمر ls –t ، أما لعكس الترتيب (الأقدم فالأحدث) فاستخدم الأمر التالي:

ls –tr
تستطيع دمج أكثر من خيار مع الأمر ls ، فمثلا للحصول على قائمة تفصيلية للمحتويات مرتبة زمنيا بشكل عكسي نستخدم الأمر كما يلي:

ls –ltr

أحيانا عند البحث عن ملف معين أو مجموعة من الملفات قد لا تتذكر الاسم المضبوط له أو المعلومات التي يحتويها بالضبط، فمثلا قد تبحث عن ملف أسماء الصحابة و لكنك لا تستطيع أن تتذكر اسم الملف هل هو sahaba أو sa7aba أو assahaba، و مثال آخر أنك تود البحث عن جميع الملفات التي تحتوي على معلومات معينة مثل اسم Mohammed و هكذا. للتغلب على مثل هذه المشاكل نستخدم بعض الرموز مع أوامر لينوكس لتسهل علينا الوصول الى غايتنا كما يلي:

1- الرمز ? عند استخدامه فإنه يرمز لأي حرف فمثلا لنفترض أننا نريد أن نبحث عن ملف اسمه مكون من 3 أحرف و لكن نسينا الحرف الأوسط فاستخدمنا الأمر التالي:

ls b?g

فحصلنا على قائمة تحتوي على أسماء جميع الملفات المكونة من 3 أحرف و تبدأ بالحرف b و تنتهي بالحرف g بغض النظر عن الحرف الأوسط، لهذا قد نحصل على قائمة بالملفات التالية مثلا:

bag bug big

مثال آخر نود الحصول على قائمة بأسماء الملفات المكونة من 5 أحرف، لهذا الغرض نستخدم الأمر التالي:

????? ls

2- الرمز * و هو يرمز لأي عدد من الأحرف أو الرموز التي تليه فمثلا إن استخدمنا الأمر التالي:

*ls mon

فسنحصل على قائمة بأسماء جميع الملفات التي تبدأ ب mon بغض النظر عن باقي الاسم كمثال قد نحصل على قائمة بالملفات التالية:

monday month money

3- القوسين [] و عند استخدامهما يتم اعتماد أي حرف أو رمز من ضمن الأحرف أو الرموز المحصورة بينهما فمثلا إذا استخدمنا الأمر التالي:

ls [Ss]hare

فسنحصل على قائمة بالملفات التالية:

Share share

أما إذا استخدمنا الأقواس بهذا الشكل [a-f] فسيتم اعتماد أي حرف بين a و f فمثلا عند استخدام الأمر التالي:

Ls b[a-f]g

فسنحصل على قائمة بأسماء جميع الملفات التي تبدأ ب b و تنتهي ب g بينما الحرف الأوسط قد يكون أي حرف في المدى بين الأحرف a و f كمثال قد نحصل على قائمة بالملفات التالية:

bag beg

أما إذا استخدمنا الرمز ^ كأول رمز بين القوسين فهذا يعني أنه ينطبق على أي حرف ما عدى الأحرف التي تلي الرمز بين القوسين، كمثال إذا استخدمنا الأمر التالي:

ls b[^a,f]g

فسنحصل على قائمة بأسماء الملفات التي تبدأ ب الحرف b و تنتهي ب g بينما الحرف الأوسط سيكون أي حرف ما عدى الحرفين a و f و كمثال قد نحصل على قائمة بالملفات التالية:

big beg

للبحث عن نص معين في ملف معين أو في مجموعة من الملفات نستخدم الأمر grep و هو اختصار ل global regular expression parse و هو قد يستخدم مع مجموعة من الرموز كما يلي و التي يجب أن تكتب بين علامتي " ":

1- الرمز ^ و هو يستخدم للبحث عن الأحرف أو الرموز التي تليه إذا جاءت في بداية أي سطر في ملف محدد أو في مجموعة من الملفات، فمثلا إذا رغبنا بالبحث في جميع الملفات داخل مجلد عن الكلمة Muslims على أن تكون في بداية السطر سنكتب الأمر كما يلي:

"grep "^Muslims

في هذا المثال يتم البحث في جميع الملفات، أما إذا رغبنا بالبحث في ملف معين فعلينا كتابة اسم الملف كمثال:

grep "^Muslims" ghutha.txt

و عندها ستظهر الأسطر التي تبدأ بكلمة Muslims في الملف ghutha.txt.

كما نستطيع البحث في نوع محدد من الملفات فمثلا للبحث في الملفات من النوع txt فقط نستخدم الأمر كما يلي:

grep "^Muslims" *.txt

أما إذا استخدمت الأمر و لكن دون استخدام الرمز ^ فستحصل على جميع الأسطر التي تحتوي على الكلمة Muslims في الملف المحدد أو في مجموعة الملفات.

2- الرمز $ و هو يستخدم للبحث عن الأحرف أو الرموز التي تسبقه إذا جاءت في نهاية أي سطر في ملف محدد أو في مجموعة من الملفات، فمثلا إذا رغبنا بالبحث في جميع الملفات داخل مجلد عن الكلمة Mecca على أن تكون في نهاية السطر سنكتب الأمر كما يلي:

'$grep 'Mecca

نلاحظ أنه عند استخدام الأمر grep مع الرمز $ فإننا نستخدم علامتي ' ' المفردة و ليس " ".



ثانيا: أوامر إعادة التوجيه


تهتم أوامر إعادة التوجيه في لينوكس بتحويل محتوى ملف ما أو نتيجة تطبيق أمر الى ملف آخر أو إدخال لأمر جديد. فمثلا يقوم الأمر cat و هو اختصار لـ concatenation عند استخدامه مع الرمز < بإعادة توجيه محتوى ملف واحد أو أكثر من ملف الى ملف جديد و لننظر الى المثال التالي ليتضح المراد:

عند استخدام الأمر التالي:

cat file1 file2 file3

فسيتم عرض محتوى الملفات الثلاث بالترتيب على الشاشة، بينما إذا استخدمنا الأمر بالشكل التالي:

cat file1 file2 file3 > file4

فسيتم تحويل محتوى الملفات الثلاث الى الملف الجديد file4 و للتأكد من ذلك من الممكن استخدام الأمر التالي الذي يعرض محتوى الملف file4 :

cat file4

في المثال التالي سنقوم بإعادة توجيه ناتج أمر ما الى ملف:

ls –F > listfile

حيث سيتم إضافة ناتج الأمر ls –F و هو قائمة مصنفة لمحتويات المجلد الحالي الى الملف listfile

و نستطيع باستخدام الأمر التالي إنشاء ملف جديد و من ثم الكتابة فيه و ذلك باستخدام تقنية إعادة التوجيه كما يلي:

cat > newfile

حيث سيقوم الأمر السابق بتوجيه ضرباتك على لوحة المفاتيح الى ملف جديد اسمه newfile و تستطيع بعد تنفيذك للأمر السابق أن تكتب ما شئت و سيتم تحوياه تلقائيا الى الملف newfile و عند رغبتك في التوقف عن الكتابة في الملف تستطيع الضغط على Ctrl+D، و هكذا سيحفظ كل ما كتبته في الملف newfile

و لتتأكد من نجاحك استخدم الأمر cat newfile لعرض محتوى الملف الجديد newfile.

و يجب التنويه أنه إذا استخدمنا الرمز < مع اسم ملف موجود مسبقا فسيتم إلغاء جميع محتوياته و الكتابة فوقها، أما إذا رغبنا بإضافة أي محتويات على ملف موجود مسبقا مع المحافظة على محتواه بحيث يتم إضافة أي كتابة جديدة الى نهاية الملف، فنستطيع استخدام الرمز<< بدلا من < واحدة، فمثلا عند استخدام الأمر التالي :

cat file1 file2 file3 >> oldfile

سيتم إضافة محتويات الملفات file1 و file2 و file3 الى نهاية الملف الموجود مسبقا oldfile

كما نستطيع استخدام إعادة توجيه معكوس و ذلك بتحويل محتوى ملف ما ليكون إدخال لأمر ما و ذلك باستخدام الرمز > كما في المثال التالي:

mail walid < letter

حيث يقوم الأمر السابق بتوجيه محتوى الملف letter الى الأمر mail و الذي يقوم بإرسال الملف الى المستخدم walid.
و نستطيع كذلك توجيه ناتج أمر ما كإدخال لأمر آخر باستخدام الرمز | كما في المثال التالي:

cat tele1 tele2 tele3 | sort

حيث يقوم الأمر السابق بتوجيه ناتج الأمرcat و الذي يقوم بعرض محتوى الملفات tele1 ,tele2, tele3 و التي تحتوي على أسماء أشخاص و أرقام هواتفهم، ثم يتم توجيه هذا المحتوى الى الأمر sort و الذي يقوم بترتيب الأسماء أبجديا و عرضها على الشاشة و بذلك سنحصل على قائمة مرتبة للأسماء الأولى للأشخاص المذكورين في الملفات الثلاث مع أرقام هواتفهم، فلو افترضنا أن محتوى الملف tele1 هو كما يلي:

Mohammed Salim 165317
Saed Ahmad 123243
Khalid Ali 335216

و محتوى الملف tele2 كما يلي:

Raed Jamal 116723
Ali Omar 224389
Kamal Othman 223312

أما الملف tele3 فمحتواه كما يلي:

Badr Jasim 119876
Ilyas Idrissi 367890
Mamoun Ibrahim 187620

بعد تنفيذ الأمر المذكور أعلاه سنحصل على النتيجة التالية على الشاشة:

Ali Omar 224389
Badr Jasim 119876
Ilyas Idrissi 367890
Kamal Othman 223312
Khalid Ali 335216
Mamoun Ibrahim 187620
Mohammed Salim 165317
Raed Jamal 116723
Saed Ahmad 123243

و هناك ميزة جيدة في أوامر لينوكس تسمح لك بتنفيذ أكثر من أمر في نفس الوقت فمثلا إذا رغبنا بتنفيذ أمر ما و نحن نعلم أن مدة تنفيذ هذا الأمر قد تطول فنستطيع أن ننفذ هذا الأمر في الخلفية و نقوم نحن بتنفيذ أي أوامر أخرى ريثما ينتهي تنفيذ ذلك الأمر، فعلى سبيل المثال نريد ترتيب محتوى ملف ما أبجديا و لكن حجم الملف كبير للغاية و بالتالي فترتيب محتواه سيستغرق وقتا طويلا، لهذا نستطيع توجيه تنفيذ هذا الأمر الى الخلفية باستخدام الرمز & في نهاية الأمر كما يلي:

& sort file1

و هكذا سيتم تنفيذ الأمر في الخلفية و نستطيع حينها إدخال أي أوامر أخرى.

إذا وضعت أكثر من ملف في الخلفية و رغبت في أي وقت بالتعرف على الأوامر و العمليات التي تعمل في الخلفية فتستطيع استخدام الأمر ps و الذي يأتي مع عدد من الخيارات مثل e و الذي يختار جميع العمليات، و f و الذي يعرض قائمة كاملة للعمليات التي تعمل في الخلفية و يكتب الأمر كما يلي:

ps –ef

و إذا استخدمت الأمر بالشكل التالي:

ps –ef | grep khalid

فسيتم عرض كافة العمليات التي يشغلها المستخدم khalid.

من خلال تنفيذ الأمر تستطيع التعرف على كل عملية و المقدار الذي تستهلكه من قوة المعالج، و عند الرغبة بقتل أو إيقاف عملية ما تستطيع استخدام الأمر kill مع رقم العملية id الذي يظهر في القائمة كمثال:

kill 1457

الأمر السابق سيوقف العملية ذات الرقم 1457.




ثالثا: أوامر إدارة الملفات.

سنتناول في هذا الدرس الأوامر التالية:

1- أوامر إدارة الملفات و المجلدات من نسخ و نقل و حذف و إعادة تسمية و إنشاء اختصارات: cp ، ln ، mv ، rm ، mkdir و rmdir.

2- أوامر عرض الملفات و تصفحها: head ، tail ، more ، less ، file ، grep و wc.

لنسخ ملف ما نستخدم الأمر cp متبوعا باسم الملف ثم الوجهة كما في المثال التالي:

cp file1 dir

سيقوم الأمر السابق بنسخ الملف file1 الى المجلد dir ، أما إذا استخدمنا الأمر السابق كما يلي:

cp file1 file2

فسنحصل على نسخة من الملف file1 و سيكون اسمها file2 و ستكون في نفس المجلد الموجود فيه الملف الأصلي file2.

لإنشاء اختصار أو رابط لملف ما نستخدم الأمر ln ، و علينا في البداية أن نعرف أن هناك نوعين من الاختصارات أو الروابط في لينوكس :

1- رابط صلب.

2- رابط رمزي.

أما الرابط الصلب فيقوم بإنشاء اختصار للملف الأصلي في مكان آخر و يكون هذا الاختصار عبارة عن نسخة طبق الأصل من الملف الأصلي و قد يتساءل أحدنا : إذن ما الفرق بينه وبين أمر النسخ السابق؟ و نجيب فنقول أن هذا الاختصار يراقب كل ما يجري للملف الأصلي بحيث أن أي تغيير يتم إجراؤه على الملف الأصلي يتم تطبيقه تلقائيا على الاختصار الجديد و هذا بطبيعة الحال لا يتوفر من خلال استخدام الأمر cp. يمكن إنشاء هذا الاختصار للملفات فقط و لا يصلح للمجلدات.

و يتم كتابة الأمر ln متبوعا باسم الملف الأصلي ثم الوجهة المراد إنشاء الاختصار فيها.

أما الرابط الرمزي فهو عبارة عن مؤشر غير مباشر للملف الأصلي بحيث إذا قمت بتشغيل الاختصار سيتم تلقائيا تشغيل الملف الأصلي و هذا النوع من الروابط مشابه لاختصارات الويندوز المألوفة و يمكن تطبيقه على الملفات و المجلدات على حد سواء.

و يكتب هذا الأمر كما يلي:

ln –s dir1/file dir2/file

حيث يمثل dir1/file الملف المصدر و يمثل dir2/file الوجهة كما في المثال التالي:

ln –s /home/walid/Islam /dev/Khalid/Islam

حيث سيتم إنشاء اختصار للملف Islam في المجلد /dev/khalid

لنقل الملفات أو إعادة تسميتها نستخدم الأمرmv متبوعا بالملف المصدر ثم الملف الوجهة، فبينما يقوم الأمر cp بعمل نسخة من الملف الأصلي فإن الأمر mv يقوم بنقل الملف الأصلي من مكانه الى مكان آخر أما إذا استخدمناه لنقل الملف المصدر الى ملف وجهة موجود في نفس المجلد فالذي يحصل هو إعادة تسمية الملف الأصلي.

فإذا افترضنا أننا نريد نقل الملف Jihad من المجلد walid الى المجلد الفرعي Palestine نكتب الأمر كما يلي مع افتراض أننا موجودون داخل المجلد walid:

mv Jihad Palestine

أما إذا رغبنا بإعادة تسمية الملف السابق الى اسم shahada فنكتب الأمر كما يلي:

mv Jihad shahada

أي أن الأمر يبحث أولا عن مجلد فرعي باسم shahada فإذا لم يجد فإنه يدرك أن المطلوب هو إعادة تسمية الملف الأصلي.

كما تستطيع نقل الملف و إعادة تسميته في آن واحد كما في المثال التالي:

mv Jihad Palestine/shahada

حيث سينقل الملف Jihad الى المجلد Palestine ثم سيعاد تسميته الى shahada.

لإنشاء مجلد فرعي نستخدم الأمر mkdir و لحذفه نستخدم الأمر rmdir

فمثلا لإنشاء مجلد جديد باسم Muslim داخل المجلد walid و نفترض أننا موجودون هناك حاليا نكتب الأمر كما يلي:

mkdir Muslim

لحذف المجلد السابق نكتب الأمر التالي:

rmdir Muslim

و لكن الأمر rmdir يحذف فقط المجلدات الفارغة، أما إذا كان المجلد يحتوي على ملفات أو مجلدات فرعية فيجب حذفها أولا إذا أردنا استخدام الأمر السابق.

لحذف الملفات نستخدم الأمر rm متبوعا باسم الملف، و إذا رغبنا بحذف أكثر من ملف نكتب أسماء الملفات تباعا كما في المثال التالي:

rm file1 file2 file3

حيث سيتم حذف الملفات file1 و file2 و file3.

يجب أن ننتبه أنه لا يمكن حذف ملف ما إذا كان لديه اختصارات أو روابط في مكان ما و لا بد من حذف اختصاراته أولا قبل محاولة حذفه و يمكن معرفة عدد اختصارات كل ملف في مجلد ما من خلال استخدام الأمر ls –l الذي سبق التطرق إليه، كما في الصورة التالية:



حيث يبين العمود المظلل عدد الاختصارات لكل ملف، حيث يبدو أن الملف departments ليس له أي اختصار لهذا يحمل الرقم 1، بينما الملف actions فله اختصار واحد و لهذا يحمل الرقم 2 و هكذا. أما لحذف جميع الملفات في مجلد ما نستخدم الأمر rm –r و يمكن استخدام هذا الأمر القوي لحذف مجلد ما و كافة محتوياته كما في المثال التالي:

rm –r Muslim

سيقوم الأمر التالي بحذف المجلد Muslim و كافة ملفاته و مجلداته الفرعية، لهذا لابد من الحذر عند استخدام هذا الأمر حيث لا يمكن التراجع عنه و ليس هناك أي خيار لاسترجاع ما حذفته بواسطته.

عند رغبتك بالتعرف على أي أمر من أوامر لينوكس و الخيارات المصاحبة له تستطيع استخدام الأمر man متبوعا باسم الأمر الذي تود التعرف عليه، كما في المثال التالي:

man ln

حيث سيعرض شرح للأمر ln و خياراته المختلفة ، و لكن لتستفيد من هذه الخاصية عليك أن تختار تنصيب وثائق المساعدة Manuals عند إعداد لينوكس.

أحيانا عند استعراض محتويات ملف ما يكون المحتوى أكبر مما يتسع في شاشة واحدة لعرضه لهذا لابد من استخدام أوامر خاصة لاستعراض الملف صفحة فصفحة أو أقل، من أمثلة هذه الأوامر more و less و هما يقومان بنفس المهمة إلا أن الأمر less يسمح بتصفح محتويات الملف الى الأمام و الى الخلف بينما لا يسمح الأمر more سوى بالتصفح للأمام.

فمثلا لعرض محتويات الملف Jihad نكتب الأمر كما يلي:

less Jihad

و سيتم عرض الصفحة الأولى من الملف و للانتقال إلى الصفحة التالية نضغط على شريط المسافة Spacebar على لوحة المفاتيح، و للعودة للصفحة السابقة نضغط على حرف B على لوحة المفاتيح، و للخروج من تصفح الملف نضغط على Q على لوحة المفاتيح.

كما تستطيع تصفح عدد معين من الأسطر في ملف ما باستخدام مجموعة من الأوامر، فمثلا يقوم الأمر head بعرض الأسطر العشر الأولى من الملف و يكتب كما يلي:

head Jihad

أما إذا رغبنا بعرض عدد معين من الأسطر مثلا 25 سطر نكتب الأمر كما يلي:

head -25 Jihad

كما نستطيع عرض آخر 10 أسطر من الملف باستخدام الأمر tail كما يلي:

tail Jihad

أما إذا رغبنا بعرض عدد معين من الأسطر مثلا 20 سطر من نهاية الملف نكتب الأمر كما يلي:

tail -20 Jihad

قد ترغب بالتعرف على نوعية الملف قبل فتحه لتعرف هل هو ملف نصي أو ملف تشغيلي أو غير ذلك، نستخدم لهذه الغاية الأمر file كما يلي:

file Jihad

و سيتم عندها عرض نوع الملف كما يلي:

Jihad: English text

كما تستطيع التعرف على أنواع جميع الملفات في المجلد الحالي باستخدام الأمر:

* file

للبحث عن كلمة ما أو مجموعة من الكلمات داخل ملف معين نستخدم الأمر grep ، فإذا رغبنا مثلا بالبحث عن الكلمة shahada في الملف Jihad نكتب الأمركما يلي:

grep shahada Jihad

و سيتم عرض جميع الأسطر التي تحتوي على الكلمة shahada في الملف Jihad .

علينا التنبه أن الأمر grep يفرق بين الأحرف الكبيرة و الصغيرة لهذا فالأمر السابق لن يعرض الأسطر التي تحتوي على الكلمة Shahada، أما إذا رغبنا أن يتجاهل هذا الأمر حالة الأحرف فنضيف له –i كما يلي:

grep –i shahada Jihad

تستطيع التعرف على المزيد حول ملفاتك مثل عدد الأسطر و عدد الكلمات و عدد الأحرف في ملف ما باستخدام الأمر wc كما يلي:

1- للتعرف على عدد الأسطرLines في الملف Jihad نكتب الأمر كما يلي:

wc –l Jihad

2- للتعرف على عدد الكلمات words في الملف Jihad نكتب الأمر كما يلي:

wc –w Jihad

3- للتعرف على عدد الأحرف characters في الملف Jihad نكتب الأمر كما يلي:

wc –c Jihad 




No comments:

Post a Comment