سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
1
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
بسم ال الرحمن الرحيم دليل المستخدم العربي فى أوامر لينكس
الصدار الثانى 25رمضان 1429 25سبتمبر 2008 2
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
إهداء أهدي هذا الكتاب إلى أمي الحبيبة وأرجو من كل من يقرأ هذا الكتاب أن يدعو لها بالشفاء و بدخول الجنة تأليف :مهندس /أحمد السيد أحمد علي
السم المستعار فى منتديات لينكس remstereo البريد الكترونى
[email protected] :
[email protected]
3
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
مقدمة: الحمد ل رب العالمين والصلة و السلم على أشرف المرسلين وخاتم النبيين ورحمة ال للعالمين سيدنا محمد وعلى آله وصحبه وسلم . السلم عليكم ورحمة ال وبركاته : يتحدث هذا الكتاب عن سطر الوامر ولقد اخترت ذلك الموضوع لهميته الكبيرة ولذلك
احببت ان اؤلف كتاب كبير يتكلم عن سطر الوامر باستفاضه وادعو ال ان يكون هذا الكتاب عونا طيبا لكم . لحظت ان البعض هذه اليام يرى ان سطر الوامر قل استخدامه خصوصا بعد التطور الكبير فى
الواجهات الرسومية وظهور توزيعات غاية فى السهولة مثل توزيعة . mintوهذه النظرة خاطئة عن سطر الوامر .
فانا ارى ان سطر الوامر يساوى لينكس حيث انك من خلله تشعر وكان الدنيا كلها بين يديك وذلك لقدراته العظيمة التى لتجاريها الواجهات الرسومية مع احترامى لها فانا لانكر التطور الكبير
فى الواجهات الرسومية التى سهلة علينا الكثير و الكثير لكن يظل سطر الوامر هو الساس لكى تعتبر نفسك مستخدم جيد للينكس .ومن خلل قراءتك لهذا الكتاب ستكتشف ذلك بنفسك . يتوجه هذا الكتاب الى جميع مستخدمى لينكس بداية بالمبتدئ و انتهاء بمدير النظام المحترف. وبالرغم كونى قد كتبت هذا الكتاب واختبرت ما فيه من اوامر على توزيعة opensuse 11 ال انى قد راعيت فيه الحيادية حيال التوزيعات المختلفة ال انى لحظت عدم وجود بعض
الوامر فى توزيعتى مثل المر adduserولذلك فانى لم اتمكن من شرح هذه الوامر ولكنى
شرحت اوامر بديلة لها مثل المر . useradd إن شاء ال سيصدر هذا الكتاب على إصدرات متتالية بحيث يلم الكتاب بأكبر قدر ممكن
من الوامر .وإن شاء ال ستحمل الصدارة التالية رقم . 3
تمت كتابة هذا الكتاب على توزيعة opensuse 11وذلك باستخدام برنامج openoffice.orgالصدارة 2.4 4
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
هذا الكتاب خاضع لرخصة GNU FDLأي ) GNU Free Documentation ( License
جميع حقوق الطبع محفوظة للمؤلف أحمد السيد أحمد علي
ملحظة مهمة :هذه العلمة تعنى اترك مسافة بعد المر .وسوف أضع هذه العلمة فى شرح
المر بالعربى فقط ولن أضعها فى المثلة .وساتبع تلك الطريقة فى الوامر الولى فقط لكى تشعر بالمسافات ومدى وجوبها .
5
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
قائمة المحتويات مقدمة :
الفصل الول :اساسيات سطر الوامر
المر man
المر info
المر xman
طريقة فهم صفحات المساعدة manual المر whatis
المر apropos استخدام الخيار --help استخدام المفتاح tab علمتى التنصيص ””
تنفيذ عدة اوامر باستخدام ) ; ( تنفيذ عدة اوامر باستخدام العلمة && المعامل النبوبى ( | ) pipes
المعاملت > و >> و < و << الفصل الثانى :أومر البحث المر whereis المر locate المر find الفصل الثالث :التعامل مع الملفات والمجلدات -aأوامر عامة
المر pushd المر popd المر cd
6
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المر pwd المر ls
المر dir -bالتعامل مع الملفات المر touch المر cat المر tac المر file
المر paste
المر more المر less
المر head المر tail المر wc
المر grep المر zgrep المر diff
-cالتعامل مع المجلدات المر mkdir المر tree
-dأوامر النسخ و النقل و إعادة التسمية المر rm
المر cp المر mv
#النسخ و النقل باستخدام علمة * المر ln
7
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الرابع :الضغط و الرشفة -aالرشفة المر tar
#عمل أرشيف
#عرض محتويات أرشيف #فك أرشيف
#إضافة ملف أو مجلد إلى أرشيف
المر cpio -bالضغط
المر gzip الفصل الخامس :محررات النصوص
المحرر mcedit المحرر vimأو gvim
المحرر pico
المحرر nano
المحرر emacs المحرر xemacs
المحررات الدفقيه أو التجاهيه المحرر sed
التدقيق الملئي بواسطة المر ispell
الفصل السادس :إدارة القراص الصلبة -aتقسيم القرص الصلب مقدمة
المر fdisk
المر cfdisk 8
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-bتهيئة برتشنات القرص الصلب المر mkfs
-cربط محرك أقراص جديد #خطوات ربط البرتشنات مؤقتا #خطوات ربط البرتشنات دائما
المر df
الفصل السابع :إدارة المستخدمين و المجموعات مقدمة -aأوامر التعامل مع المجموعات
#إنشاء مجموعة باستخدام المر groupadd
#تعديل المجموعات باستخدام المر groudmod #حذف المجموعات باستخدام المر groupmod #الملفات الخاصة بالمجموعات الملف /etc/group
-bأوامر التعامل مع المستخدمين
#إنشاء مستخدم باستخدام المر useradd
#تعديل بيانات المستخدمين باستخدام المر usermod #حذف المستخدمين باستخدام المر userdel #الملفات الخاصة بالمستخدمين الملف /etc/passwd
الملف /etc/shadow
#كيفية عمل disableللمستخدم من خلل ملف /etc/shadow #نقل مستخدم من نظام لخر
-aالعتماد على الملف groupفى إدارة المجموعات -bالعتماد على الملف passwdفى إدارة المجموعات
#كيفية نقل المستخدم من مجموعة لخرى 9
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#التعرف على بياناتك المر id
المر groups المر gpasswd
المر passwd
-cالتصاريح permission #مقدمة
كتابة التصاريح بالحرف كتابة التصاريح بالرقام
بحث حول معانى التصاريح و تأثير التصاريح على العمليات المختلفة
أول :تأثير التصاريح على العمليات التى يمكن إجراؤها على المجلدات
ثانيا :تأثير التصاريح على العمليات التى يمكن إجراؤها على الملفات
المر chmod
-aتغيير السماحيات بالرقام
-bتغيير السماحيات بالحرف المر chown المر chgrp
كيفية إنشاء مستخدم
الفصل الثامن :إدارة العمليات مقدمة جعل برنامج يعمل فى الخلفية
تعليق برنامج ليعمل فى الخلفية عرض قائمة بالبرامج التى تعمل فى الخلفية و البرامج المعلقة
اعادة برنامج معلق الى العمل فى المقدمة اعادة برنامج معلق الى العمل فى الخلفية المر ps
10
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المر pstree المر kill
المر killall الخاتمة
11
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الول :اساسيات سطر الوامر أخي القارئ :لكي تفهم مهمة أحد الوامر واستخداماته المتعددة وخياراته يمكنك الستعانة
بأوأمر هذا الفصل لتتمكن من الحاطة بوظيفة المر .
#يوجد لكل أمر صفحات ) manualصفحات مساعدة( الغرض منها التعريف بوظيفة المر وبيان كيفية استخدامه .
#المر : man ووظيفة المر :يعرض لك جميع المعلومات المتعلقة بأي أمر تريد مثل ) كيفية استخدام هذا المر اسم المبرمج الذى كتب هذا المر وبريده اللكترونى – أوامر أخرى لها صلة بهذا المر -......الخ ( . ويتم استخدام هذا المر كالتالى : المر الذى تريد الستعلم عنه man -1إذا أردت معرفة جميع المعلومات المتعلقة بالمر lsاكتب ما يلي: ahmed@the-game:~> man ls
-2لمعرفة وظيفة أمر معين دون عرض كامل لصفحة المساعدة نستخدم الخيار ) ( fفمثل إذا
أردت معرفة وظيفة المر lsاكتب ما يلى :
ahmed@the-game:~> man -f ls
وتكون الجابة كالتالى : - list directory contents - list directory contents
12
)ls (1p )ls (1
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
أي أن المر lsيستعمل فى عرض محتويات المجلدات . -3لمعرفة جميع الوامر التى تؤدى غرضا معينا استخدم الخيار ) (kفمثل إذا أردت معرفة جميع الوامر التى تقوم بالتقسيم fdiskاكتب ما يلى : ahmed@the-game:~> man -k fdisk
وتكون الجابة كالتالى : - Curses based disk partition table manipulator for Linux
)cfdisk (8
- Partition table manipulator for Linux
)fdisk (8
- Partition table manipulator for Linux
)sfdisk (8
ملحظة :الخيارات ] [-fو ] [-kتعتمد على قاعدة بيانات المر whatis مفاتيح التعامل مع صفحات المساعدة : manual
للذهاب لنهاية الصفحة سطر سطر
down arraw
للذهاب لبداية الصفحة سطر سطر
up arraw page down
للتنقل صفحة صفحة لسفل
page up
للتنقل صفحة صفحة لعلى
q
للخروج من صفحة manual
13
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : info ووظيفة هذا المر نفس وظيفة المر السابق manولكن المر infoأكثر تفصيل. ويتم استخدام هذا المر كالتالى : المر الذى تريد الستعلم عنه info
-1إذا أردت معرفة جميع المعلومات المتعلقة بالمر lsاكتب ما يلى : ahmed@the-game:~> info ls
مفاتيح التعامل مع صفحات المساعدة : info
للذهاب لنهاية الصفحة
e
للذهاب لبداية الصفحة
b down arraw
للذهاب لخر الصفحة خطوة خطوة
up arraw
للذهاب لبداية الصفحة خطوة خطوة
*
عند وجود تلك العلمة فإنها تدل على وجود صفحة جديدة تحرك بالسهم وقف عليها واضغط Enterللدخول لتلك الصفحة
? shift +
لمعرفة المفاتيح المفيدة فى صفحة info يرجعك إلى الصفحة الرئيسية لل info
d
للخروج من صفحة info
q 14
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : xman يستخدم هذا المر لعرض صفحات المساعدة manualمثل المر manتماما لكنه يتميز بالتى ) تستطيع استخدام الفارة لعرض الوامر والبحث عنها – يمكنه عرض الوأمر حسب رقمها ) ( 9 – 1كما سيشرح فى جزء كيفية فهم صفحات .( man
ويتم استخدام هذا المر كالتالى :
& ahmed@the-game:~> xman
وسوف يظهر لك الشكل التي :
لعرض صفحات المساعدة اضغط على manual pageوسوف يظهر لك الشكل التي :
15
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
لعرض الوامر حسب رقمها اضغط على الزر العلوى sectionsوللبحث عن أمر معين اضغط على الزر العلوى optionsثم اضعط على searchفيظهر لك الشكل التي :
للبحث عن الوامر حسب السم اضغط على manual pageبعد إدخال اسم المر. للبحث عن الوامر حسب الوظيفة اضغط على Aproposبعد إدخال وظيفة المر .
##طريقة فهم صفحات : manual فى البداية يجب أن تعرف أن لكل أمر فى لينكس رقم يتراوح بين} {9-1يستخدم لتقسيم الوامر حسب وظيفتها وذلك كالتى : 16
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
رقم } 1أوامر تقليدية يمكن لى مستخدم تنفيذها { . رقم } 2أوامر خاصة بالكيرنال . { system calls
رقم } 3أوامر خاصة بالمكتبات )توابع البرمجيات( { .
رقم } 4أوامر خاصة بالــ devicesمثل الهارد و ... vigaالخ { . رقم } 5أوامر خاصة بملفات التهيئة configration filesوكذلك ملفات /etc/passwd
وملفات أخرى { .
رقم } 6أوامر خاصة باللعاب { .
رقم } 7أوامر متفرقة مثل صيغ ملفات . { man رقم } 8أوامر خاصة بإدارة النظام { .
رقم } 9منهجيات النواه , kernel routinesالملفات الصل لمنهجيات النواة { وأهم أرقام هى }. {1,2,5,8
ملحظة مهمة: قد يكون للمر الواحد أكثر من رقم ) أي أنه موجود فى أكثر من قسم ( فمثل المر killموجود بالقسم ). (2) , (1 المشكله هنا أننا عندما نستدعى صفحة المساعدة الخاصة بمثل هذا المر ) (killفإن المر man سوف يبحث عن المر فى قاعدة بياناته ويأتى بأول نتيجة تصادفه ) أي أنه سيأتى لك بالمر kill الموجود فى القسم . ( 1 ولتفادى ذلك لبد من تحديد القسم الذى سيبحث فيه عن المر وذلك عن طريق كتابة رقم القسم قبل المر كالتالى :
ahmed@the-game:~> man 2 kill
مثال :إذا أردنا معرفة معلومات عن المر clearافتح الترمينال termenalواكتب التي :
17
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> man clear
: وتكون كالتالىclear فتظهر لك صفحة المساعدة الخاصة بالمر clear(1)
clear(1 )
NAME clear - clear the terminal screen SYNOPSIS clear DESCRIPTION clear clears your screen if this is possible. It looks in the environment for the terminal type and then in the terminfo database to figure out how to clear the .screen .clear ignores any command-line parameters that may be present SEE ALSO (tput(1), terminfo(5 .(This describes ncurses version 5.6 (patch 20070128
: الشـــــرح 1 ورقمهclear تبدأ صفحة المساعدة بكتابة اسم المر الذى استعلمت عنه ورقمه ) وهو هنا-1 ( أي من الوامر التقليدية التى يمكن لى مستخدم تنفيذها clear(1)
دليل المستخدم العربى فى أوامر لينكس
clear(1)
18
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
2- NAME:
وهنا نجد اسم المر تتبعه وظيفته.
3- SYNOPSIS:
وهنا يبين لك كيفية استخدام المر .فنجد مثل المر : emacs
] emacs [ command-line switches ] [ files ... فالمر يكتب أول ثم يتبعه optionثم بعد ذلك الملف أو المجلد الذى يطبق عليه المر. #قبل النتقال إلى النقطة التالية يجب معرفة كيف تفهم صيغة كتابة المر وذلك كما يلى:
] [ مابداخلها اختيارى يمكن أن تكتبه أو ل تكتبه
> < مابداخلها اجبارى لبد أن تكتبه مع إبداله بالنص المناسب فمثل إذا كان >
تتعامل معه.
} { أي لبد كتابة أحد الخيارات الموجودة بداخله أي اختر مايناسبك. ...الثلث نقط تعنى الخ.
فمثل نجد مكتوبا [option]...أي اكتب خيار واحد أو أكثر ونجد [file]...أي ملف واحد أو أكثر.
يمكن دمج هذه الرموز مع بعضها وتقرأ من الخارج للداخل فمثل الرمز ]> <[ يعنى أنه اختيارى ولو اخترته استبدل مابداخله بما يناسبك.
وهنا نجد شرحا لما يقوم به المر بإيجاز وشرح لخياراته.
4- DESCRIPTION:
5- OPTIONS: 19
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
وهنا شرح مختصر لخيارات المر.
6- EXAMPLES:
هنا بعض المثلة التوضيحية .
7- AUTHORS: هنا نجد اسم المبرمج الذى كتب المر أو البرنامج وكذلك صفحة .manual
8- BUGS: هنا نجد البريد اللكترونى الذى نرسل إليه المشاكل التى تواجهنا أثناء تنفيذ المر أو البرنامج. 9- COPYRIGHT:
هنا نجد معلومات عن حقوق الملكية للمر أو البرنامج.
10- SEE ALSO:
يدلك على الوامر المتعلقة بنفس الموضوع.
نجد هذا القسم فى الوامر التى لها ملفات تهيئة مثل المر .mount
11- F IL ES:
12- HISTORY: يذكر تاريخ المر من حيث إذا كان يستخدم فى أنظمة أخرى مثل unixأو .bsd
#المر : whatis يستخدم لعرض معلومات مختصرة عن أي أمر .ولكى يعمل هذا المر يلزم له قاعدة بيانات. ولعمل قاعدة البيانات اتبع إحدى الطريقتين التيتين: 20
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> su Password: the-game:/home/ahmed # makewhatis
إذا لم تعمل معك تلك الطريقة اتبع الطريقة الثانية: ahmed@the-game:~> su Password: the-game:/home/ahmed # mandb
الن معظم التوزيعات بها قاعدة بيانات جاهزة لهذا المر ول تحتاج كل هذا بل وقد ليوجد بها المر makewhatisأصل.
وطريقة استعمال المر كالتالى: المر الذى تريد الستعلم عن وظيفته whatis -1إذا أردت الستعلم عن وظيفة أمر واحد فقط اكتب ما يلى : ahmed@the-game:~> whatis ls
فتكون النتيجة كالتالى : - list directory contents
21
)ls (1
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-2إذا أردت الستعلم عن وظيفة أكثر من أمر اكتب الوامر المراد الستعلم عنها وراء بعض كالتالى : ahmed@the-game:~> whatis ls dir cd ifconfig
فتكون النتيجة كما يلى : )ls (1
- list directory contents
)dir (1
- list directory contents
cd: nothing appropriate. - configure a network interface
)ifconfig (8
ونلحظ هنا ان المر cdلم يتم العثور له على وظيفة مناسبة .
#المر : apropos يستخدم للبحث عن أي أمر أعرف وظيفته .أي أنك تستخدم هذا المر إذا كنت تبحث عن الوامر التى تؤدى وظيفة معينة. وطريقة استعمال هذا المر كالتالى: وظيفة المر الذى تريد الستعلم عنه apropos -1إذا أردت الستعلم عن الوامر التى يمكن أن تقسم الهارد ديسك اكتب ما يلى : ahmed@the-game:~> apropos fdisk
فتكون النتيجة كما يلى : - Curses based disk partition table manipulator for Linux 22
)cfdisk (8
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
- Partition table manipulator for Linux
)fdisk (8
- Partition table manipulator for Linux
)sfdisk (8
يستخدم المر aproposنفس databaseالخاصة بالمر .whatis
#استخدام الخيار : -- help للحصول على معلومات مختصره عن اى امر استخدم الخيار --helpمع المر الذى تريد الحصول على معلومات عنه مثال :للحصول على معلومات مختصره عن المر lsاكتب ما يلى : ahmed@the-game:~> ls --help
#استخدام المفتاح : tab -1اذا اردت مشاهدة جميع الوامر افتح الترمينال ثم اضغط المفتاح tabمرتين فتظهر لك رساله تسالك هل تريد عرض جميع الوامر وتذكر عددها وتكون الجابه بـ yللموافقه او nللرفض وذلك كالتالى : >~ahmed@the-game: )Display all 4575 possibilities? (y or n
-2اذا اردت مشاهدة جميع الوامر التى تبدأ بحرف معين وليكن mافتح الترمينال ثم اكتب الحرف mثم اضغط على المفتاح tabمرتين فتظهر لك رساله تسالك هل تريد عرض جميع الوامر
التى تبدأ بحرف mوتذكر عددها وتكون الجابه بـ yللموافقه او nللرفض وذلك كالتالى :
ahmed@the-game:~> m )Display all 296 possibilities? (y or n 23
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3اذا كنت غير متذكر صيغة المر بالضبط لكنك متاكد من الحروف الولى من المر افتح
الترمينال واكتب تلك الحروف ثم اضغط على المفتاح tabمره واحده فيكمل لك المر مباشرة اما اذا كان يوجد اكثر من امر يبدأو نتلك الحرف الولى ستحتاج فقط للضغط على المفتاح tab مرتين وبالتالى سيعرض لك جميع الوامر التى تبدأ بتلك الحرف الولى وذلك كالتالى :
ahmed@the-game:~> chk chkstat chktrust
-4ليقتصر استخدام المفتاح tabعلى الوامر وانما يمكن ايضا استعماله مع اسماء الملفات
والمجلدات فمثل اذا اردت الدخول الى مجلد اسمه طويل وبه مسافات باستخدام المر cdولم ترد كتابة ذلك السم فكل ماعليك فعله هو كتابة الحرف الول من المجلد اذا لم يكن هناك مجلد اخر يبدا بذلك الحرف او الحرف الولى من المجلد ثم الضغط على المفتاح tabمره واحده ليكمل لك اسم المجلد .
#علمتى التنصيص ”” : ويتم استخدامهم مع اسماء الملفات و المجلدات التى تحتوى على مسافات فمثل اذا كان لديك مجلد اسمه New folderو اردت الدخول عليه فما عليك ال وضع اسمه بين علمتى التنصيص و ذلك كالتالى : "ahmed@the-game:~> cd "New folder
#تنفيذ عدة اوامر باستخدام ) ; ( : تستخدم تلك العلمه لتنفذ عدة اوامر معا فى نفس الوقت ودون ان تعتمد تلك الوامر على بعضها اى انه اذا فشل تنفيذ امر منهم ليؤثر على تنفيذ بقية الوامر فمثل اذا اردت انشاء مجلد اسمه ngو الدخول الى المجلد ngثم انشاء ملف اسمه tomaاكتب ما يلى : ahmed@the-game:~> mkdir ng ; cd ng ; touch toma 24
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#تنفيذ عدة اوامر باستخدام العلمة && : تستخدم تلك العلمه لتنفذ عدة اوامر معا فى نفس الوقت ودون ان تعتمد تلك الوامر على بعضها اى انه اذا فشل تنفيذ امر منهم ليؤثر على تنفيذ بقية الوامر فمثل اذا اردت انشاء مجلد اسمه hghو الدخول اليه وانشاء ملف اسمه dsاكتب ما يلى : ahmed@the-game:~> mkdir hgh && cd hgh && touch ds
#المعامل النبوبى : ( | ) pipes : pipesهو عبارة عن نوع خاص من الملفات يقوم بعمل مشاركة بين برنامجين بحيث يقوم البرنامج الول بالكتابة الى pipe fileبينما يقوم البرامج الثانى بالقراءة من . pipe file
وتعنى تلك الصورة ان خرج المر الول هو دخل المر الثانى .و المعامل النبوبى ليستخدم مع جميع الوامر وانما يستخدم مع الوامر القادره على القراءه من الدخل النظامى والكتابه الى الخرج النظامى . وفيما يلى بعض المثله على استخدام المعامل النبوبى مع شرح مبسط لها : -1اذا اردت عد السطر الموجوده فى ملف اسمه midoاكتب ما يلى : ahmed@the-game:~> cat mido | wc -l
25
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
هنا المر الول catيستخدم لعرض الملف النصى midoلكن بدل من عرضه فى الترمينال تم ارسال خرج ذلك المر catالى دخل المر wcلكى يقوم بعد السطر فى ذلك الملف -2اذا اردت احصاء عدد السطر الموجوده فى جميع ملفات النظام اى الموجوده تحت الدليل /
اكتب ما يلى :
the-game:/home/ahmed # find / | wc -l
هنا المر findيقوم بعرض جميع الملفات و المجلدات الفرعيه لكن بدل من ان يتم العرض داخل
الترمينال يتم ارسال خرج المر findالى دخل المر wcليتمكن الخير من عد السطر الموجوده فى جميع الملفات على الجهاز -3اذا اردت التاكد من عمل خدمه او برنامج معين مثل برنامج tvtimeاكتب ما يلى : ahmed@the-game:~> ps -A | grep tvtime
اذا كان برنامج tvtimeيعمل سيظهر لك معلومات عن البرنامج مثل رقم العمليه pidواذا لم يكن برنامج tvtimeيعمل فلن يظهر لك شئ فى الترمينال .
#المعاملت > و >> و < و << : وتستخدم تلك العلمات فى اعادة توجيه الخرج و الدخل النظامى اول :المعامل > و >> ) معامل اعادة توجيه الخرج النظامى ( : يستخدم فى اعادة توجيه خرج المر السابق له فمثل اذا كان المر السابق لذلك المعامل يعطى
خرجه للشاشه يمكن باستخدام ذلك المعامل اعادة توجيه الخرج الى ملف مثل .وفيما يلى بعض المثله لليضاح : 26
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
مثال : 1
اذا اردت نسخ محتويات ملف نصى اسمه midoالى ملف اخر اسمه jackاكتب مايلى : ahmed@the-game:~> cat mido > jack
او ahmed@the-game:~> cat mido >> jack
الشرح: المر ) catبدون استخدام المعامل > او >> ( يقوم بعرض محتويات الملف المسمى midoعلى
الشاشه اى فى الترمينال ولكن بعد استخدام المعامل > او >> تم تحويل خرج المر catالى ملف اخر اسمه jack مثال : 2
اذا اردت نسخ صفحة المساعده الخاصه بالمر lsفى ملف اسمه zicoبحيث نستطيع قراءة صفحة المساعده الخاصه بالمر lsباى محرر نصوص اكتب ما يلى : ahmed@the-game:~> man ls > zico
او
ahmed@the-game:~> man ls >> zico
الشرح:
المر ) manبدون استخدام المعامل > او >> ( يقوم بعرض صفحة المساعده الخاصه بالمر ls على الشاشه اى فى الترمينال و لكن بعد استخدام المعامل > او >> تم تحويل خرج المر man الى ملف اسمه zico مثال : 3 اذا اردت انشاء ملف اسمه nonaوالكتابه بداخله باستخدام المر catاكتب ما يلى :
27
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> cat > nona
او ahmed@the-game:~> cat >> nona
ادخل النص الذى تريد ثم اضغط على ctrl+d الشرح: المر catمفردا وظيفته ) ( Copy standard input to standard outputعرض ما
تكتبه فى الدخل القياسى ) الترمينال ( على الخرج القياسى ) الشاشه ( .
لكن بعد استخدام المعامل > او >> تم تحويل ماسيتم كتابته فى الترمينال الى الملف . nona لكن ما الفرق بين المعامل > و المعامل >> ؟ يظهر الفرق فى حالة اذا كان لديك ملف يحمل نفس اسم الملف الموجه اليه الخرج فنجد ان
المعامل > يكتب على الملف مع مسح محتوياته اما المعامل >> فانه يعدل على الملف مع عدم
مسح محتوياته بحيث يتم اضافة الخرج الى اسفل الملف .ولذلك فان من المان استخدام المعامل >> خاصة وانت مستخدم جذر .
ثانيا :المعامل < ) معامل اعادة توجيه الدخل النظامى ( : يستخدم فى اعادة توجيه دخل المر السابق له اى جعل المر السابق له ياخذ دخله من ملف
وفيما يلى مثال لليضاح : مثال :
اذا كان لديك ملف اسمه gamalمحتواه ما يلى :
mr.ahmed mr.hazem mr.hassan mr.islam
واردت تغيير كلمة mr.الى mrs.فى كامل الملف ووضع تلك التغييرات فى ملف جديد اسمه lilaاكتب ما يلى :
ahmed@the-game:~> sed s/mr./mrs./g
lila 28
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الشرح:
هنا تم اخذ دخل المر sedمن الملف gamalعن طريق العلمه < وارسال الخرج الى ملف جديد اسمه lilaعن طريق العلمه >
ثالثا :المعامل << ) المعامل هنا : ( here operator يستخدم فى اعلم الصدفه متى تتوقف عن قراءة الدخل وفيما يلى مثال لليضاح مثال : اذا اردت انشاء ملف اسمه sicaوالكتابه بداخله باستخدام المر catبحيث تتوقف الصدفه عن قراءة الدخل عند كتابة الكلمه game overاكتب ما يلى :
ahmed@the-game:~> cat << "game over" > sica
او "ahmed@the-game:~> cat > sica << "game over
ادخل النص الذى تريد وفى نهايته اكتب كلمة game overفى سطر منفرد وبدون علمتى التنصيص وبالتالى ستتوقف عملية الدخال ولن تحتاج للضغط على ctrl+dمع ملحظة ان كلمة game overلن تظهر فى النص الذى قمت بادخاله فى الملف . sica
29
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
30
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الثانى :أومر البحث #المر : whereis يستخدم هذا المر للبحث عن البرامج ] ملفات ثنائية [ والملفات المتعلقة بها وصفحات كتيب التشغيل . manual وطريقة استعمال هذا المر كالتالى: -1إذا أردت البحث عن برنامج أو أمر معين وكل شىء متعلق به }مثل صفحات manual الخاصة به والملفات { sourceاكتب ما يلى:
اسم البرنامج whereis مثال:للبحث عن المر lsوكل شىء متعلق به ahmed@the-game:~> whereis ls
فتكون النتيجة كما يلى: ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
-2إذا أردت البحث عن صفحات manualفقط اكتب ما يلى: اسم البرنامج whereis -m مثال:للبحث عن صفحات manualالخاصة بالمر lsفقط. ahmed@the-game:~> whereis -m ls
31
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة كما يلى: ls: /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
-3إذا أردت البحث عن الملفات الثنائية فقط اكتب ما يلى: اسم البرنامج whereis -b مثال :للبحث عن الملفات الثنائية الخاصة بالمر lsفقط. ahmed@the-game:~> whereis -b ls
فتكون النتيجة كما يلى: ls: /bin/ls
-4إذا أردت البحث عن الملفات الصل } {sourceفقط اكتب ما يلى: اسم البرنامج whereis -s مثال :للبحث عن الملفات الصل } {sourceالخاصة بالمر lsفقط. ahmed@the-game:~> whereis -s ls
فتكون النتيجة كما يلى: ls:
32
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : locate يستخدم للبحث عن الملفات داخل النظام أو داخل الهارد وهو أسرع من المر .find ملحظة :بعض التوزيعات تحتاج عمل قاعدة بيانات للمر locateقبل استخدامه وذلك كما يلى :
ahmed@the-game:~> su Password: the-game:/home/ahmed # updatedb
وطريقة استعمال هذا المر كالتالى: الملف المراد البحث عنه locate -1إذا أردت البحث عن جميع الملفات ذات نوع واحد فقط داخل جهازك اكتب ما يلى: المتداد الذى تريدlocate *. مثال :للبحث عن الملفات ذات امتداد mp4فقط داخل جهازك. the-game:/home/ahmed # locate *.mp4
فتكون النتيجة مثل كما يلى } :وذلك طبعا حسب الملفات الموجودة على جهازك { /amr1.mp4عمرو/دبى /mnt/collection1/ar v.clip/2008
-2إذا أردت البحث عن الملفات ذات امتداد mp4و mp2معا داخل جهازك اكتب ما
يلى:
33
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # locate *.mp4 *.mp2
فتكون النتيجة مثل كما يلى } :وذلك طبعا حسب الملفات الموجودة على جهازك { /amr1.mp4عمرو/دبى /mnt/collection1/ar v.clip/2008 .mp2كــوكــتيل/بنحب بعض/mnt/collection1/ogg/ar---ogg/
-3إذا أردت البحث عن امتداد معين و ليكن aviفى المسار /mnt/collection1 اكتب مايلى : ahmed@the-game:~> locate /mnt/collection1/*.avi
فتكون النتيجة كما يلى } :وذلك طبعا حسب الملفات الموجوده على جهازك { .aviعمرو/ليلى نهارى/mnt/collection1/ar v.clip/ .aviمحمد فؤاد/محمد فؤاد ميشينا/mnt/collection1/ar v.clip/ .aviمصطفى قمر/غزالى/mnt/collection1/ar v.clip/ .aviهشام عباس/ياليلة/mnt/collection1/ar v.clip/
.تكتب دون مسافات } note : {/mnt/collection1/*.avi
#المر : find يستخدم للبحث عن الملفات و المجلدات كما يستخدم لعرض الملفات و المجلدات الموجوده فى المسار الحالى مثلما يفعل المر lsو الصيغه العامه لستخدام المر هى : find path option action ملحظه :اذا لم تحدد مسار البحث فان البرنامج سيبحث فى المجلد الحالى 34
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
البحث عن الملفات و المجلدات حسب السم و المتداد :
يمكن البحث عن الملفات و المجلدات حسب السم و المتداد باستخدام الخيار -name -1اذا اردت البحث عن جميع الملفات ذات امتداد mp4فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -name *.mp4
-2للبحث عن الملفات و المجلدات التى اسمها oggفى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -name ogg
البحث عن الملفات و المجلدات حسب تاريخ الستخدام : يمكن البحث عن الملفات و المجلدات حسب تاريخ استخدامها او الولوج اليها باستخدام الخيار -atimeوهنا الوحدة المعتبره 24ساعة .
-3للبحث عن الملفات و المجلدات التى تمت عملية الوصول اليها او استعمالها من اكثر من 10 ايام فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -atime +10
-4للبحث عن الملفات و المجلدات التى تمت عملية الوصول اليها او استعمالها من اقل من 10 ايام فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -atime -10
-5للبحث عن الملفات و المجلدات التى تمت عملية الوصول اليها او استعمالها من 10ايام 35
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
بالضبط فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -atime 10
اما اذا اردت البحث عن الملفات و المجلدات حسب تاريخ استخدامها او الولوج اليها بحيث
تكون وحدة الزمن المعتبره هى الدقيقة استخدم الخيار -aminوذلك تماما مثلما سبق . البحث عن الملفات و المجلدات حسب تاريخ التعديل عليها : يمكن البحث عن الملفات و المجلدات حسب تاريخ التعديل عليها باستخدام الخيار -mtimeوهنا الوحدة المعتبره 24ساعة .
-6للبحث عن الملفات و المجلدات التى تم التعديل عليها من اكثر من 10ايام فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -mtime +10
-7للبحث عن الملفات و المجلدات التى تم التعديل عليها من اقل من 10ايام فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -mtime -10
-8للبحث عن الملفات و المجلدات التى تم التعديل عليها من 10ايام بالضبط فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -mtime 10
اما اذا اردت البحث عن الملفات و المجلدات حسب تاريخ التعديل عليها بحيث تكون وحدة الزمن المعتبره هى الدقيقة استخدم الخيار -mminوذلك تماما مثلما سبق .
36
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
البحث عن الملفات و المجلدات تاريخ انشائها : يمكن البحث عن الملفات و المجلدات حسب تاريخ انشائها باستخدام الخيار -ctimeوهنا الوحدة المعتبره 24ساعة .
-9للبحث عن الملفات و المجلدات التى تم انشائها من اكثر من 15يوم فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -ctime +15
-10للبحث عن الملفات و المجلدات التى تم انشائها من اقل من 15يوم فى المسار /media/collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -ctime -15
-11للبحث عن الملفات و المجلدات التى تم انشائها من 15يوم فى المسار /media/collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -ctime 15
اما اذا اردت البحث عن الملفات و المجلدات حسب تاريخ انشائها بحيث تكون وحدة الزمن المعتبره هى الدقيقة استخدم الخيار -cminوذلك تماما مثلما سبق . البحث عن الملفات و المجلدات حسب المالك لها : يمكن البحث عن الملفات و المجلدات حسب المجموعه المالكه لها باستخدام الخيار -userو
الخيار . -uid
-12للبحث عن الملفات و المجلدات التى يملكها مستخدم معين رقم UIDالخاص به هو 1002فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -user 1002 37
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
او ahmed@the-game:~> find /media/collection1/ -uid 1002
-13للبحث عن الملفات و المجلدات التى يملكها مستخدم اسمه conanفى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /home/ -user remstereo
البحث عن الملفات و المجلدات حسب المجموعه المالكه لها : يمكن البحث عن الملفات و المجلدات حسب المجموعه المالكه لها باستخدام الخيار -group و الخيار . -gid
-14للبحث عن الملفات و المجلدات التى تملكها مجموعه معينه رقم GIDالخاص به هو 1000فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -group 1000
او
ahmed@the-game:~> find /media/collection1/ -gid 1000
-15للبحث عن الملفات و المجلدات التى تملكها مجموعه اسمها videoفى المسار media/ /collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -group video
البحث عن الملفات و المجلدات حسب التصاريح :
يمكن البحث عن الملفات و المجلدات حسب التصاريح اما بالحرف او بالرقام باستخدام الخيار -permولكن عليك اول قبل قراءة ذلك الجزء مراجعة الفصل الخاص بالتصاريح
. permissionمع ملحظة ان gتعنى groupو uتعنى userو oتعنى . other
38
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-16للبحث عن الملفات و المجلدات ذات صلحية القراءه فقط للمجموعات فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -perm g=r
وتكون النتيجه هى ايجاد الملفات و المجلدات ذات صلحية القراءه فقط للمجموعات والتى تعادل الصلحيه 0040 -17للبحث عن الملفات و المجلدات ذات صلحية القراءه للمجموعات فى المسار media/
) /collection1بحيث يعرض لك جميع الملفات التى تحمل صلحية القراءه للمجموعات مهما
كانت الصلحيات المقترنه بها ( اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -perm -g=r
-18للبحث عن الملفات و المجلدات ذات الصلحية المركبه r+wفقط للمجموعات فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find -perm g=r+w
وتكون النتيجه هى ايجاد الملفات و المجلدات ذات الصلحية المركبه r+wفقط للمجموعات اى انها تعادل الصلحيه 0060 -19للبحث عن الملفات و المجلدات ذات الصلحية المركبه r+wللمجموعات فى المسار ) /media/collection1بحيث يعرض لك جميع الملفات التى تحمل صلحية القراءه و
الكتابه للمجموعات مهما كانت الصلحيه المقترنه بها ( اكتب ما يلى : ahmed@the-game:~> find -perm -g=r+w
ملحظه :مثلما بحثنا عن التصاريح الخاصه بالمجموعات groupباستخدام الحرف gيمكن 39
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
البحث عن التصاريح الخاصه بالمستخدمين userباستخدام الحرف uو البحث عن التصاريح الخاصه بالخرين otherباستخدام الحرف oتماما مثلما سبق . -20للبحث عن الملفات و المجلدات ذات الصلحية 0040فقط فى المسار /media/collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -perm 0040
وتكون النتيجه هى ايجاد الملفات و المجلدات ذات الصلحية 0040فقط والتى تعادل
صلحيه القراءه للمجموعات .
-21للبحث عن الملفات و المجلدات ذات صلحية القراءه للخرين 0004فى المسار ) /media/collection1بحيث يعرض لك جميع الملفات التى تحمل صلحية القراءه
للخرين 0004مهما كانت الصلحيات المقترنه بها ( اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -perm -0004
البحث عن الملفات و المجلدات حسب حجمها :
يمكن البحث عن الملفات و المجلدات حسب الحجم باستخدام الخيار -sizeمع اتباع الحجم باحد الرموز التاليه :
cتستخدم مع الحجم بالـ bytes kتستخدم مع الحجم بالـ Kilobytes
Mتستخدم مع الحجم بالـ Megabytes Gتستخدم مع الحجم بالـ Gigabytes -22للبحث عن الملفات و المجلدات التى حجمها اكبر من 3جيجا بايت فى المسار /media/collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -size +3G 40
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-23للبحث عن الملفات و المجلدات التى حجمها اقل من 5ميجا بايت فى المسار media/ /collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -size -5M
-24للبحث عن الملفات و المجلدات التى حجمها يساوى 7كيلو بايت فى المسار media/ /collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -size 5k
البحث عن الملفات و المجلدات الفارغه :
يمكن البحث عن الملفات و المجلدات الفارغه باستخدام الخيار -empty -25للبحث عن الملفات و المجلدات الفارغه الموجوده فى المسار /media/collection1 اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -empty
البحث عن الملفات حسب نوعها : يمكن البحث عن الملفات حسب نوعها باستخدام الخيار -typeبحيث يتبع ذلك الخيار احد الرموز التيه :
dيستخدم للبحث عن المجلدات
fيستخدم للبحث عن الملفات العاديه regular file lيستخدم للبحث عن الينكات links -26للبحث عن الملفات العاديه regular fileفى المسار /media/collection1اكتب ما يلى :
41
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> find /media/collection1/ -type f
-27للبحث عن المجلدات الموجوده فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -type d
-28للبحث عن الينكات linksالموجوده فى المسار /media/collection1اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ -type l
عرض الملفات و المجلدات الموجوده فى مسار معين : -29اذا اردت عرض جميع الملفات و المجلدات الموجوده فى المسار
/media/collection1بما فى ذلك الملفات و المجلدات الفرعيه و ايضا الملفات و
المجلدات المخفيه اكتب ما يلى : ahmed@the-game:~> find /media/collection1/
نلحظ هنا انه يتم عرض المجلد ومن ثم يتم عرض محتوياته . -30اذا اردت عرض جميع الملفات و المجلدات الموجوده فى المسار /media/collection1بحيث يتم عرض محتويات المجلد قبل عرض المجلد نفسه اكتب
ما يلى :
ahmed@the-game:~> find /media/collection1/ -depth
-31اذا اردت البحث فى المسار الحالى عن جميع الملفات و المجلدات الجدد من مجلد اسمه kokoموجود فى المسار /media/collection1اكتب ما يلى :
42
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> find -newer /media/collection1/koko
ACTIONS : 1- delete : -32اذا اردت مسح جميع الملفات و المجلدات الموجوده داخل مسار معين وليكن media/ ) /collection1/oggاى مسح المجلد oggبما يحتويه من مجلدات و ملفات فرعيه (
اكتب ما يلى : ahmed@the-game:~> find /media/collection1/ogg -delete
ملحظه :عند استخدام الفعل -deleteفانه يقوم بتشغيل الخيار -depthاتوماتيكيا ) اى انه يقوم بمسح محتويات المجلد المذكور و من ثم يتم مسح المجلد الب نفسه ( . -33اذا اردت مسح جميع المجلدات الفارغه من مسار معين و ليكن /media/collection1اكتب ما يلى :
ahmed@the-game:~> find /media/collection1/ -empty -delete
2- exec : -34لمسح جميع الملفات الموجوده داخل المسار /media/collection1اكتب ما يلى : ;\ '}{' ahmed@the-game:~> find /media/collection1/ -type f -exec rm
-35لمسح جميع المجلدات الفارغه من المسار /media/win-xpاكتب ما يلى : ;\ '}{' ahmed@the-game:~> find /media/win-xp/ -empty -exec rm -r 43
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
او ;\ '}{' ahmed@the-game:~> find /media/win-xp/ -empty -exec rmdir
-36للبحث عن جميع الملفات ذات المتداد aviفى المسار /media/linuxثم نسخها الى المسار /home/ahmedاكتب ما يلى : ;\ ahmed@the-game:~> find /media/linux -name *.avi -exec cp '{}' /home/ahmed
44
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الثالث :التعامل مع الملفات والمجلدات
-aأوامر عامة : #المر : pushd يستخدم للدخول إلى أى مجلد أو أى مسار .وطريقة استعمال هذا المر كالتالى: المسار المراد النتقال إليه
pushd أو
المجلد المراد النتقال إليه pushd مثال :إذا أردت النتقال للمسار التالى } { /mnt/games/chmاكتب ما يلى : ahmed@the-game:~> pushd /mnt/games/chm/
مثال :إذا أردت النتقال للمجلد التالى } { ahmedاكتب ما يلى : ahmed@the-game:/mnt/games/chm> pushd ahmed
#المر : popd يستخدم للرجوع إلى الخلف خطوة واحدة عن المكان الذي تقف عنده .ويستخدم بعد المر pushdفقط أي أنك إذا استخدمت المر cdللدخول لحد المجلدات وأردت استخدام المر popdللرجوع خطوة واحدة فإن المر لن ينفذ ويستخدم هذا المر منفردا كالتالى : ahmed@the-game:/mnt/games/chm/ahmed> popd
فتكون النتيجة كما يلى : 45
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
~ /mnt/games/chm >ahmed@linux-r58p:/mnt/games/chm
ملحظة مهمة :المران popdو pushdليس لهم صفحات مساعده . manual
#المر : cd يستخدم للتنقل بين المجلدات والدخول إليها . -1للدخول إلى مجلد فى نفس المكان الذى تقف فيه اكتب التي : اسم المجلد cd مثال :للدخول إلى المجلد ahmedفى المسار الذي تقف فيه حاليا اكتب التالى: ahmed@the-game:~> cd ahmed
فتكون النتيجة كما يلى : >ahmed@the-game:~/ahmed
-2للدخول إلى مجلد ما فى مسار غير الذي تقف عليه اكتب التي : المسار cd مثال :للدخول إلى المجلد oggالموجود فى المسار التالى /mnt/collection1اكتب ما يلى :
ahmed@the-game:~> cd /mnt/collection1/ogg 46
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة كما يلى : >ahmed@the-game:/mnt/collection1/ogg
-3للرجوع للخلف خطوة واحدة اكتب التي : ahmed@the-game:/mnt/collection1/ogg> cd ..
فتكون النتيجة كما يلى : >ahmed@the-game:/mnt/collection1
-4للرجوع إلى المكان الصلي الذي كنت واقفا فيه اكتب ما يلى : ~ ahmed@the-game:/mnt/collection1/ogg> cd
أو ahmed@the-game:/mnt/collection1/ogg> cd
أو
ahmed@the-game:~> cd --
فتكون النتيجة كما يلى : >~ahmed@the-game:
أي ان ] ~ [ cdو ] فقط [ cdو ] [ cd --يؤديا نفس الغرض . -5للنتقال لعلى مرتين اكتب ما يلى :
47
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:/mnt/collection1/ogg> cd ../..
فتكون النتيجة كما يلى : >ahmed@the-game:/mnt
#المر : pwd يستخدم لعرض المسار أو المكان الذي تقف فيه .وطريقة استخدامه سهلة جدا ببساطة اكتب المر هكذا منفردا وفقط . ahmed@the-game:~> pwd
فتكون النتيجة كما يلى : /home/ahmed
مثال آخر : ahmed@the-game:/mnt/collection1/ogg> pwd
فتكون النتيجة كما يلى : /mnt/collection1/ogg
#المر : ls يستخدم هذا المر لعرض الملفات و المجلدات الموجودة فى المسار الذى تحدده أنت أو لعرض الملفات والمجلدات الموجوده فى المسار الحالى إذا لم تحدد له أي مسار . 48
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-1لعرض جميع الملفات والفهارس فى المسار الحالى } المكان إلى انت واقف فيه دلوقتى { اكتب ما يلى : ahmed@the-game:~> ls
فتكون النتيجة مثل كالتالى : bin Desktop Documents RealPlayer11GOLD.bin public_html
نلحظ أن النتيجة مرتبة أبجديا . -2لعرض جميع الملفات والفهارس فى أي مسار على الجهاز اكتب ما يلى : ahmed@the-game:~> ls /var
فتكون النتيجة كالتالى : cache lib log opt spool X11R6
adm
agentx games lock mail run tmp yp
نلحظ أن النتيجة مرتبة أبجديا . -3لعرض جميع الملفات والمجلدات المخفية وغير المخفية اكتب ما يلى : ahmed@the-game:~> ls -a
فتكون النتيجة كالتالى : 49
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
.
.gconf
.qt
..
.gconfd
.realplayerrc
.bash_history
.gnome2
.recently-used
.bashrc
.gnome2_private .recently-used.xbel
.beagle
.gnu-emacs
.scim
bin
.gtk_qt_engine_rc .skel
.config
.ICEauthority
.subversion
.DCOPserver_the-game__0 .inputrc
.thumbnails
.DCOPserver_the-game_:0 .kde Desktop
.kermrc
.dmrc
.local
Documents
.tvtime .urlview .wapi
.mailcap
.Xauthority
.dvipsrc
.mcop
.xchat2
.emacs
.mozilla
.xcoralrc
.esd_auth .exrc
.mplayer .muttrc
.fontconfig
.ooo-2.0
.fonts
.opera
.fonts.conf
.xemacs .xim.template .xine .xinitrc.template
.profile
RealPlayer11GOLD.bin
.xsession-errors
public_html
.xtalkrc
. نلحظ أن النتيجة مرتبة أبجديا " وذلك كماU "capital- لعرض جميع الملفات والمجلدات دون ترتيب استخدم الخيار-4 : يلى ahmed@the-game:~> ls -U
: فتكون النتيجة كالتالى
دليل المستخدم العربى فى أوامر لينكس
50
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
Documents Desktop bin public_html RealPlayer11GOLD.bin
-5لعرض جميع الملفات مرتبة بالتاريخ بدل من الحروف البجدية اكتب ما يلى : ahmed@the-game:~> ls -t
فتكون النتيجة كالتالى : Text File Desktop bin Documents public_html RealPlayer11GOLD.bin
هنا أنشأت ملفا جديدا اسمه Text Fileليظهر الفرق . -6لعرض جميع الملفات بطريقه عكسية } أي ترتب أبجديا من أسفل إلى أعلى { اكتب ما يلى : ahmed@the-game:~> ls -r
فتكون النتيجة كالتالى : Text File public_html RealPlayer11GOLD.bin Documents Desktop bin
-7لعرض معلومات تفصيلية عن الملفات و المجلدات مثل ) نوع الملف و التصاريح الممنوحة له
وعدد الروابط الصلبة hard linksللملف أو عدد المجلدات الفرعية للمجلد و المالك والمجموعه والحجم بالبايت و تاريخ النشاء واخيرا اسم الملف ( اكتب ما يلى :
ahmed@the-game:~> ls -l
فتكون النتيجة كالتالى : total 7384 51
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
drwxr-xr-x 2 ahmed users 4096 2008-06-12 15:01 bin drwx------ 10 ahmed users 4096 2008-06-18 13:47 Desktop drwx------ 2 ahmed users 4096 2008-06-14 22:20 Documents drwxr-xr-x 2 ahmed users 4096 2008-06-12 15:01 public_html -rwxrwxrwx 1 ahmed users 7502048 2008-06-07 02:45 RealPlayer11GOLD.bin 16 2008-06-13 11:25 Text File
-rw-r--r-- 1 ahmed users
سنبدأ فى شرح المر من اليمين إلى اليسار : نلحظ أنه فى بداية النتيجة يكتب الحجم الجمالى للملفات والمجلدات بوحدة bytesمع ملحظة أن حجم المجلدات ليشمل حجم محتوى تلك المجلدات .
اول :اسم الملف مثل ) . (bin ,Desktop ,........ ثانيا :وقت النشاء مثل ) . ( 15:01
ثالثا :تاريخ النشاء مثل ) . ( 12-06-2008 رابعا :حجم الملفات بوحدة bytesمثل ) . ( 4096
خامسا :المجموعة المالكة للملف وهى هنا ) . ( users
سادسا :اسم مالك الملف وهو هنا ) . ( ahmed سابعا :رقم له إحدى دللتين :
-aإذا كان هذا الرقم أمام أحد المجلدات فإنه يوضح عدد المجلدات الفرعية الموجودة داخل
هذا المجلد فمثل المجلد ) ( Desktopنجد به 10مجلدات فرعية .
-bإذا كان هذا الرقم أمام أحد الملفات الفرعية فإنه يوضح عدد الروابط الصلبة hard links الموجوده لذلك الملف .
ثامنا :التصاريح الموجودة على ذلك الملف أو المجلد مثل ) ( drwxr-xr-xوسنتناول شرح
هذه التصاريح لحقا .
-8لعرض معلومات تقصيلية عن الملفات و المجلدات كما سبق لكن مع إظهار الحجم بالكيلو والميجا والجيجا اكتب ما يلى : 52
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> ls -hl
فتكون النتيجة كالتالى : total 7.3M drwxr-xr-x 2 ahmed users 4.0K 2008-06-12 15:01 bin drwx------ 10 ahmed users 4.0K 2008-06-18 13:47 Desktop drwx------ 2 ahmed users 4.0K 2008-06-14 22:20 Documents drwxr-xr-x 2 ahmed users 4.0K 2008-06-12 15:01 public_html -rwxrwxrwx 1 ahmed users 7.2M 2008-06-07 02:45 RealPlayer11GOLD.bin -rw-r--r-- 1 ahmed users 16 2008-06-13 11:25 Text File
نلحظ أنه فى بداية النتيجة يكتب الحجم الجمالى للملفات والمجلدات بوحدة megaمع ملحظة أن حجم المجلدات ليشمل حجم محتوى تلك المجلدات . -9لعرض جميع الملفات والمجلدات حسب الحجم اكتب ما يلى : ahmed@the-game:~> ls -S
ولمزيد من اليضاح سوف ندمج الخيار lمع الخيار Sوذلك كما يلى : ahmed@the-game:~> ls -lS
فتكون النتيجة كالتالى : total 9760 -rwxrwxrwx 1 ahmed users 7502048 2008-06-07 02:45 RealPlayer11GOLD.bin -rw-r--r-- 1 ahmed users 2111499 2008-06-18 04:23 Chikenux.01.7z 53
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-rw-r--r-- 1 ahmed users 284959 2008-06-18 04:07 83425opensusestreet.png -rw-r--r-- 1 ahmed users 11390 2008-06-18 02:30 hijra-0.1.2.tar.bz2 drwxr-xr-x 2 ahmed users 4096 2008-06-12 15:01 bin drwx------ 10 ahmed users 4096 2008-06-18 13:47 Desktop drwx------ 4 ahmed users 4096 2008-06-18 18:22 Documents drwxr-xr-x 2 ahmed users 4096 2008-06-12 15:01 public_html -rw-r--r-- 1 ahmed users
16 2008-06-13 11:25 Text File.txt
: لعرض جميع الملفات والمجلدات ومحتويات المجلدات أيضا اكتب ما يلى-10 ahmed@the-game:~> ls -R
: فتكون النتيجة كما يلى .: bin Desktop Documents public_html RealPlayer11GOLD.bin Text File ./bin: ./Desktop: epiphany.desktop
ls
openSUSE-10.3-GM-KDE-i386-iso
مشروعى.odt fstab
MozillaFirefox.desktop opera.desktop
konqbrowser.desktop myComputer.desktop
rpmforge-net-
tvtime.desktop konquerorsu.desktop Office.desktop
trash.desktop
./Desktop/openSUSE-10.3-GM-KDE-i386-iso: openSUSE-10.3-GM-KDE-i386.iso ./Documents: دليل المستخدم العربى فى أوامر لينكس
54
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
./public_html:
-11لعرض الملفات مع بيان نوعها اكتب ما يلى : ahmed@the-game:~> ls -F
فتكون النتيجة كما يلى : *RealPlayer11GOLD.bin
bin/ Desktop/ Documents/ public_html/
ونلحظ أن المجلد يأخذ الرمز /والملف التنفيذى يأخذ الرمز * والرابط لملف آخر أو linkيعبر عنه بالرمز @ و socketيأخذ الرمز = .
-12لعرض أسماء الملفات مفصولة بفاصلة اكتب ما يلى : ahmed@the-game:~> ls -m
فتكون النتيجة كما يلى : bin, Desktop, Documents, public_html, RealPlayer11GOLD.bin
-13لعرض أسماء الملفات التى تبدأ بحرف معين } مثل حرف { Dاكتب ما يلى : *ahmed@the-game:~> ls D
فتكون النتيجة كما يلى : Desktop: 55
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
myComputer.desktop
epiphany.desktop
Fedora-9-i386-CDs.torrent Office.desktop fstab
openSUSE-10.3-GM-KDE-i386-iso
~fstab
opera.desktop rpmforge-net-tvtime.desktop
konqbrowser.desktop
Text File
konquerorsu.desktop
trash.desktop
MozillaFirefox.desktop mp3
.odtمشروعى
Documents:
ونلحظ هنا أنه بحث عن المجلدات والملفات التى تبدأ بحرف Dفوجد مجلدين
Desktopو Documentsأحدهما فارغ وهو Documentsوالخر Desktopوبه
ملفات ومجلدات وقد قام بعرضها . -14لعرض جميع الملفات والمجلدات التى أول حرف منها أحد الحرف التية مثل z,R,r
وتنتهى بمقطع ثابت مثل ootاكتب التي :
ahmed@the-game:~> ls [Rrz]oot
فتكون النتيجة كما يلى : root: Root:
ونلحظ من تلك النتيجة أنه وجد المجلدين rootو Rootوهما مجلدان فارغان ولم يجد مجلدا باسم . zoot -15لعرض الملفات والمجلدات التى تبدأ بالحرف من aوحتى rوتنتهى بالمقطع llwاكتب 56
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ما يلى : ahmed@the-game:~> ls [a-r]llw
فتكون النتيجة كما يلى : gllw: kllw:
ونلحظ أنه يعرض لك الحرف smallفقط من aإلى rولن يعرض الحرف الكابيتال . -16لعرض الملفات والمجلدات فى عمود واحد اكتب ما يلى : ahmed@the-game:~> ls -1 /var
فتكون النتيجة كما يلى : adm agentx cache games lib lock log mail opt run spool tmp
57
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
X11R6 yp
-17لعرض الملفات والمجلدات مرتبة ترتيبا هجائيا حسب المتداد اكتب ما يلى : ahmed@the-game:~/Documents> ls -X
فتكون النتيجة كما يلى : hijra-0.1.2.tar.bz2 83425-opensusestreet.png Text File.txt
mido Chikenux.01.7z
tito RealPlayer11GOLD.bin 12.doc
ونلحظ هنا أن المجلدات تأتى أول لنه ليوجد لها امتداد ثم تأتى الملفات حسب الترتيب البجدى لمتدادها كما هو موضح مع ملحظة أنه إذا كان للملف امتداد مركب مثل ) ( .tar.bz2يتم اعتبار آخر جزء فقط فى المتداد وهنا هو ) . ( .bz2
#المر : dir يستخدم لعرض الملفات والمجلدات تماما مثل المر lsويأخذ نفس خيارات المر . ls -bالتعامل مع الملفات : #المر : touch يستخدم هذا المر لنشاء ملف فارغ يستخدم لتغيير تاريخ إنشاء الملف أو المجلد وذلك إذا كان موجود أصل . -1لنشاء ملف فارغ دون امتداد فمثل إذا أردت إنشاء الملف باسم asdاكتب ما يلى : ahmed@the-game:~> touch asd 58
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-2لنشاء ملف فارغ بامتداد معين } اسم الملف xmanوامتداده txtمثل { اكتب ما يلى : ahmed@the-game:~> touch xman.txt
-3لنشاء أكثر من ملف فى وقت واحد يتم كتابة اسم الملفين الواحد تلو الخر مع ترك مسافة بينهم اكتب ما يلى : ahmed@the-game:~> touch hima ahmed
-4لتغيير تاريخ آخر تعديل على ملف أو مجلد موجود أصل بحيث يكون تاريخ آخر تعديل على الملف لحظة كتابة المر } وذلك إذا كنت تمتلك تصريح الكتابة على ذلك الملف أو المجلد
{ اكتب نفس المر السابق كما يلى :
ahmed@the-game:~> touch hima ahmed
ولملحظة الفرق سنستعرض تلك الملفات قبل وبعد تغيير التاريخ باستخدام المر touch كالتالى :
أول قبل تغيير التاريخ باستخدام المر : touch ahmed@the-game:~> ls -l
فتكون النتيجة كما يلى : 0 2008-06-14 22:07 ahmed
-rw-r--r-- 1 ahmed users
0 2008-06-14 22:07 hima
-rw-r--r-- 1 ahmed users
ثانيا بعد تغيير التاريخ باستخدام المر : touch
59
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> ls -l
فتكون النتيجة كما يلى : 0 2008-06-16 14:06 ahmed
-rw-r--r-- 1 ahmed users
0 2008-06-16 14:06 hima
-rw-r--r-- 1 ahmed users
-5لتغيير تاريخ آخر تعديل على ملف أو مجلد موجود أصل بأى تاريخ آخر تختاره يتم استخدام الخيار tولكن قبل شرح كيفية استخدام هذا الخيار يجب توضيح كيفية كتابة التاريخ وذلك كالتالى :
التاريخ يكتب هكذا
cc yy MM DD hh mm ss
حيث : ccأول رقمين من الربعة أرقام الخاصة بالسنين yyآخر رقمين من الربعة أرقام الخاصة بالسنين مثال لتوضيح ccو : yy العام 1985يكون فيه cc=19و yy=85 العام 2008يكون فيه cc=20و yy=08 إذا كانت yyتتراوح بين ) ( 0 – 68يتم اعتبار أن ) . ( cc=20 إذا كانت yyتتراوح بين ) ( 99 – 69يتم اعتبار أن ) . ( cc=19 إذا لم تكتب yyيتم أن العام هو العام الحالى .
MMتعبر عن الشهور . DDتعبر عن اليام .
mmتعبر عن الدقائق . ssتعبر عن الثوانى . ملحظة مهمة : ليتم كتابة أي عدد بخانة واحدة فى التاريخ فمثل :يوم تسعة فى الشهر ل يكتب 9وإنما 60
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
يكتب . 09 إذا أردت وضع الثوانى يجب أن تسبقها نقطة . مثال :إذا كان لديك فى مجلد البيت ملف اسمه midoوتريد تغيير تاريخ آخر تعديل عليه
إلى التاريخ التالى 12/9/1981الساعه 6:30:24عصرا ) بالمناسبة هذا هو تاريخ ميلدى
لمن أراد إرسال هدية !! ( فما علينا إل عمل التي : ahmed@the-game:~> touch -t 8109120630.24 mido
أو
ahmed@the-game:~> touch -t 198109120630.24 mido
وتظهر النتيجة طبعا عند استخدام المر lsمع الخيار lكما يلى : ahmed@the-game:~> ls -l -rw-r--r-- 1 ahmed users 0 1981-09-12 06:30 mido
مثال :إذا كان لديك فى ملف البيت ملف اسمه midoوتريد تغيير تاريخ آخر تعديل عليه إلى التاريخ التالى 30/7/2022الساعه 13:30:50ظهرا فما علينا إل عمل التي :
ahmed@the-game:~> touch -t 2207301330.50 mido
أو ahmed@the-game:~> touch -t 202207301330.50 mido
وتظهر النتيجة طبعا عند استخدام المر lsمع الخيار lكما يلى : ahmed@the-game:~> ls -l 0 2022-07-30 13:30 mido 61
-rw-r--r-- 1 ahmed users دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ملحظة مهمة :ليمكن تغيير التاريخ إلى تاريخ أعلى من 2068ول إلى تاريخ أقل من
. 1969
#المر : cat وظيفة المر catالساسيه هى ) ( Copy standard input to standard output عرض ما تكتبه فى الدخل القياسى ) الترمينال ( على الخرج القياسى ) الشاشه ( .وفيما يلى بعض الوظائف الخرى للمر : cat -aقراة ملف واحد على الشاشة دون أن تتمكن من التغيير فى ذلك الملف . -bقراة أكثر من ملف معا مع دمجهم فى ملف واحد على الشاشة فقط بحيث يظهروا تحت
بعضهم وذلك حسب ترتيب الملفات عند كتابة المر .
-cدمج أكثر من ملف فى ملف واحد ويتم دمجهم تحت بعضهم حسب تسلسل أسماء الملفات عند كتابة المر .
-dالكتابة داخل ملف مع حذف البيانات التى كانت موجودة فيه .
-eللتعديل داخل ملف نصى مكتوب مع الحتفاظ بالبيانات التى كانت موجودة فيه . -fيستخدم لنشاء ملف جديد والكتابة بداخله . ملحظة مهمة :ل يفضل استخدام المر catمع الملفات النصية الطويلة لنها ستعرض على الشاشة بسرعة أكبر من قراءتها .
وفيما يلى شرح لتلك الوظائف و الستخدامات : -1لقراة ملف واحد على الشاشة دون إمكانية التعديل فى محتواه ) بفرض أن الملف اسمه ( socaاكتب ما يلى : ahmed@the-game:~> cat soca 62
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة هى عرض محتوى الملف داخل الترمينال .
-2لعرض ملف اسمه socaمع ترقيم السطر حتى السطر الفارغة استخدم الخيار -nوذلك
كما يلى : ahmed@the-game:~> cat -n soca
-3لعرض ملف اسمه socaمع ترقيم جميع السطر عدا السطر الفارغة استخدم الخيار -b وذلك كما يلى : ahmed@the-game:~> cat -b soca
-4لقراءة أكثر من ملف فى آن واحد مع دمجهم على الشاشة فقط ) بفرض أن لديك ملفين socaو ( tmanاكتب ما يلى : ahmed@the-game:~> cat soca tman
فتكون النتيجة بعرض الملفين بحيث يكون ملف socaفى الول ويليه ملف . tman -5لقرأة أكثر من ملف فى آن واحد مع دمجهم على الشاشة فقط وترقيم كل سطر اكتب ما يلى : ahmed@the-game:~> cat -n soca tman
-6لدمج أكثر من ملف داخل ملف واحد جديد ) بفرض أن الملف الجديد اسمه ( ahmed اكتب ما يلى : ahmed@the-game:~> cat soca tman > ahmed
63
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة هى إنشاء ملف جديد اسمه ahmedيحتوى على ما بداخل الملفين socaو tmanمن بيانات . -7لدمج أكثر من ملف داخل ملف واحد جديد مع ترقيم كل سطر من أسطر الملف الجديد )
بفرض أن الملف الجديد اسمه ( didoاكتب ما يلى :
ahmed@the-game:~> cat -n soca tman > dido
فتكون النتيجة هى إنشاء ملف جديد اسمه didoيحتوى على ما بداخل الملفين من بيانات
بالضافة إلى أن أسطر هذا الملف مرقمة .
-8للكتابة داخل ملف مع حذف جميع البيانات التى كانت موجودة بداخله اكتب ما يلى : ahmed@the-game:~> cat > soca
بعد النتهاء من الكتابة داخل الملف يتم الضغط على Enterثم الضغط على ) ( Ctrl+dلكى يحفظ ماكتبت .
-9للتعديل داخل ملف مكتوب فيه وإضافة بيانات جديدة له مع الحتفاظ بالبيانات الموجودة سابقا اكتب ما يلى : ahmed@the-game:~> cat >> soca
بعد النتهاء من الكتابة داخل الملف يتم الضغط على Enterثم الضغط على ) ( Ctrl+dلكى يحفظ ماكتبت . -10لنشاء ملف جديد مع الكتابة بداخله ) بفرض أن الملف الجديد اسمه ( biboاكتب ما
يلى :
64
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> cat > bibo
بعد النتهاء من الكتابة داخل الملف يتم الضغط على Enterثم الضغط على ) ( Ctrl+dلكى يحفظ ماكتبت .
#المر : tac وظيفة هذا المر هى عرض الملف من الخر للول .أي آخر سطر يكون أول سطر ) بفرض أن الملف المراد عرضه اسمه ( biboوذلك كما يلى : ahmed@the-game:~> tac bibo
#المر : file يستخدم هذا المر لعرض نوع الملف فقط -1لعرض نوع ملف واحد ) بفرض أن الملف المراد عرض نوعه اسمه ( biboاكتب ما يلى : ahmed@the-game:~> file bibo
فتكون النتيجة كما يلى : bibo: ASCII text
-2لعرض نوع أكثر من ملف ) بفرض أن الملفات المراد عرض نوعها هى biboو RealPlayer11GOLD.binو ( binاكتب ما يلى :
ahmed@the-game:~> file RealPlayer11GOLD.bin bibo bin
فتكون النتيجة كما يلى : RealPlayer11GOLD.bin: ELF 32-bit LSB executable, Intel 80386, version 1 65
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
(SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped ASCII text
bibo:
directory
bin:
#المر : paste يستخدم لدمج الملفات النصية معا على الشاشة بالتناظر بحيث يدمج السطر الول للملف الول مع السطر الول للملف الثانى فى سطر واحد و السطر الثانى للملف الول مع السطر الثانى للملف الثانى فى سطر واحد وهكذا . -1لدمج ملفين نصيين معا على الشاشة الملف الول اسمه socaوالملف الثانى اسمه tman اكتب ما يلى : ahmed@the-game:~> paste soca tman
-2لدمج ملفين نصيين معا الول اسمه socaوالثانى اسمه tmanفى ملف اخر اسمه noga اكتب ما يلى : ahmed@the-game:~> paste soca tman > noga
#المر : more يستخدم لقراءة الملفات التى يزيد حجمها عن صفحة .وطريقة استعماله سهلة جدا وهى كتابة اسم الملف المراد قراءته بعد المر moreوذلك كالتالى ) بفرض أن الملف المراد قراءته اسمه : ( tman ahmed@the-game:~> more tman
المفاتيح المستخدمة فى المر : more
66
دليل المستخدم العربى فى أوامر لينكس
الحمد ل رب العالمين
space
للنتقال للصفحة التالية
f
للنتقال للصفحة التالية
b
للعودة للصفحة السابقة
Enter
للنتقال للسطر التالى
h
للمساعدة
q
للخروج
سبحان ال وبحمده سبحان ال العظيم
#المر : less يستخدم لقراءة الملفات تماما مثل المر السابق moreولكن مع بعض التحسينات . وطريقة استعماله تماما مثل المر السابق moreوذلك كالتالى : ahmed@the-game:~> less tman
نفس المفاتيح المستخدمة مع moreتستخدم مع lessبالضافة إلى إمكانية استخدام السهم upو downللتقدم و التأخر سطر ا سطرا .
ولمزيد من المعلومات اكتب ما يلى : ahmed@the-game:~> less –help
من الجدير بالذكر أن المر lessهو البرنامج الذى تعرض به صفحات manualداخل الترمينال .
#المر : head يستخدم لعرض عدد معين من السطر من أول الملف . مثال :إذا أردت عرض أول 10أسطر من ملف اسمه tmanاكتب ما يلى : 67
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> head -10 tman
فتكون النتيجة طبعا هى عرض أول 10أسطر من ذلك الملف .
#المر : tail يستخدم لعرض عدد معين من السطر من آخر الملف .كما يستخدم لعرض جزء من الملف مع إهمال الباقى . -1إذا أردت عرض آخر 15سطر من الملف اكتب ما يلى : ahmed@the-game:~> tail -15 tman
فتكون النتيجة طبعا هى عرض أخر 15سطرا ا من ذلك الملف . -2إذا أردت عرض الملف مع إهمال أول 16سطرا منه اكتب ما يلى : ahmed@the-game:~> tail +16 tman
فتكون النتيجة طبعا هى عرض الملف من أول السطر 16وحتى النهاية .
#المر : wc يستخدم لمعرفة معلومات عن ملف معين .بفرض أن الملف المراد الستفسار عنه اسمه . soca -1لمعرفة عدد السطر اكتب ما يلى : ahmed@the-game:~> wc -l soca
68
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-2لمعرفة عدد الكلمات اكتب ما يلى : ahmed@the-game:~> wc -w soca
-3لمعرفة حجم الملف بوحدة bytesداخل الملف اكتب ما يلى : ahmed@the-game:~> wc -c soca
-4لمعرفة عدد الحرف الموجوده داخل الملف اكتب ما يلى : ahmed@the-game:~> wc -m soca
-5لمعرفة جميع المعلومات السابقه مره واحدة اكتب ما يلى : ahmed@the-game:~> wc soca
#المر : grep يستخدم للبحث عن كلمة أو جملة داخل الملفات النصية ) مع وضع الجملة داخل علمتى تنصيص ( . ملحظة مهمة :يجب مراعاة حالة الحرف capital & smallفى الكلمة التى تبحث عنها . -1إذا أردت البحث عن كلمة ولتكن linuxداخل ملف نصى اسمه socaاكتب ما يلى : ahmed@the-game:~> grep linux soca
فتكون النتيجة هى ظهور جميع السطر التى تحتوى على تلك الكلمة . -2إذا أردت البحث عن جملة ولتكن Linux kernelداخل ملف نصى اسمه soca
اكتب ما يلى :
69
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> grep "Linux kernel" soca
فتكون النتيجة هى ظهور جميع السطر التى تحتوى على تلك الجملة . -3لعرض جميع السطر التى لتحتوى على كلمة معينة ولتكن linuxداخل ملف نصى اسمه socaاكتب ما يلى :
ahmed@the-game:~> grep -v linux soca
فتكون النتيجة هى عرض جميع السطر التى لتحتوى على كلمة . linux -4لعرض جميع السطر التى لتحتوى على جملة معينة ولتكن Linux kernelداخل ملف
نصى اسمه socaاكتب ما يلى :
ahmed@the-game:~> grep -v "Linux kernel" soca
فتكون النتيجة هى عرض جميع السطر التى لتحتوى على جملة . Linux kernel -5لعرض جميع السطر التى تحتوى على كلمة معينة ولتكن Linuxمع عرض أرقام تلك
السطر داخل ملف نصى اسمه socaاكتب ما يلى :
ahmed@the-game:~> grep -n linux soca
-6لعرض جميع السطر التى تحتوى على جملة معينة ولتكن Linux kernelمع عرض أرقام
تلك السطر داخل ملف نصى اسمه socaاكتب ما يلى :
ahmed@the-game:~> grep -n "Linux kernel" soca
-7لعرض عدد السطر التى تحتوى على كلمة معينة ولتكن linuxفى ملف نصى اسمه soca 70
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
اكتب ما يلى : ahmed@the-game:~> grep -c linux soca
-8لعرض عدد السطر التى تحتوى على جملة معينة ولتكن Linux kernelفى ملف نصى اسمه socaاكتب ما يلى :
ahmed@the-game:~> grep -c "Linux kernel" soca
-9لعرض أسماء الملفات فقط التى تحتوى على كلمة معينة ولتكن linuxفى مسار معين
وليكن * /home/ahmed/اكتب ما يلى :
*ahmed@the-game:~> grep -l linux /home/ahmed/
-10لعرض أسماء الملفات فقط التى تحتوى على جملة معينة ولتكن Linux kernelفى مسار معين وليكن * /home/ahmed/اكتب ما يلى :
*ahmed@the-game:~> grep -l "Linux kernel" /home/ahmed/
عند البحث عن الجمل والكلمات باستخدام المر grepفإنه يفضل استخدام بعض الرموز .
هذه الرموز توضع فى الجمل والكلمات موضوع البحث .
هذه الرموز تزيد من كفاءة البحث وتسمى تلك الرموز ) التعابير النظامية ( pattern التعابير النظامية : pattern ^
تعنى أن الكلمة المراد البحث عنها فى أول السطر .
$
تعنى أن الكلمة المراد البحث عنها فى آخر السطر .
.
لتعوض عن حرف واحد ناقص .
]حرف أول,حرف ثانى[
يبحث عن الكلمات التى تبدأ بأى حرف من الحروف 71
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المحصوره بين هذين الحرفين . ]حرف capitalو حرف small
يبحث عن الكلمة التى تبدأ بالحرف المذكور سواء أكان
دون مسافات[يليها باقى الكلمة
capitalأو . small
أمثلة على استخدام التعابير النظامية : -aللبحث عن السطر التى تبدأ بكلمة linuxاكتب ما يلى : ahmed@the-game:~> grep ^linux soca
-bللبحث عن السطر التى تنتهى بكلمة linuxاكتب ما يلى : ahmed@the-game:~> grep linux$ soca
ملحظة مهمة :إذا كان السطر ينتهى بمسافة أو بنقطة .فسوف تفشل عملية البحث لنه بذلك يكون آخر السطر ليس كلمة linux
-cللبحث عن الكلمات التى تبدأ بالحرف أو تنتهى بالحرف ) xفمثل الكلمة التي أبحث عنها هى linuxلكنى ل أتذكرها بالضبط ( اكتب ما يلى : ahmed@the-game:~> grep l...x soca
-dللبحث عن الكلمات عن الكلمات التى تبدأ بالحرف من aإلى fاكتب ما يلى : ahmed@the-game:~> grep [a,f] soca
-eللبحث عن السطر التى بها كلمة rootأو Rootاكتب ما يلى :
72
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> grep [Rr]oot soca
#المر : zgrep يستخدم للبحث عن كلمة أو جملة داخل الملفات النصية المضغوطة ) مع وضع الجملة داخل علمتى تنصيص ( . المر zgrepهو هو المر grepأي تستطيع تطبيق كل ماسبق مع المر grepعلى المر zgrepوالختلف فقط هو أن الملفات التى أبحث فيها هى الملفات النصية المضغوطة . وإليك مثال للتوضيح : إذا أردت البحث عن كلمة ولتكن linuxداخل ملف نصى مضغوط اسمه soca.tar.gz اكتب ما يلى : ahmed@the-game:~> zgrep Linux soca.tar.gz
#المر : diff يستخدم للمقارنة بين ملفين سطر سطر مثال لليضاح :إذا كان لديك ملفان الول اسمه asd1ويحتوى على السطر التالية : ahmed elsayed ahmed ali amr ali
والثانى اسمه asd2ويحتوى على السطر التالية : ahmed elsayed ahmed ali amr ahmed
هنا نجد أن فى الملفين سطرا متشابها وسطرين مختلفين 73
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
للمقارنة بين هذين الملفين اكتب ما يلى : ahmed@the-game:~> diff asd1 asd2
فتكون النتيجة كما يلى : 2,3c2 < < amr ali --> amr ahmed \ No newline at end of file
نلحظ هنا أنه عرض السطر المختلفة من الملفين أسفل بعضهم )حيث السطر الثانى فى الملف الول فارغ بينما السطر الثانى فى الملف الثانى به amr ahmedوكذلك السطر الثالث فى الملف الول به amr aliبينما ليوجد سطر ثالث فى الملف الثانى ( . أي أن السطر المتشابهة تحذف . ملحظات : -aيعتبر السطران مختلفين إذا كانت المسافات بين الكلمات مختلفة حتى إذا كان السطران
يحملن نفس الكلمات بالضبط
-bيعتبر السطران مختلفين إذا كان فى نهاية أحدهما مسافة بينما لينتهى السطر الخر بمسافة -cيعتبر السطران مختلفين إذا كان فى نهاية أحدهما نقطهةبينما لينتهى السطر الخر نقطة
74
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-cالتعامل مع المجلدات : #المر : mkdir يستخدم لنشاء مجلد واحد فقط وكذلك يستخدم لنشاء عدة مجلدات بجانب بعضها البعض أو داخل بعضها . -1لنشاء مجلد فارغ اسمه conanفى المسار الحالى اكتب ما يلى : ahmed@the-game:~> mkdir conan
-2لنشاء مجلد فارغ اسمه conanفى المسار /mntاكتب ما يلى : the-game:/home/ahmed # mkdir /mnt/conan
طبعا لنشاء ملف فى هذا المسار لبد أن تكون مستخدم جذر . root -3لنشاء عدة مجلدات فارغة بعضها بجانب بعض ) بفرض أن المجلدات هى amrو gigiو haniو ( didoاكتب ما يلى : ahmed@the-game:~> mkdir amr gigi hani dido
-4لنشاء أكثر من مجلد داخل بعض ) بفرض أن المجلدات هى edgو amrو gigiو haniو ( didoاكتب ما يلى : ahmed@the-game:~> mkdir -p edg/amr/gigi/hani/dido
-5إذا أردت أن يطلعك المر mkdirعلى تقدم سير عملية النشاء أي يخبرك بالمجلدات التى فرغ من إنشائها استخدم الخيار v-وذلك كما يلى : ahmed@the-game:~> mkdir -vp edg/amr/gigi/hani/dido 75
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة كما يلى : 'mkdir: created directory `edg 'mkdir: created directory `edg/amr 'mkdir: created directory `edg/amr/gigi 'mkdir: created directory `edg/amr/gigi/hani 'mkdir: created directory `edg/amr/gigi/hani/dido
-6اذا اردت انشاء مجلد اسمه midoفى المسار الحالى مع اعطاء ذلك المجلد الصلحية 700بدل من الصلحية الفتراضية 755اكتب ما يلى : ahmed@the-game:~> mkdir -m 700 mido
#المر : tree يستخدم لعرض المجلدات على شكل شجرى . -1لعرض المجلدات وما تحتويه من ملفات و مجلدات على شكل شجرى فى المسار الحالى اكتب ما يلى : ahmed@the-game:~> tree
-2لعرض المجلدات وما تحتويه من ملفات و مجلدات على شكل شجرى فى المسار /var
اكتب ما يلى :
ahmed@the-game:~> tree /var
نلحظ أن تلك الطريقة غير عملية عندما يحتوى المسار الذى تعرضه على ملفات كثيرة و الفضل هو عرض المجلدات فقط من دون عرض ما تحتويه من ملفات و مجلدات 76
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3لعرض المجلدات وما تحتويه من مجلدات فقط على شكل شجرى فى المسار الحالى
اكتب ما يلى :
ahmed@the-game:~> tree -d
-4لعرض المجلدات وما تحتويه من مجلدات فقط على شكل شجرى فى المسار
) ( /varاكتب ما يلى :
ahmed@the-game:~> tree -d /var
-dأوامر النسخ و النقل و المسح و إعادة التسمية :
#المر : rm يستخدم هذا المر لمسح الملفات والمجلدات سواء كانت ممتلئة أم فارغة . -1لحذف ملف وليكن اسمه socaموجود فى المسار الحالى اكتب ما يلى : ahmed@the-game:~> rm soca
-2لحذف ملف اسمه biboموجود فى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> rm /mnt/collection1/bibo
-3لحذف الملف بالقوة وليكن اسمه kokiاكتب ما يلى : ahmed@the-game:~> rm -f koki
77
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-4لتفادى حذف ملف بطريق الخطأ حيث يعطى لك رسالة تكون إجابتها yesأو noبفرض أن الملف اسمه naniوموجود فى المسارالحالى اكتب ما يلى : ahmed@the-game:~> rm -i nani
وتكون النتيجة كالتالى : ?'rm: remove regular file `nani
اكتب yesليتم الحذف : rm: remove regular file `nani'? yes
-5لحذف جميع الملفات الموجوده فى المسارالحالى اكتب ما يلى : * ahmed@the-game:~> rm
-6لحذف المجلد سواء كان ممتلئا أم فارغا اكتب ما يلى ) بفرض أن اسمه :( zizo ahmed@the-game:~> rm -r zizo
ملحظات مهمة :
المر rmليستطيع مسح الملفات إذا كان لهذه الملفات روابط أو اختصارات ولحذف هذه الملفات يجب أول حذف تلك الختصارات ولمعرفة عدد الختصارات أو الروابط للملف استخدم المر ls -l
لنستطيع مسح الملفات التى ليس لدينا تصريح الكتابة عليها .
78
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : cp يستخدم لنسخ الملفات والمجلدات وعند استعماله لبد من تحديد المكان الذى ستنسخ منه والمكان الذى ستنسخ إليه . -1لنسخ ملف اسمه fofaمن المسار /mnt/collection1إلى المسار /home/ahmed/Desktopاكتب ما يلى : ahmed@the-game:~> cp /mnt/collection1/fofa /home/ahmed/Desktop
-2لنسخ ملف اسمه fofaمن المسارالحالى إلى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> cp fofa /mnt/collection1
-3لنسخ ملف اسمه fofaبالقوة من المسارالحالى إلى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> cp -f fofa /mnt/collection1
-4لتفادى نسخ ملف مكان آخر بنفس السم استخدم الخيار -iوبذلك سوف يسألك قبل النسخ إذا كان هناك ملف موجود يحمل نفس السم أم ل والجابة تكون yesأو noفمثل إذا كان لديك ملف اسمه miroوتريد نسخه من المسار
/mnt/collection1إلى المسار الحالى مع استخدام الخيار -iحيث يوجد ملف بنفس
السم فى المسار الحالى اكتب ما يلى :
~ ahmed@the-game:~> cp -i /mnt/collection1/miro
وتكون النتيجة كالتالى :
79
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
?'cp: overwrite `/home/ahmed/miro
اكتب noحتى ليتم النسخ على ذلك الملف cp: overwrite `/home/ahmed/miro'? n
ملحظة :العلمة ~ تدل على المسار الحالى . -5لنسخ مجلد سواء كان ممتلئا أم فارغا استخدم الخيار -rأو -Rفمثل إذا كان لديك مجلد اسمه vectorفى المسار /mnt/collection1وتريد نسخه إلى المسار /home/ahmed/Desktopاكتب ما يلى :
ahmed@the-game:~> cp -r /mnt/collection1/vector /home/ahmed/Desktop
أو ahmed@the-game:~> cp -R /mnt/collection1/vector /home/ahmed/Desktop
نلحظ أنه عند نسخ المجلد أو الملف فإن المالك يتغير إلى المستخدم الذى قام بنسخ الملف أو المجلد . -6لنسخ مجلد اسمه vectorمن المسار /mnt/collection1إلى المسار
/home/ahmed/Desktopولكن مع إظهار عملية النسخ أي ما تم نسخه وما لم يتم
نسخه )هنا نستخدم الخيار ( -vاكتب ما يلى : ahmed@the-game:~> cp -vr /mnt/collection1/vector /home/ahmed/Desktop
سؤال :هل يمكن نسخ ملف أو مجلد إلى مكان آخر أو فى نفس المكان باسم مخالف ؟ الجابة :نعم
-7إذا أردت نسخ ملف اسمه folaفى نفس المكان باسم مخالف وليكن somaاكتب ما 80
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
يلى : ahmed@the-game:~> cp fola soma
-8إذا أردت نسخ ملف اسمه folaمن المسار الحالى إلى المسار /mnt/collection1
باسم مخالف وليكن somaاكتب ما يلى :
ahmed@the-game:~> cp fola /mnt/collection1/soma
-9إذا أردت نسخ ملف من مسار إلى آخر بحيث يكون غير متواجد فى أي من المسارين
فمثل إذا أردت نسخ ملف اسمه ahmedالموجود فى المسار
/mnt/collection1إلى المسار /mnt/collection2اكتب ما يلى : ahmed@the-game:~> cp /mnt/collection1/ahmed /mnt/collection2
#المر : mv يستخدم لنقل الملفات والمجلدات من مكان إلى آخر وعند استعماله لبد من تحديد المكان الذى ستنقل منه والمكان الذى ستنقل إليه . يمكن استعمال المر mvلعادة تسمية الملفات والمجلدات وذلك بنقل الملف أو المجلد إلى نفس المسار مع تغيير اسمه . استخدام المر mvيشبه كثيرا استعمال المر cpفيما عدا أنه ينقل المجلدات دون استخدام الخيار -rوإليك فيما يلى أمثلة لستخدام المر . mv -1لنقل ملف اسمه fofaمن المسار /mnt/collection1إلى المسار /home/ahmed/Desktopاكتب ما يلى : ahmed@the-game:~> mv /mnt/collection1/fofa /home/ahmed/Desktop
-2لنقل ملف اسمه fofaمن المسارالحالى إلى المسار /mnt/collection1اكتب ما
يلى :
81
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> mv fofa /mnt/collection1
-3لنقل ملف اسمه fofaبالقوة من المسارالحالى إلى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> mv -f fofa /mnt/collection1
-4لتفادى لنقل ملف مكان آخر بنفس السم استخدم الخيار -iوبذلك سوف يسألك قبل النقل إذا كان هناك ملف موجود يحمل نفس السم أم ل والجابه تكون yesأو noفمثل إذا كان لديك ملف اسمه miroوتريد نقله من المسار
/mnt/collection1إلى المسار الحالى مع استخدام الخيار -iحيث يوجد ملف بنفس
السم فى المسار الحالى اكتب ما يلى :
~ ahmed@the-game:~> mv -i /mnt/collection1/miro
وتكون النتيجة كالتالى : ?'mv: overwrite `/home/ahmed/miro
اكتب noحتى ليتم النقل على ذلك الملف mv: overwrite `/home/ahmed/miro'? n
ملحظة :العلمة ~ تدل على المسار الحالى . -5لنقل مجلد ممتلئ بالملفات و المجلدات الفرعية وليكن اسمه zimaمن المسار الحالى إلى المسار /mnt/collection1اكتب ما يلى :
82
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> mv zima /mnt/collection1
-6لنقل مجلد اسمه zimaمن المسار /mnt/collection1إلى المسار
/home/ahmed/Desktopولكن مع إظهار عملية النقل أي ما تم نقله وما لم يتم نقله
)هنا نستخدم الخيار ( -vاكتب ما يلى : ahmed@the-game:~> mv -v /mnt/collection1/zima /home/ahmed/Desktop
-7لعادة تسمية ملف أو مجلد يتم عمل التالى : يتم نقل الملف أو المجلد إلى نفس المكان ولكن باسم مخالف فمثل إذا كان لديك مجلد اسمه zimaموجود فى المسار /home/ahmed/Desktopوتريد إعادة تسميته إلى mike
اكتب ما يلى : ahmed@the-game:~> mv /home/ahmed/Desktop/zima /home/ahmed/Desktop/ mike
ملحظة : إذا وقفت على المسار الذى عليه المجلد المراد إعادة تسميته فإنك لن تحتاج لكتابة كل هذه
المسارات وفيما يلى مثال لليضاح على نفس المثال السابق :
ahmed@the-game:~> cd /home/ahmed/Desktop ahmed@the-game:~/Desktop> mv zima mike
عند تغيير اسم الملف أو المجلد باستخدام المر mvوكان هناك فى ذلك المسار مجلد بنفس
السم الجديد سوف ينقل إليه الملف أو المجلد الذى أردت تغيير اسمه لن المر mvيبحث أول عن مجلد بالسم الجديد لكى ينقل إليه الملف أو المجلد اما إذا أردت تغيير اسم ملف وكان هناك فى ذلك المسار ملف بنفس السم الجديد سوف يتم عمل إحلل overwriteحيث تحل البيانات الموجوده فى الملف المراد تغيير اسمه محل 83
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
البيانات الموجوده فى الملف ذو السم الجديد فمثل إذا كان لديك ملف اسمه bisoوأردت تغيير اسمه إلى nonaوكان بالصدفة هناك ملف اسمه nonaلم تنتبه إلى وجوده .فكيف تكون النتيجة ؟
النتيجة هى أنه عند كتابة المر ahmed@the-game:~/Desktop> mv biso nona
تنتقل جميع البيانات الموجودة فى ملف bisoلتحل محل البيانات الموجودة فى ملف . nona -8إذا أردت نقل ملف اسمه folaمن المسار الحالى إلى المسار /mnt/collection1
باسم مخالف وليكن somaاكتب ما يلى :
ahmed@the-game:~> mv fola /mnt/collection1/soma
-9لعمل نسخة احتياطية من الملف المراد نقله أو اعادة تسميته استخدم الخيار -bوذلك بفرض أن الملف اسمه wamaكما يلى :
ahmed@the-game:~> mv -b wama /mnt/collection1
وتكون النتيجة هى عمل نسخة احتياطية فى مكان الملف الصلي قبل النقل تكون تحت اسم ~ wamaمع نقل الملف wamaإلى المسار /mnt/collection1
84
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
النسخ والنقل باستخدام علمة * : لنسخ جميع الملفات و المجلدات الموجودة فى المسار الحالى مره واحدة إلى مسار معين وليكن /mnt/collection1اكتب ما يلى : ahmed@the-game:~> cp -r * /mnt/collection1
لنقل جميع الملفات و المجلدات الموجودة فى المسار الحالى مرة واحدة إلى مسار معين وليكن /mnt/collection1اكتب ما يلى : ahmed@the-game:~> mv * /mnt/collection1
ملحظة مهمة : عند كتابة اسم فولدر أو ملف مكون من كلمتين بينهما مسافة فى الترمينال يجب وضع اسم
الفولدر أو الملف بين علمتى تنصيص “ “ فمثل اكتب " “ new folderول تكتب new . folder
#المر : ln يستخدم لنشاء روابط لينة و صلبة - 1الروابط اللينة : الرابط اللين هو ملف صغير يحتوى على مسار الملف أو المجلد الصلى وإذا حذف هذا الرابط فلن يؤثر هذا على الملف الصلي أما إذا حذف الملف الصلي فلن يعمل الرابط .ويتم عمل الروابط اللينة للملفات و المجلدات على حدا سواء . تعمل الروابط اللينة عبر : } أنظمة الملفات المختلفة -أنظمة الملفات الشبكية – الجهزة المركبة – الدلة { . ولنشاء الروابط اللينة نستخدم المر lnمع الخيار -sفمثل إذا كان لديك ملف اسمه hima موجود فى المسار /mnt/collection1وتريد إنشاء رابط له اسمه zimaفى المسار 85
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
/home/ahmed/Desktopاكتب ما يلى : ahmed@the-game:~> ln -s /mnt/collection1/hima /home/ahmed/Desktop/zima
- 2الروابط الصلبة : ل يمكن إنشاء الروابط الصلبة عبر } :أنظمة الملفات الشبكية -أنظمة الملفات المختلفة – الجهزة المركبة – { partitionوكذلك ل يمكن إنشاء رابط صلب لمجلد .
أي يجب أن يكون الرابط الصلب فى نفس قسم أو partitionالملف الصلى .
ولنشاء رابط صلب ل نستخدم مع المر lnأي خيار فمثل إذا كان لديك ملف اسمه nova فى المسار /mnt/collection1وتريد إنشاء رابط صلب له اسمه kokaفى المسار /mnt/collection1/oggاكتب ما يلى :
ahmed@the-game:~> ln /mnt/collection1/nova /mnt/collection1/ogg/koka
86
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الرابع :الضغط و الرشفة -aالرشفة : الرشيف هو مجموعة من الملفات و المجلدات الموجودة معا فى مكان واحد ويتم التعامل معها على أنها ملف واحد .
#المر : tar يستخدم لعمل أرشيف و لعرض محتويات أرشيف و لفك أرشيف .بحيث تكون الملفات والمجلدات المؤرشفة تحت امتداد .tar -aعمل أرشيف :
لعمل أرشيف استخدم الخيار cvf –
حيث cتعنى creat
–
و vتعنى اعرض العمليات التى تجرى أثناء عملية الرشفة
–
و fتعنى file
–
ومن الجدير بالذكر أن هذا الخيار غير إبدالى أي أن) -cvfليساوى .( -fvc
-1لعمل أرشيف لمجلد اسمه wcwبه مجموعة من الملفات و المجلدات الفرعية وموجود فى المسار /mnt/collection1مع وضع الرشيف فى المسار /home/ahmed/Desktopاكتب ما يلى :
ahmed@the-game:~> cd /mnt/collection1
ahmed@the-game:/mnt/collection1> tar -cvf /home/ahmed/Desktop/wcw.tar wcw
-2لعمل أرشيف لمجلد اسمه wcwبه مجموعة من الملفات و المجلدات الفرعية وموجود فى المسار /mnt/collection1وتريد وضع الرشيف فى نفس مسار المجلد wcwوتسميته
mtmاكتب ما يلى :
87
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> cd /mnt/collection1 ahmed@the-game:/mnt/collection1> tar -cvf mtm.tar wcw
-3إذا أردت عمل أرشيف لمجلد به مجموعة من الملفات والمجلدات الفرعية وتريد أن تنتقى بعضا من هذه الملفات والمجلدات لتدرجها داخل الرشيف بحيث يعطيك رسالة يسألك فيها عن كل ملف أو مجلد هل تريد ضمه للرشيف أم ل وتكون الجابه yأو nاستخدم الخيار -cwf
بفرض أن المجلد المراد أرشفته اسمه gigiالموجود فى المسار /mnt/collection1وتريد وضع الرشيف فى نفس مسار المجلد gigiوتسميته vinoاكتب ما يلى : ahmed@the-game:~> cd /mnt/collection1 ahmed@the-game:/mnt/collection1> tar -cwf vino.tar gigi
وتكون النتيجة كالتالى : ?'add `/mnt/collection1/gigi
لبد أن تكتب yحتى يكمل عملية الرشفة add `/mnt/collection1/gigi'?y
وهكذا سيتابع معك السئلة عن كل ملف أو مجلد فرعى أجب بما تشاء . نلحظ أنك إذا أجبت عن أول سؤال nفإنه لن يسألك عن باقى الملفات والمجلدات الفرعية وبالتالى سوف تحصل على أرشيف فارغ .
-4لرشفة مجلد اسمه rayaباستخدام الصيغة gzipمع وضع الرشيف فى نفس مسار المجلد و تسمية hoda.tgzاكتب ما يلى :
ahmed@the-game:~> tar -czvf hoda.tgz raya 88
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-5لرشفة مجلد اسمه rayaباستخدام الصيغه bzip2مع وضع الرشيف فى نفس مسار المجلد و تسمية hoda.bz2اكتب ما يلى :
ahmed@the-game:~> tar -cjvf hoda.bz2 raya
-bعرض محتويات الرشيف :
-1لعرض محتويات أرشيف اسمه vino.tarموجود فى المسار /mnt/collection1 اكتب ما يلى : ahmed@the-game:~> tar -tf /mnt/collection1/vino.tar
-2لعرض محتويات أرشيف اسمه vino.tarموجود فى المسار /mnt/collection1مع عرض جميع البيانات للملفات والمجلدات الفرعية الموجودة بداخله اكتب ما يلى : ahmed@the-game:~> tar -tvf /mnt/collection1/vino.tar
-cفك أرشيف و استخراج محتوياته : -1لستخراج محتويات أرشيف اسمه vino.tarموجود فى المسار /mnt/collection1
بحيث توضع الملفات المستخرجة فى نفس مسار الرشيف اكتب ما يلى :
ahmed@the-game:~> cd /mnt/collection1 ahmed@the-game:/mnt/collection1> tar -xvf vino.tar
-2لستخراج محتويات أرشيف اسمه vino.tarموجود فى المسار /mnt/collection1
بحيث توضع الملفات المستخرجة فى المسار الحالى اكتب ما يلى :
ahmed@the-game:~> tar -xvf /mnt/collection1/vino.tar
89
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3لستخراج ملف واحد أو عدد قليل من الملفات من أرشيف اسمه vino.tar موجود فى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> tar -xvwf /mnt/collection1/vino.tar
وتكون النتيجة كالتالى : ?'extract `gigi
لبد أن تكتب yحتى يكمل عملية الفك extract `gigi'?y
وهكذا سيتابع معك السئلة عن كل ملف أو مجلد فرعى أجب بما تشاء . -4إذا كنت تريد استخراج ملف بعينه اسمه nana.pdfمن أرشيف اسمه wcw.tar موجود فى المسار /mnt/collection1اكتب ما يلى : ahmed@the-game:~> cd /mnt/collection1 ahmed@the-game:/mnt/collection1> tar -xf wcw.tar wcw/nana.pdf
-dإضافة ملف أو مجلد إلى أرشيف :
-1لضافة ملف اسمه midoإلى أرشيف موجود أصل اسمه yara.tarمع العلم أن الملف و الرشيف موجودان فى نفس المسار اكتب ما يلى : ahmed@the-game:~> tar -rvf yara.tar mido
-2لضافة مجلد } به مجموعة من الملفات الفرعية { اسمه gamalإلى أرشيف موجود أصل 90
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
اسمه yara.tarمع العلم أن الملف و الرشيف موجودان فى نفس المسار اكتب ما يلى : ahmed@the-game:~> tar -rvf yara.tar gamal
#المر : cpio يستخدم لنشاء أرشيف و لستخراج الملفات من الرشيف و لدخال ملفات إلى داخل أرشيف . عند إنشاء أرشيف cpioيتم أخذ قائمة بأسماء الملفات والمجلدات التى سيتم أرشفتها ثم ترسل إلى الخرج القياسى أو إلى الجهاز الذى سيتم أرشفته بواسطة الخيار -fوعادة يتم استخدام المر lsأو findلتوفير تلك القائمة للخرج القياسى -1لرشفة مجلد اسمه } nogaبه مجموعة من الملفات فقط { موجود فى المسار
/mnt/collection1مع وضع الرشيف فى نفس مسار المجلد nogaوتسميته tatu
اكتب ما يلى : ahmed@the-game:~> cd /mnt/collection1/noga ahmed@the-game:/mnt/collection1/noga> ls | cpio -ov > ../tatu.cpio
أو
ahmed@the-game:/mnt/collection1/noga> find | cpio -ov > ../tatu.cpio
-2لرشفة مجلد اسمه } nogaبه مجموعة من الملفات والمجلدات الفرعية { موجود فى
المسار /mnt/collection1مع وضع الرشيف فى نفس مسار المجلد nogaوتسميته tatuاكتب ما يلى : ahmed@the-game:~> cd /mnt/collection1/noga ahmed@the-game:/mnt/collection1/noga> find | cpio -ov > ../tatu.cpio
الخيار oيعنى createsاما الخيار vيستخدم لظهار ما الذى انتهى من أرشفته . 91
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
نأتي الن للتعرف على ماهية الفرق بين lsو findالذين استخدما للمساعدة فى عملية الرشفة . إن إنشاء أرشيف باستخدام المر cpioيتتطلب عمل قائمة بالملفات والمجلدات وما تحويها
ثم إرسالها إلى الخرج القياسى أي الرشيف .وعادة يستخدم } lsأو . { findلتجهيز تلك القائمة ولكن متى نستخدم lsومتى نستخدم findوالجابة بكل سهولة أن المر lsيستخدم لعمل
قائمة للملفات فقط } أي أنه ليدمج فى تلك القائمة الملفات الموجودة داخل المجلدات الفرعية {
لليضاح اكتب المر lsمنفردا وأنت على أي مسار فماذا تكون النتيجة ؟ النتيجة هى أنه يعرض جميع الملفات والمجلدات الموجوده فى المسار الحالى دون عرض الملفات الموجوده داخل
المجلدات الفرعية .
اما المر findيستخدم لعمل قائمة للملفات و المجلدات الفرعية وما تحويه } أي أنه يدمج فى
تلك القائمة الملفات الموجوده داخل المجلدات الفرعية { لليضاح اكتب المر findمنفردا
وأنت على أي مسار فماذا تكون النتيجة ؟ النتيجة هى أنه يعرض جميع الملفات والمجلدات الموجوده فى المسار الحالى مع عرض الملفات الموجوده داخل المجلدات الفرعية . ملخص : استخدم lsعندما ليكون فى المجلد المراد أرشفته مجلدات فرعية .
استخدم findعندما يوجد فى المجلد المراد ارشفته مجلدات فرعية . -2فك أرشيف : -1إذا أردت فك أرشيف اسمه nogaفى المكان اللى انت واقف فيه حاليا اكتب ما يلى : ahmed@the-game:~> cpio -iv <noga
-2إذا أردت فك أرشيف اسمه nogaفى مجلد اسمه tamerاكتب ما يلى : ahmed@the-game:~> mkdir tamer ahmed@the-game:~> cd tamer ahmed@the-game:~/tamer> cpio -iv <../noga
92
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-bالضغط : #المر : gzip يستخدم لضغط الملفات كما يستخدم لضغط أي أرشيف من نوع tarفمثل المتداد من نوع tar.gzهو عبارة عن أرشيف من نوع tarتم ضغطه بواسطة المر . gzip ملحظات : -aليتم ضغط المجلد مباشرة وإنما يجب أول أرشفته ومن بعد ذلك يتم ضغطه . -bبعد ضغط الملف أو الرشيف يتم مسحه أو إزالته .
قبل شرح المر يجب أن تعرف أن مستويات الضغط تتراوح من ) ( 9-1ويمكن تحديد مستوى الضغط أو تركه . default -1لضغط ملف اسمه amr-diab.mp3مع وضع الملف المضغوط فى نفس مسار الملف
وتسميته بنفس السم وترك مستوى الضغط defaultاكتب ما يلى :
ahmed@the-game:~> gzip amr-diab.mp3
-2لضغط أرشيف اسمه amr-diabمع وضع الرشيف المضغوط فى نفس مسار الرشيف
وتسميته بنفس السم واختيار أقصى مستوى الضغط ) ( 9اكتب ما يلى :
ahmed@the-game:~> gzip -9 amr-diab.tar
-3للتأكد من أن الملف المضغوط فى حالة سليمة أم ل استخدم الخيار -tvفمثل إذا كان
لديك أرشيف مضغوط اسمه amr-diab.tar.gzوتريد التأكد من أن ذلك الملف المضغوط فى حالة سليمة اكتب ما يلى :
ahmed@the-game:~> gzip -tv amr-diab.tar 93
دليل المستخدم العربى فى أوامر لينكس
الحمد ل رب العالمين
وتكون النتيجة إما ) ok أو تكون ) not ok
سبحان ال وبحمده سبحان ال العظيم
( amr-diab.tar.gz:فيكون الملف سليما
( amr-diab.tar.gz:فيكون الملف معطوبا .
-4لعرض جميع المعلومات عن ملف مضغوط اسمه amr-diab.tar.gzمثل حجم الملف قبل وبعد الضغط ونسبة الضغط اكتب ما يلى : ahmed@the-game:~> gzip -l amr-diab.tar.gz
-5لفك ملف مضغوط اسمه amr-diab.mp3.gzوذلك فى نفس المسار اكتب ما يلى : ahmed@the-game:~> gzip -d amr-diab.mp3.gz
تنبيه:
عند فك الملف المضعوط يتم حذفه تلقائيا والبقاء على الملف المفكوك .
94
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
95
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الخامس :محررات النصوص #المحرر : mcedit هو أسهل محرر نصوص على الطلق لدرجة أنه ليحتاج لى شرح ويتميز بأن الفأرة تعمل بداخله . -1اذا اردت عمل ملف نصى اسمه midoوالكتابه بداخله فما عليك ال عمل التى : -aافتح الترمينال واكتب المر التالى :
ahmed@the-game:~> mcedit
سيظهر لك شكل البرنامج كما يلى :
-bاكتب بداخل البرنامج النص الذى تريد ثم اضغط على saveفتظهر لك رساله تخبرك هل 96
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
أنت متأكد أنك تريد الحفظ اضغط saveفتظهر لك رساله أخرى تقول لك أدخل اسم الملف اضغط okثم quitسيتم حفظ الملف فى مجلد البيت الخاص بك .خلص كده مبروك لقد
قمت بعمل أول ملف نصى لك .
-2لفتح ملف اسمه midoللتعديل عليه اكتب ما يلى : ahmed@the-game:~> mcedit mido
طبعا يتم التعامل مع الملف كما سبق شرحه
ملحوظه :للحصول على tool barعلوى اضغط على . f9
#المحرر vimو : gvim المحرر vimهو نسخة مطورة من المحرر viوفى الغالب نجد أن المحرر viهو رابط للمحرر . vimويعد المحرر vimأو viمن أشهر المحررات وأكثرها فائدة و ذلك لنك أول :ستجده متوفر ا على أي نظام لينكس . وثانيا :أنه من البرامج القليلة التى تستمر فى العمل بكفاءة عند حدوث أي مشكله فى النظام وبالتالى سوف تضطر إلى استخدامه لصلح النظام . اما بالنسبه للمحرر gvimفما هو إل واجهة للمحرر vimتعمل فى الواجهة الرسومية . للمحرر vimطوران أساسيان ) طور الوامر -و طور الدخال ( : -1طور الوامر :
هو الطور الفتراضى و للتحول إليه اضغط على . Esc -2طور الدخال :
وفيه يكون البرنامج كأى محرر نصوص آخر وللتحول إليه نضغط iأو . insert للمحرر vimأكثر من 50خيار من خيارات سطر الوامر ويمكنك الرجوع إلى صفحة manualللطلع عليها ولمعرفة معلومات أكثر عن البرنامج وآخر إصداراته زُر موقع البرنامج . http://www.vim.org
97
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
كما يمكنك من خلل الموقع تنزيل كتاب بصيغة pdfيشرح كيفية التعامل مع البرنامج والستفاده من مميزاته .تخيل أن حجم هذا الكتاب 572صفحة مما يدل على روعة هذا البرنامج .
ملحظة :يمكن تشغيل المحرر vimفى وضع يتصرف فيه كالمحررات العادية لكنك ستخسر
الكثير من مزاياه وذلك بكتابة ما يلى :
ahmed@the-game:~> evim
ونأتي الن لشرح كيفية التعامل مع هذا البرنامج بصوره مختصره جدا : -1إذا أردت عمل أو فتح ملف نصى اسمه file.txtفما عليك إلكتابة ما يلى فى الترمينال : ahmed@the-game:~> vim file.txt
فتظهر لك الشاشة التالية فى الترمينال :
98
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
حيث إن العلمة ~ تدل على السطر كما أنه ظهر فى آخر الشاشة رسالة بها اسم الملف وهو
file.txtوبها كلمة new fileللدللة على أنك أنشأت ملفا جديدا
اضغط على iأو insertللنتقال إلى طور الدخال ) لحظ ظهور كلمة -- INSERT -- أسفل الشاشة ( ثم أدخل النص التالى : A very intelligent turtle Found programming unix a hurdle The system, you see, Ran as slow as did he, And that's not saying much for the turtle.
بعد النتهاء من إدخال ذلك النص اضغط على Escللتحول إلى طور الوامر ) لحظ اختفاء كلمة – INSERT --أسفل الشاشة ( ثم اكتب wq:وذلك للحفظ و إغلق البرنامج . قبل تعلم خصائص المفاتيح فى طور الدخال يجب التنويه على بعض الساسيات التى قد تكون بديهية لكثير منا ولكن قد يغفل عنها البعض وهى كالتالى : -1يجب أن يفصل بين الجملة والجمله نقطة .
-2يجب أن يفصل بين الفقرة والفقرة سطر فارغ أو أكثر . مفاتيح التعامل مع المحرر vimفى طور الوامر :
kأو up arraw
التحرك لعلى التحرك لسفل
jأو down arraw
التحرك يمينا
lأو right arraw
التحرك يسارا
hأو left arraw 99
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
:help
إظهار صفحة المساعدة أعلى الملف
ctrl + ww
العوده من صفحة المساعدة إلى الملف
داخل صفحة المساعدة :q
لغلق صفحة المساعدة
/
البحث فى الملف عن كلمة معينة حذف الحرف الحالي
Deleteأو x
حذف الكلمة الحالية
dw
النتقال إلى بداية الكلمة التالية
w
النتقال لنهاية الكلمة التالية
e
النتقال لنهاية الكلمة السابقة
b dd
حذف السطر الحالى
p
للصق ماحذفته فى أي مكان مرة أو أكثر
End
النتقال لنهاية السطر التالى النتقال لنهاية السطر الحالى
shift + $
النتقال لبداية السطر الحالى
number zeroأو ^ shift +
النتقال لبداية الجملة التية
) shift +
النتقال لبداية الجملة السابقة
( shift +
النتقال لنهاية الفقرة التالية
}shift +
النتقال لنهاية الفقرة السابقة
{ shift + gg
النتقال لبداية الصفحة
page up
النتقال صفحة واحدة لعلى
page down
النتقال صفحة واحدة لسفل
u
التراجع عن آخر عملية قمت بها undo
ctrl + r
يستعمل بعد الختصار uإذا أردت إلغاء 100
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ماتراجعت عنه أي التفدم إلى آخر عملية فمت بها اسم الملف الجديد :e
لفتح ملف جديد مع إغلق الملف الحالى
اسم الملف :split
لفتح أكثر من ملف فى وقت واحد مع
ظهورهم أسفل بعض
ctrl + ww
للتنقل بين الملفات المفتوحة للحفظ مع عدم إغلق الملف
:w
لغلق الملف
:q
لغلق الملف مع عدم الحفظ
!:q :wq
لغلق الملف مع الحفظ مفاتيح التعامل مع المحرر vimفى طور الوامر التى تحتاج لمثلة :
-1لحذف الجملة السابقه فى سطر مكون من أكثر من جملة اكتب ( d + shift +مع وضع المؤشر قبل بداية أول حرف فى الجملة التالية فمثل إذا كان لديك جملتان كالتالى : my name is ahmed elsayed ahmed ali . this is my last chance . this my last escape .
فإذا أردت حذف جملة my name is ahmed elsayed ahmed aliيجب وضع المؤشر فى المكان المظلل باللون الحمر كما هو موضح .
-2لحذف جملة سابقه مع إضافة جملة أو كلمة بدل منها اكتب ( c + shift +
ثم اكتب الكلمة أو الجملة التى تريد حيث إنك بعد الحذف قد تحولت لطور الدخال 101
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
مع مراعاة وضع المؤشر قبل بداية أول حرف فى الجملة التالية كما سبق وأوضحنا . -3لنسخ جملة سابقه اكتب ( y + shift +مع مراعاة وضع المؤشر قبل بداية أول حرف فى الجملة التالية وللصق فى أي مكان اكتب p -4جميع مافعلناه فى السابق كان خاصا بأي جملة سابقة و لعمله لي جملة تالية غير اتجاه القوس
واجعله هكذا )
-5يمكن تنفيذ أي عملية كالحذف والنسخ والضافه إلى آخره أكثر من مرة وذلك عن طريق إعطاء رقم لتلك العملية أمثلة لليضاح :
إذا أردت التحرك ثلثة كلمات للخلف اكتب 3w
إذا أردت نسخ الثلث كلمات التى تلى المؤشر اكتب y3w خاصية الكمال التلقائى : وهذه الخاصيه تعمل فى طور الدخال وان شاء ال سنتناول شرح هذه الخاصية بالمثلة فالتجربه خير دليل :
-1إذا كتبت كلمة ahmedثم أردت كتابتها مره أخرى فى مكان آخر فما عليك إلكتابة أول حرف منها aثم اضغط على ctrl + xثم ctrl + pعدة مرات ليكملها
-2إذا كنت تكتب داخل النص اسم ملف أو اسم مجلد موجود عندك على الجهاز فى نفس المكان الموجود به الملف الذى تكتب بداخله اضغط على ctrl + xثم ctrl + fوللتنقل بينهم
إما عن طريق السهم أو بالضغط على ctrl + pو ctrl + n
ملحظة :عند كتابة اسم ملف أو مجلد يمكنك أن ل تكتب أيا من أحرفه و الضغط على ctrl + xثم ctrl + fليعرض لك أسماء جميع الملفات و الفولدرات الموجوده فى نفس المسار الموجود به الملف الذى تكتب بداخله .
102
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3يمكن إنشاء قاموس أنت تعده بنفسك مسبقا بحيث تكمل منه الكلمات وذلك بالضغط على ctrl + xثم ctrl + k
#المحرر : pico هو جزء من رزمة البرمجيات . pineويعد هذا المحرر سهل الستخدام فهو أبسط كثيرا من المحرر . vimوطريقة استخدامه سهلة فإذا أردت عمل أو فتح ملف اسمه file.txtاكتب ما يلى : ahmed@the-game:~> pico file.txt
اما إذا أردت أن تجعل البرنامج تعمل بداخله الفارة استخدم الخيار -mوذلك كالتالى : ahmed@the-game:~> pico -m file.txt
وبعد فتح الملف file.txtانقر على أي أمر من الوامر الموجودة أسفل الشاشة للتقدم فى العمل . لجعل الملف يفتح فى طور القراءة فقط أي ليكون لك الحق فى الكتابة بداخله استخدم الخيار -vوذلك كما يلى : ahmed@the-game:~> pico -v file.txt
إذا أردت أن يقوم المحرر بحفظ أي تغييرات داخل الملف تلقائيا دون الحاجه لتأكيد الحفظ عند إغلق الملف استخدم الخيار t-وذلك كما يلى : ahmed@the-game:~> pico -t file.txt
لجعل شريط المساعدة الموجود بالسفل يختفى استخدم الخيار -xوذلك كما يلى : ahmed@the-game:~> pico -x file.txt 103
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
من مزايا المحرر picoأنه يقوم بحفظ الملفات آليا فى حالة توقف linuxعن الستجابه وذلك
فى ملف يحمل اسم الملف بامتداد saveفمثل إذا كان الملف اسمه file.txtيكون الملف المحفوظ أتوماتيكيا اسمه file.save مفاتيح التعامل مع محرر : pico
up arraw
التحرك لعلى التحرك لسفل
down arraw
التحرك يمينا
right arraw left arraw
التحرك يسارا اظهار صفحة المساعدة
ctrl + g
غلق ملف المساعدة
ctrl + x
عرض موقع المؤشر
ctrl + c backspaceأو Deleteأو ctrl + d
حذف الحرف الجارى قص السطر الحالى
ctrl + k
لصق جميع السطر التى تم قصها
ctrl + u
النتقال إلى نهاية السطر الجارى
ctrl + e
النتقال إلى بداية السطر الجارى
ctrl + a
ضبط الفقرة الحالية
ctrl + j ctrl + vأو page down
النتقال صفحة واحدة لسفل
ctrl + yأو page up
النتقال صفحة واحدة لعلى
ctrl + w
البحث عن كلمة داخل الملف
ctrl + t
الشروع فى التدقيق الملئى 104
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ctrl + r
إدراج ملف أو عرضه ضمن الملف الحالى وذلك مكان المؤشر حفظ الملف باسم
ctrl + o
لغلق الملف
ctrl + x
#المحرر : nano هو المحرر الفتراضى لديبيان وهذا المحرر مبنى على المحرر picoلذلك فهو يشبهه ولكن مع الكثير من المزايا . وموقع هذا المحرر على النترنت هو http://www.nano-editor.orgوآخر إصدارة منه رقم 2.0.7 ومن الجدير بالذكر أن جميع مفاتيح التعامل مع محرر picoهى نفسها مفاتيح التعامل مع المحرر . nano وطريقة استخدامه سهلة كأى محرر نصوص آخر فإذا أردت عمل أو فتح ملف اسمه file.txtاكتب ما يلى : ahmed@the-game:~> nano file.txt
اما إذا أردت ان تجعل البرنامج تعمل بداخله الفارة استخدم الخيار -mوذلك كالتالى : ahmed@the-game:~> nano -m file.txt
وبعد فتح الملف file.txtانقر على أي أمر من الوامر الموجودة أسفل الشاشة للتقدم فى العمل . لجعل شريط المساعدة الموجود بالسفل يختفى استخدم الخيار -xوذلك كما يلى : ahmed@the-game:~> nano -x file.txt 105
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
لجعل الملف يفتح فى طور القراءة فقط أي ليكون لك الحق فى الكتابة بداخله استخدم الخيار -vوذلك كما يلى :
ahmed@the-game:~> nano -v file.txt
إذا أردت أن يقوم المحرر بحفظ أي تغييرات داخل الملف تلقائيا دون الحاجة لتأكيد الحفظ عند إغلق الملف استخدم الخيار t-وذلك كما يلى :
ahmed@the-game:~> nano -t file.txt
#المحرر : emacs ويعد هذا المحرر من أقوى محررات النصوص فهو ليس محرر نصوص فحسب وإنما له العديد من الوظائف وهى كالتالى : -aمحرر نصوص -bبيئة برمجة متكاملة -cصدفة لينكس -dمفسر للغة lisp -eمن خلله يمكن إرسال البريد اللكترونى -fمن خلله يمكن استعراض مواقع النترنت -gمن خلله يمكن استعراض أخبار use net -hيقبل وظائف المفكرة dirayوالتقويم calendar -iيمكنه تشغيل اللعاب !! -jيستخدم كمساعد للمكفوفين !! كما يتميز هذا المحرر بالكثير من المزايا وهى كالتالى :
-1الحفظ التلقائى auto saveبحيث يسمى الملف الذى تم حفظه تلقائيا بنفس اسم الملف مع
وضع علمة فى أول وآخر السم و عند فتح الملف يسألك البرنامج هل تريد تحميل النسخه 106
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المحفوظه تلقائيا أم ل -2إنشاء نسخة احتياطية من الملف تقوم أنت بتحريره و عند تسمية النسخة الحتياطية تكون بنفس اسم الملف متبوعا بالعلمة ~ وللحصول على أحدث نسخة من برنامج emacsزر الموقع التي
http://ftp.gnu.org/pub/gnu/emacsوآخر إصدارة من هذا البرنامج هى GNU
Emacs 22.2.1بتاريخ Mar-2008-26 -1لفتح ملف اسمه file.txtفى الواجهة الرسومية اكتب ما يلى : ahmed@the-game:~> emacs file.txt
-2لفتح ملف اسمه file.txtفى الترمينال اكتب ما يلى : ahmed@the-game:~> emacs -nw file.txt
كيفية تشغيل برنامج emacsالتعليمى :
بعد فتح برنامج emacsاضغط ctrl + hثم اضغط tكى يبدأ تشغيل البرنامج التعليمى . لعرض manualالخاص بالبرنامج اضغط ctrl + hثم اضغط I لعرض معلومات عن البرنامج اضغط ctrl + hثم اضغط f لعرض أشهر المشكلت التى تواجه مستخدمى البرنامج اضغط ctrl + hثم اضغط p ملحظة :فى اختصارات برنامج emacsتجد زرا اسمه mأو metaوهذا الزر هو الزر alt وفى أحيان نادرة جدا يكون الزر . Escأما الحرف cفيعنى . ctrl 107
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
مفاتيح التعامل مع محرر : emacs up arraw
التحرك لعلى التحرك لسفل
down arraw
التحرك يمينا
right arraw left arraw
التحرك يسارا لحذف الحرف الحالي
Delete
حذف الكلمة الحالية
Alt + d
النتقال لنهاية السطر الجارى
Ctrl + e
النتقال لبداية السطر الجارى
Ctrl + a
حذف السطر الجارى بعد المؤشر
Ctrl + k Page down
النتقال شاشة كاملة لسفل
Page up
النتقال شاشة كاملة لعلى فتح ملف جديد مع غلق الملف القديم وحفظ التعديلت التى حدثت عليه
new fileثم ctrl + fثم Ctrl + x name ctrl + sثم Ctrl + x
لحفظ أي تعديلت داخل الملف الذى
يجرى العمل فيه
new fileثم ctrl + wثم Ctrl + x
لحفظ الملف باسم آخر
name ctrl + cثم Ctrl + x
لغلق المحرر emacs
ملحظة :كل وظيفه تقوم بها الختصارات السابقة لها اسم طويل وهناك وظائف ليس لها
اختصارات .وللوصول للوظيفة عن طريق اسمها اضغط على alt +xثم اكتب اسم الوظيفة مع ملحظة أن المحرر emacsهنا يدعم استكمال اسم الوظيفة من خلل الضغط على الزر 108
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
tabفمثل وظيفة النتيجة calendarليس لها اختصارات وللولوج إليها اضغط على alt + x ثم اكتب أول حرفين منها ثم اضغط على الزر tabفسيظهر لك جميع الوظائف التى تبدأ بهذين
الحرفين أما إذا لم يكن هناك إل وظيفة واحدة تبدأ بهذين الحرفين سيكمل اسم الوظيفه على الفور . من إمكانيات المحرر emacsالبرمجه بلغة cعن طريق الطور cc-modeكما يمكنك
البرمجه بلغة javaعن طريق الطور java-modeوللدخول لتلك الطوار اضغط على alt + xثم اكتب اسم الطور أو الوظيفة التى تريد أن يقوم بها المحرر . emacs
ومن وظائف المحرر emacsالخرى النتيجة calendarكماسبق وأوضحنا وفى هذا الطور يعرض لك الشهر الحالى والسابق واللحق كما يمكنه فى عرض أطوار القمر وعرض التاريخ الهجرى والتحويل من هجرى إلى ميلدى
فمثل إذا أردت معرفة أول يوم فى رمضان وماذا يوافق من أيام التاريخ الميلدى اتبع ما يلى : اضغط على alt + xثم اكتب calendarثم اضغط على enterثم اضغط على الزر goto من tool barالعلوى ومنه اختر islamic dateثم اضغط على enterثم اكتب اسم الشهر
الذى تريد وهنا سوف نكتب } ramadanوإذا لم تكن تعرف اسم الشهر بالضبط اكتب أول
حرف منه فيعرض لك جميع الشهر التى تبدأ بهذا الحرف { ثم اضغط على enterثم أدخل اليوم
الذى تريد معرفة ما يوافقه فى التاريخ الميلدى وهنا سندخل اليوم رقم 1ثم اضغط على enter فيضع لك المؤشر على بداية أول يوم فى رمضان .
ملحظة :مع دخولك فى أي طور من أطوار البرنامج تجد أن tool barالعلوى يتغير . ومن طرائف المحرر emacsطور الطبيب النفسى ؟؟؟!!! نعم هناك فى هذا المحرر طور الطبيب النفسى وللدخول إليه اضغط على alt + xثم اكتب
doctorثم اضغط على enterادخل وتابع مع الدكتور ويارب متلقيش عندك أمراض خطيرة.
ملحظة :ما تم شرحه فى المحرر emacsيعتبر نبذة عنه فمازال به الكثير والكثير من الوظائف والسرار . 109
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المحرر : xemacs يشبه المحرر xemacsالمحرر emacsفكلهما يمكن أن يعمل فى نظام النوافذ xwindowsوكذلك فى النمط النصى } فى الترمينال { كما أنهما متشابهان أيضا فى طريقة استخدامهما لكن الختلف هو أن المحرر xemacsصمم ليأخذ شكل أفضل فى البيئة الرسومية كما أنه يعمل بكفاءة أكثر داخلها .لكن بالرغم من ذلك التشابه الكبير يظل هذان المحرران منفصلين .
#المحررات الدفقية أو التجاهية : هى برامج مخصصة لتلقى النص الذى أعيد توجيهه عن طريق المعاملت > أو < أو المعامل النبوبى | بهدف فلترة و تغيير النص ومن أمثلة هذه المحررات المحرر sed
#المحرر : sed هو أحد أشهر المحررات الدفقية أو التجاهية لتحرير النصوص بطريقة سريعة من سطر الوامر . استخدامات المحرر : sed -1يستخدم فى إجراء تعديلت كلية على مستند نصى . -2يستخدم فى إجراء عدة تعديلت كلية على مستند نصى من . script
وفيما يلى سوف نشرح عدة أمثلة لتوضيح تلك الستخدامات : -1إجراء تعديلت كلية على مستند نصى مثال :إذا كان لديك ملف اسمه gamalمحتواه ما يلى : mr. Ahmed mr. Islame mr. Hazem mr. Hassan
110
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
وأردت تحويل كلمة mr.إلى mrs.فى كامل الملف ووضع تلك التغييرات فى ملف جديد اسمه . lilaاكتب ما يلى : ahmed@the-game:~> sed s/mr./mrs./g lila
ملحظة :ليجوز التغيير فى نفس الملف مباشرة أي لبد من إرسال التغييرات إلى ملف جديد وهذا على حد علمى . -2إجراء عدة تعديلت كليه على مستند نصى من . script مثال :إذا كان لديك ملف نصى اسمه mandoمحتواه ما يلى : My name is Ahmed Elsayed Ahmed Ali . My operating system is opensuse 11 .
وأردت تغيير السم ahmed elsayed ahmed aliإلى السم hazem mohammed abas ismailووضع هذه التغييرات فى ملف جديد اسمه . bisoولفعل ذلك نقوم بعمل scriptاسمه soma.sedوامل هذا السكربت بما يلى :
s/Ahmed/hazem/ s/Elsayed/mohammed/ s/Ahmed/abas/ s/Ali/ismail/
ملحظة :عند كتابة السكربت يجب مراعاة حالة الحرف هل هى capitalام . small احفظ هذا السكربت ثم اكتب المر التالى : ahmed@the-game:~> sed -f soma.sed <mando> biso 111
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#التدقيق الملئى بواسطة المر : ispell ويتم باستخدام المر ispellعن طريق قاموس النظام و لمعرفة مكان قاموس النظام اكتب المر التالى : ahmed@the-game:~> whereis linux.words
ويحتوى قاموس النظام على آلف الكلمات المدققة إملئيا و المرتبة أبجديا . وفيما يلى سوف نشرح مثال على استخدام المر ispellلن التجربة خير دليل :
إذا كان لديك ملف نصى اسمه nogaيحتوى على نص مكتوب باللغة النجليزية وتريد
تصحيحه فما عليك إل كتابة المر التالى : ahmed@the-game:~> ispell noga
إذا لم يكن بالملف أية أخطاء فإن البرنامج سيعود لسطر الوامر أما إذا عثر المدقق الملئي على
أخطاء فإنه يقوم بعرض أول كلمة مغلوطة فى أعلى الشاشة وبجانبها اسم الملف ويتم عرض الكلمة المغلوطة ضمن الجملة بالضافة إلى عرض قائمة مرتبة بالكلمات البديلة المقترحة أسفل الجملة الموجود بها الكلمة الخاطئة .واليك طريقة التعامل مع المدقق الملئي وهى كما يلى : -aلختيار إحدى الكلمات المقترحة أدخل رقمها الموضح فى القائمة . -bللموافقة وعدم تصحيح تلك الكلمة اضغط على المفتاح . a
-cلستبدال تلك الكلمة الخاطئة بكلمة أخرى اضغط على المفتاح rوإذا كانت الكلمة البديلة خاطئة هى الخرى سيعرض لك قائمة بالكلمات المقترحة .
-dلعتبار تلك الكلمة صحيحة وإدراجها داخل القاموس اللغوى للنظام اضغط على المفتاح . I -eللبحث عن الكلمة الصحيحة داخل القاموس اللغوى للنظام باستعمال العلمة * أو مايعرف
wildcardاضغط على المفتاح Lثم أدخل الحروف الولى من الكلمة التى تريد البحث عنها ثم اضغط على المفتاح enterواختر مايناسبك .
-fللتنقل بين الكلمات الخاطئة دون تصحيحها السهم العلوى . up arraw
-iلغلق المدقق الملئي اضغط على المفتاح . q 112
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-gلطلب المساعدة فى الدقق الملئي اضغط على المفتاح ? .
113
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل السادس :ادارة القراص الصلبة -aتقسيم القرص الصلب : #مقدمة : القراص الصلبة تقع تحت الدليل /devالذى يحتوى على جميع الجهزة المتصلة بالكمبيوتر مثل ) كارت الشاشة vgaوالماسح الضوئى scannerوبطاقات pciوبطاقات الصوت (. قبل البدء فى شرح الوامر الخاصة بتقسيم القرص الصلب أو الهارد يجب معرفة الطريقة التى يسمى بها لينكس محركات القراص الصلبة و كذلك كيفية تسمية أقسام القرص الصلب ) . ( physical partition تسمية القراص الصلبة :
يتم تسمية القرص الصلب و cd romمن نوع ideأو ataكالتالى : القرص primary masterيسمى hda القرص primary slaveيسمى hdb
القرص secondary masterيسمى hdc القرص secondary slaveيسمى hdd
حيث ) primary masterو ( secondary masterيقعان على كابل واحد و ) primary slaveو ( secondary slaveيقعان على كابل واحد . يتم تسمية القراص الصلبة من نوع sataكالتالى : ملحظة :هنا ليوجد primaryول secondaryول masterول . slave أول هارد sataيسمى sda
ثانى هارد sataيسمى sdb ثالث هارد sataيسمى sdcوهكذا 114
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
اما بالنسبة cd romمن النوع sataفإنها تسمى كالتالى : أول cd romيسمى scd1
ثانى cd romيسمى scd2 ثالث cd romيسمى scd3وهكذا ملحظة :التوزيعات القديمة قبل عام 2007وبعض التوزيعات الجديدة مثل slackware
مازالت تعتمد على الطريقة السابقة فى تسمية القراص الصلبة أما أغلب التوزيعات الجديدة الن
تسمى جميع القراص الصلبة sdxسواء كانت ataام sataولتستخدم تسمية . hdx تسمية البرتشنات :
هناك أشكال مختلفة لتقسيم القرص الصلب و تختلف تلك الشكال من شخص لخر حسب مايراه و تحدد تلك الشكال قاعدتان
القاعدة الولى :ليجوز لك عمل أكثر من أربع برتشنات . primary القاعدة الثانية :يجوز لك عمل برتشن واحد ممتد extendedيمكن تقسيمه إلى عدد من . logical partition
-1من الممكن عمل أربع برتشنات primaryويكون أسمائهم كالتالى : sda1أول برتشن بريمارى .
sda2ثانى برتشن بريمارى .
sda3ثالث برتشن بريمارى .
sda4رابع برتشن بريمارى .
-2من الممكن عمل ثلث برتشنات primaryوبرتشن extendedوهذا البرتشن سنقسمه
لعدد معين من البرتشنات logicalويكون أسمائهم كالتالى : sda1أول برتشن بريمارى .
sda2ثانى برتشن بريمارى .
sda3ثالث برتشن بريمارى .
sda4برتشن . extended sda5أول برتشن logical
sda6ثانى برتشن logical 115
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
sda7ثالث برتشن logicalوهكذا . -3والشائع استخدامه هو عمل برتشن واحد primaryوالباقى يتم عمله برتشن extendedو
يكون اسمه /dev/sda2وهذا البرتشن سنقسمه إلى عدد معين من البرتشنات . logical ملحظات قبل التقسيم : قبل تقسيم القرص الصلب يجب إلغاء ضمه بواسطة المر umountمتبوعا بنقطة الضم .
فمثل للغاء ضم البرتشن hda1بفرض أن نقطة ضم ذلك البرتشن هى /mnt/win-xp اكتب ما يلى : the-game:/home/ahmed # umount /mnt/win-xp
#المر : fdisk يستخدم هذا المر لتقسيم الهارد فقط أي ليقوم بتهيئة القرص الصلب وهنا يجب التفرقة بين التقسيم و التهيئة . تعرف على برنامج : fdisk -aلمعرفة القراص الصلبة المتصلة بالكمبيوتر اكتب ما يلى : the-game:/home/ahmed # fdisk -l
-bلتقسيم قرص صلب بفرض أن اسمه /dev/sdcاكتب ما يلى : the-game:/home/ahmed # fdisk /dev/sdc
فتكون النتيجة كما يلى : The number of cylinders for this disk is set to 19457. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 116
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help):
: فتكون النتيجة كما يلىfdisk لطباعة خيارات المرm اكتب الحرف-c Command (m for help): m Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) Command (m for help):
: fdisk و فيما يلى شرح لبعض خيارات المر
دليل المستخدم العربى فى أوامر لينكس
117
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
اضغط على المفتاح dلحذف قسم أو برتشن . اضغط على المفتاح lلعرض أنواع التقسيمات التى يمكن عملها . اضغط على المفتاح nلعمل قسم أو برتشن جديد .
اضغط على المفتاح pلطباعة التقسيمات أو البرتشنات الحالية .
اضغط على المفتاح tلتحديد نوع نظام الملفات لرشاد ويندوز وليس للتهيئة . اضغط على المفتاح vللتأكد و التحقق من جدول البرتشنات . اضغط على المفتاح mلطباعة صفحة المساعدة السابقة .
اضغط على المفتاح xيعطيك وظائف أكثر ) للمستخدمين ذوى الخبرة ( . اضغط على المفتاح wلتنفيذ التغيرات .
اضغط على المفتاح qللخروج دون تنفيذ أي تغيير . والن نأتي لكيفية استخدام المر fdiskفى تقسيم القرص الصلب وسوف نشرح هذا المر بمثال للتوضيح .
بفرض أن أحد أصدقائك أعطاك قرصا صلبا وطلب منك تقسيمه وكان هذا القرص مكونا من 4 برتشنات منهم برتشن primaryو ثلث برتشنات . logicalفكيف ستتم عملية التقسيم ؟
تتم عملية التقسيم كالتالى :
-1اعرف اسم الهارد الذي ستقوم بتقسيمه وذلك بواسطة الخيار -lكما يلى : the-game:/home/ahmed # fdisk -l
-2ابدأ التقسيم وذلك بكتابة اسم القرص الصلب بعد المر fdiskمباشرة ) بفرض أن القرص
الصلب الذى سيتم تقسيمه ( /dev/sdbكما يلى :
the-game:/home/ahmed # fdisk /dev/sdb
فتكون النتيجة كما يلى : The number of cylinders for this disk is set to 19457. There is nothing wrong with that, but this is larger than 1024, 118
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
and could in certain setups cause problems with: )1) software that runs at boot time (e.g., old versions of LILO 2) booting and partitioning software from other OSs )(e.g., DOS FDISK, OS/2 FDISK Command (m for help):
-3قم بمسح جميع البرتشنات الموجوده بفرض أن الهارد مكون من 3برتشنات البرتشن الول
primaryوالبرتشنين الخرين ) logicalوذلك إذا كان الهارد قديما أما إذا كان الهارد جديدا فلن نلجأ لتلك الخطوه ( وذلك بالضغط على المفتاح dكما يلى :
Command (m for help): d
فتكون النتيجة كما يلى : Partition number (1-6):
-4أدخل رقم البرتشن المراد مسحه طبعا سيتم مسح جميع البرتشنات فى هذا المثال وأرقام
البرتشنات هى ) أول برتشن primaryرقم 1و البرتشن الممتد extendedرقم 2و
البرتشنين logicalأرقامهم 5و 6على الترتيب ( بعد إدخال رقم البرتشن اضغط على المفتاح
enterوهكذا يتم مسح جميع البرتشنات .
-5اضغط على المفتاح wليتم تنفيذ عملية المسح . -6أنشئ البرتشنات الجديدة التى تريد وهنا سوف أنشئ 4برتشنات الول primaryوالباقى سيتم عمله برتشن ممتد extendedومنه سيتم عمل 3برتشنات . logicalوعملية النشاء ستتم بالضغط على المفتاح nوذلك كما يلى :
Command (m for help): n
119
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة كما يلى : Command action e extended )p primary partition (1-4
اضغط على المفتاح pلنشاء برتشن primaryوستجد أنه يسألك عن رقم البرتشن المراد إنشاؤه وذلك كما يلى : p Partition number (1-4):
ادخل الرقم 1لننا سنشئ أول برتشن primaryوستجد أنه يسألك عن بداية البرتشن اضغط على المفتاح enterليبدأ البرتشن مع البداية الفتراضية وذلك كما يلى : Partition number (1-4): 1 First cylinder (1-77545, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-77545, default 77545):
بعد ذلك يسألك عن نهاية البرتشن ) يعنى من الخر هنا نحدد حجم البرتشن ( ويخبرك أنك بإمكانك إدخال حجم البرتشن بالكيلو بايت أو بالميجا بيت فمثل إذا كنت ستنشئ البرتشن بحجم 10جيجا يمكنك وضع الحجم بالميجا كالتالى +10000M Last cylinder or +size or +sizeM or +sizeK (1-77545, default 77545): +10000M http://linuxac.org/
Command (m for help):
120
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
والن نأتي لنشاء البرتشن الممتد extendedوذلك بالضغط على المفتاح nثم الضغط على المفتاح eلعمل برتشن ممتد ثم أدخل رقم 2حيث أن البرتشن الممتد هو sda2ثم اضغط
على المفتاح enterمرتين لكى يتم عمل كل المساحة المتبقية برتشن واحد ممتد وذلك كما
يلى : Command (m for help): n Command action e extended )p primary partition (1-4 e Partition number (1-4): 2 First cylinder (19378-77545, default 19378): Using default value 19378 Last cylinder or +size or +sizeM or +sizeK (19378-77545, default 77545): Using default value 77545
والن نأتي لنشاء البرتشنات logicalوسأكتفى بشرح بشرح كيفية إنشاء برتشن logical واحد . اضغط على المفتاح nثم الضغط على المفتاح lلعمل برتشن logicalثم اضغط على المفتاح
enterليبدأ البرتشن مع البداية الفتراضية وذلك كما يلى :
Command (m for help): n Command action )l logical (5 or over )p primary partition (1-4 l First cylinder (19378-77545, default 19378): Using default value 19378 Last cylinder or +size or +sizeM or +sizeK (19378-77545, default 77545):
121
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
بعد ذلك يسألك عن نهاية البرتشن ) يعنى من الخر هنا نحدد حجم البرتشن ( ويخبرك أنك
بإمكانك إدخال حجم البرتشن بالكيلو بايت أو بالميجا بيت فمثل إذا كنت ستنشئ البرتشن جيجا يمكنك وضع الحجم بالميجا كالتالى15 بحجم +15000M
Last cylinder or +size or +sizeM or +sizeK (1-77545, default 77545): +15000M Command (m for help):
ليتم حفظ وتفعيل العمليات التىw بعد النتهاء من إنشاء جميع البرتشنات اضغط على المفتاح . قمت بها بعد النتهاء من عملية التقسيم يتبقى لنا أمر أخير وهو تحديد نوع البرتشنات لرشاد ويندوز
ولظهار جدول به أنواع البرتشنات المتاحة استخدمt ويتم ذلك عن طريق الخيار. ليس إل : وذلك كما يلىl الخيار Command (m for help): l 0 Empty
1e Hidden W95 FAT1 80 Old Minix
1 FAT12
24 NEC DOS
2 XENIX root
be Solaris boot
81 Minix / old Lin bf Solaris
39 Plan 9
82 Linux swap / So c1 DRDOS/sec (FAT-
3 XENIX usr
3c PartitionMagic 83 Linux
5 Extended
41 PPC PReP Boot 85 Linux extended c7 Syrinx
4 FAT16 <32M 6 FAT16
42 SFS
7 HPFS/NTFS 8 AIX
40 Venix 80286
c4 DRDOS/sec (FAT-
84 OS/2 hidden C: c6 DRDOS/sec (FAT-
86 NTFS volume set da Non-FS data
4d QNX4.x
87 NTFS volume set db CP/M / CTOS / .
4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility
9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM a OS/2 Boot Manag 50 OnTrack DM b W95 FAT32
93 Amoeba
df BootIt
e1 DOS access
51 OnTrack DM6 Aux 94 Amoeba BBT
c W95 FAT32 (LBA) 52 CP/M دليل المستخدم العربى فى أوامر لينكس
9f BSD/OS 122
e3 DOS R/O
e4 SpeedStor
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs f W95 Ext'd (LBA) 54 OnTrackDM6 10 OPUS
55 EZ-Drive
a5 FreeBSD
a6 OpenBSD
11 Hidden FAT12 56 Golden Bow
12 Compaq diagnost 5c Priam Edisk 14 Hidden FAT16 <3 61 SpeedStor
ee EFI GPT
ef EFI (FAT-12/16/
a7 NeXTSTEP
a8 Darwin UFS
a9 NetBSD
f0 Linux/PA-RISC b f1 SpeedStor
f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot
f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs
fd Linux raid auto
18 AST SmartSleep 65 Novell Netware b8 BSDI swap
fe LANstep
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT 1c Hidden W95 FAT3 75 PC/IX Command (m for help):
ونلحظ أن أمام كل نوع برتشن ) رقم أو حرف أو حرف مع رقم ( وهذا هو ماسندخله عند والن نريد تحديد أنواع البرتشنات الربعة بحيث يكون هناك برتشن. اختيار نوع البرتشن . swap وبرتشنext3 وبرتشنينvfat
: اتبع ما يلىvfat لتحديد نوع البرتشن ليكون ثم أدخل رقم البرتشن المراد تحديد نوعه وهنا هوenter ثم اضغطt اضغط على المفتاح c ثم اضغط على المفتاحenter اضغط على1 البرتشن رقم
Command (m for help): t Partition number (1-7): 1 Hex code (type L to list codes): c Changed system type of partition 5 to c (W95 FAT32 (LBA))
: اتبع ما يلىextended لتحديد نوع البرتشن الممتد ثم أدخل رقم البرتشن المراد تحديد نوعه وهنا هوenter ثم اضغطt اضغط على المفتاح f ثم اضغط على المفتاحenter ثم اضغط2 البرتشن رقم
دليل المستخدم العربى فى أوامر لينكس
123
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
Command (m for help): t Partition number (1-7): 2 Hex code (type L to list codes): f ))Changed system type of partition 5 to c (W95 FAT32 (LBA
لتحديد نوع البرتشن ليكون ext3اتبع ما يلى : اضغط على المفتاح tثم اضغط enterثم أدخل رقم البرتشن المراد تحديد نوعه وهنا هو البرتشن رقم 5ثم اضغط enterثم اضغط على المفتاح 83
Command (m for help): t Partition number (1-7): 5 Hex code (type L to list codes): 83 ))Changed system type of partition 5 to c (W95 FAT32 (LBA
لتحديد نوع البرتشن ليكون swapاتبع ما يلى : اضغط على المفتاح tثم اضغط enterثم أدخل رقم البرتشن المراد تحديد نوعه وهنا هو البرتشن رقم 6ثم اضغط enterثم اضغط على المفتاح 82
Command (m for help): t Partition number (1-7): 6 Hex code (type L to list codes): 82 ))Changed system type of partition 5 to c (W95 FAT32 (LBA
اضغط على المفتاح wثم اضغط على المفتاح qوذلك للحفظ و الخروج وذلك كما يلى : Command (m for help): wq !The partition table has been altered 124
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
Calling ioctl() to re-read partition table. WARNING: If you have created or modified any DOS 6.x partitions, please see the fdisk manual page for additional information. Syncing disks.
وبذلك نكون قد انتهينا من تقسيم القرص الصلب .
#المر : cfdisk يستخدم هذا المر لتقسيم الهارد فقط أي ليقوم بتهيئة القرص الصلب تماما مثل المر fdisk لكنه أسهل من سابقه المر . fdiskوذلك لن له واجهة سهلة ومرتبة تعمل السهم بداخلها لختيار العملية التى تريد تنفيذها وكل ذلك من داخل الترمينال كما يتميز ذلك المر بعرض مساحة البرتشنات بالميجا بايت . وطريقة تشغيل البرنامج سهلة فقط اكتب المر cfdiskوأنت مستخدم جذر وذلك كما يلى : the-game:/home/ahmed # cfdisk
فتظهر واجهة البرنامج فى الترمينال وهى بالشكل التالى :
125
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
و العمليات التى يمكن إجراؤها تكون فى الجزء السفلى من البرنامج و يمكن اختيار أي عملية تريد إجراءها من خلل السهم ) right arrawو ( left arrawويمكن النتقال بين
البرتشنات عن طريق السهم ) up arrawو ( down arrawوطبعا البرنامج سهل جدا ل
يحتاج لشرح
-bتهيئة برتشنات القرص الصلب : #مجموعة أوامر : mkfs يستخدم هذا المر لتهيئة البرتشنات بمعنى أنه يقوم ببناء نظام الملفات للبرتشنات formatting ومجموعة أوامر mkfsهى : mkfs.reiserfs mkfs.xfs mkfs.vfat
mkfs.msdos mkfs.ntfs
mkfs.cramfs mkfs.ext3 mkfs.minix
126
mkfs.ext2
mkfs mkfs.bfs
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ومن ماسبق يتضح أن المر mkfsيمكنه تهيئة البرتشنات بنظم ملفات كثيره فمثل : #لتهيئة البرتشن بنظام ملفات ext3استخدم المر . mkfs.ext3 #لتهيئة البرتشن بنظام ملفات ext2استخدم المر . mkfs.ext2 #لتهيئة البرتشن بنظام ملفات xfsاستخدم المر . mkfs.xfs
#لتهيئة البرتشن بنظام ملفات reiserfsاستخدم المر . mkfs.reiserfs #لتهيئة البرتشن بنظام ملفات minixاستخدم المر . mkfs.minix #لتهيئة البرتشن بنظام ملفات vfatاستخدم المر . mkfs.vfat
#لتهيئة البرتشن بنظام ملفات ntfsاستخدم المر . mkfs.ntfs ملحظة :قبل استعمال المر mkfsيجب إلغاء ربط البرتشن المراد تهيئته عن طريق المر umountفمثل للغاء ضم البرتشن /dev/sda1اكتب ما يلى :
the-game:/home/ahmed # umount /dev/sda1
المر mkfsمن الوامر السهلة و السريعة فى الستخدام
فمثل إذا أردت تهيئة البرتشن /dev/sda1بنظام ملفات ext3ماعليك إل أن تكتب ما يلى : the-game:/home/ahmed # mkfs.ext3 /dev/sda1
مثال آخر :إذا أردت تهيئة البرتشن /dev/sda5بنظام ملفات fat32ماعليك إل أن تكتب ما يلى : the-game:/home/ahmed # mkfs.vfat /dev/sda5
127
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-cربط محرك أقراص جديد ) ربط البرتشنات (
نعنى بربط محرك أقراص جديد هو جعل أقسامه أو برتشناته ظاهرة أو مقروءة فى النظام . ويجب قبل البدء فى عملية الربط معرفة نظام ملفات البرتشن المراد ربطه وكذلك اسمه مثل sda1أو . sdc7
وربط البرتشنات نوعين :
-1ربط مؤقت :ويتم عن طريق المر mountوعمل نقطة ربط وبمجرد إعادة تشغيل الجهاز
يزول الربط .
-2ربط دائم :ويتم عن طريق إضافة أسطر للملف fstabوعمل نقطة ربط وتتميز
تلك الطريقة بأنها توفر ربطا دائما للبرتشن أي أنك لن تضطر لربط البرتشن بها ال مرة واحدة ولن يضيع الربط عند إعادة تشغيل الجهاز .
وسواء كان الربط دائما أو مؤقتا يجب عمل نقطة ربط ليتم ربط البرتشن بها . لكن ماهى نقطة الربط هذه ؟
نقطة الربط هى المكان الذى سيـربط فيه البرتشن وهى عبارة عن مجلد فارغ وتكون عادة نقطة الربط فى المسار /mntوأحيانا تكون فى . /media ملحظة :ليمكن ربط أكثر من برتشن فى مجلد واحد أو فى نقطة ربط واحدة بل لبد من
ربط كل برتشن فى مجلد منفصل .ولكن يجوز ربط برتشن واحد فى نقطتى ربط أو مجلدين على أن ل يكون هذا البرتشن هو برتشن النظام أو . root
خطوات ربط البرتشنات مؤقتا : -1ادخل وأنت rootواكتب المر fdisk -lلمعرفة عدد وأسماء البرتشنات المراد ربطها وكذلك أنظمة ملفاتها وذلك كما يلى : the-game:/home/ahmed # fdisk -l
128
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-2قم بانشاء نقطة ربط لكل برتشن فى المجلد /mntوسمها بأى اسم عن طريق المر mkdirوذلك كما يلى : the-game:/home/ahmed # mkdir /mnt/movie
حيث المجلد movieهو نقطة ربط البرتشن المراد ربطه . ملحظة :ليمكنك ربط البرتشن الممتد . extendedلكن الربط يكون للبرتشنات logical و . primary
-3استخدم المر mountلربط البرتشنات فمثل إذا كان لديك برتشن اسمه sda1نظام ملفاته fat32تريد ربطه فى المجلد movieاكتب ما يلى : the-game:/home/ahmed # mount -t vfat /dev/sda1 /mnt/movie
حيث vfatهو نظام ملفات البرتشن sda1المراد ربطه و movieهو نقطة ربط البرتشن . sda1
مثال آخر :إذا كان لديك برتشن اسمه sda9نظام ملفاته ext3تريد ربطه فى المجلد song اكتب ما يلى : the-game:/home/ahmed # mount -t ext3 /dev/sda9 /mnt/song
خطوات ربط البرتشنات بصورة دائمة : -1الخطوه الولى كما هى . -2الخطوه الثانية كما هى . -3افتح الملف /etc/fstabبأى محرر نصوص وليكن mceditو عدل فيه . مثال :إذا كان لديك برتشن اسمه sda1نظام ملفاته fat32و نقطة الربط الخاصة به هى win- xpوتريد ربط هذا البرتشن ربطا دائما .فما عليك إل إضافة السطر التالى إلى الملف : fstab user,users,gid=users,umask=0002,utf8=true 0 0 129
/dev/sda1 /mnt/win-xp vfat دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
حيث /dev/sda1هو اسم البرتشن المراد ربطه و /mnt/win-xpهو مكان الربط و vfat
هو نظام ملفات البرتشن المراد ربطه و
user,users,gid=users,umask=0002,utf8=trueلدعم الينيكود و للسماحيات
و 0 0للغاء عمل فحص للقرص الصلب كل مده .
مثال آخر :إذا كان لديك برتشن اسمه sda9نظام ملفاته ext3و نقطة الربط الخاصة به هى collection1وتريد ربط هذا البرتشن ربط دائم .فما عليك إل إضافة السطر التالى إلى الملف
: fstab
12
user,acl
ext3
/dev/sda9 /mnt/collection1
حيث /dev/sda9هو اسم البرتشن المراد ربطه و /mnt/collection1هو مكان الربط و
ext3هو نظام ملفات البرتشن المراد ربطه و user,aclللسماحيات
#المر : df يستخدم لمعرفة المساحة الخالية و المستخدمة و الكلية لجميع البرتشنات المركبة أو المربوطة . -1لعرض المساحة الكلية و المستخدمة و الخالية لجميع البرتشنات المربوطة وكذلك نقطة ربط كل برتشن اكتب ما يلى : ahmed@the-game:~> df
فتكون النتيجة مثل التالى طبعا النتيجة تكون مختلفة من هارد لخر : Used Available Use% Mounted on
1K-blocks
16038660 7988796 8049864 50% / 128 257316 1% /dev
257444
Filesystem /dev/sda6 udev
15709328 11437028 4272300 73% /mnt/linux
/dev/sda7
45664047 40898551 2445310 95% /mnt/collection1
/dev/sda9
130
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
45371559 36532190 6534044 85% /mnt/collection2
/dev/sda10
20681568 18167264 2514304 88% /mnt/games
/dev/sda5
9260408 7814048 1446360 85% /mnt/win-xp
/dev/sda1
-2لعرض المساحة الكلية و المستخدمة و الخالية لبرتشن معين وليكن sda9اكتب ما يلى : ahmed@the-game:~> df /dev/sda9
فتكون النتيجة مثل التالى طبعا النتيجة تكون مختلفة من هارد لخر : 45664047 40898551 2445310 95% /mnt/collection1
/dev/sda9
-3لعرض المساحة الكلية و المستخدمة و الخالية لجميع البرتشنات المربوطة بحيث يتم عرض
المساحة بصورة مفهومة ) بالجيجا أو بالميجا ( وكذلك نقطة ربط كل برتشن اكتب ما يلى : ahmed@the-game:~> df -h
فتكون النتيجة مثل التالى طبعا النتيجة تكون مختلفة من هارد لخر : Size Used Avail Use% Mounted on 16G 7.7G 7.7G 50% / 252M 128K 252M 1% /dev
Filesystem /dev/sda6 udev
15G 11G 4.1G 73% /mnt/linux
/dev/sda7
44G 40G 2.4G 95% /mnt/collection1
/dev/sda9
44G 35G 6.3G 85% /mnt/collection2
/dev/sda10
20G 18G 2.4G 88% /mnt/games
/dev/sda5
8.9G 7.5G 1.4G 85% /mnt/win-xp
/dev/sda1
-4لعرض المساحة الكلية و المستخدمة و الخالية لجميع البرتشنات المربوطة بحيث يتم عرض المساحة بصورة مفهومة ) بالجيجا أو بالميجا ( لكنه يستخدم 1000بدل من ) 1024أي يعتبر 131
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
: ( ميجا وكذلك نقطة ربط كل برتشن اكتب ما يلى1000 = الجيجا ahmed@the-game:~> df -H
: فتكون النتيجة مثل التالى طبعا النتيجة تكون مختلفة من هارد لخر Filesystem
Size Used Avail Use% Mounted on
/dev/sda6 udev
17G 8.2G 8.3G 50% / 264M 132k 264M 1% /dev
/dev/sda7
17G 12G 4.4G 73% /mnt/linux
/dev/sda9
47G 42G 2.6G 95% /mnt/collection1
/dev/sda10
47G 38G 6.7G 85% /mnt/collection2
/dev/sda5
22G 19G 2.6G 88% /mnt/games
/dev/sda1
9.5G 8.1G 1.5G 85% /mnt/win-xp
لعرض المساحة الكلية و المستخدمة و الخالية لجميع البرتشنات المربوطة مع عرض نظام ملفات-5 : كل برتشن بجانبه وكذلك نقطة ربط كل برتشن اكتب ما يلى ahmed@the-game:~> df -T
: فتكون النتيجة مثل التالى طبعا النتيجة تكون مختلفة من هارد لخر Filesystem Type 1K-blocks /dev/sda6 udev
Used Available Use% Mounted on
xfs 16038660 7999984 8038676 50% /
tmpfs
257444
128 257316 1% /dev
/dev/sda7
xfs 15709328 11437028 4272300 73% /mnt/linux
/dev/sda9
ext3 45664047 40898551 2445310 95% /mnt/collection1
/dev/sda10 ext3 45371559 36532190 6534044 85% /mnt/collection2 /dev/sda5
vfat 20681568 18167264 2514304 88% /mnt/games
/dev/sda1
vfat
9260408 7814048 1446360 85% /mnt/win-xp
دليل المستخدم العربى فى أوامر لينكس
132
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
133
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل السابع :ادارة المستخدمين و المجموعات #مقدمة : المستخدم :هوشخص معرف فى النظام بتعريف وحيد مكون من اسم و رقم بحيث ل يتشابه أي اثنين من المستخدمين فى التعريف الخاص بهما . المجموعة :هى تجمع من المستخدمين معرف فى النظام بتعريف وحيد مكون من اسم و رقم بحيث ل يتشابه أي مجموعتين مع بعضهما فى التعريف الخاص بهما .
ولكل مستخدم ولكل مجموعة حزمة من الصلحيات أو السماحيات . العناصر اللزمة لتعريف المستخدم : loginاسم الدخول ويستخدم للدخول للنظام ول يجوز أن يشترك مستخدمان فى نفس السم
.
Passwdكلمة المرور وتستخدم للدخول للنظام .
UIDهو رقم مقترن باسم الدخول loginوهو اختصار لكلمتى . user identification GIDهو رقم مقترن باسم المجموعة التى ينتمى إليها المستخدم وهو اختصار لكلمتى group . identification
Commentوصف المستخدم أو التعليق وليشترط كتابته .
Home directory pathمسار الدليل الموطن للمستخدم .
Sellالصدفة التى يجرى تنفيذها تلقائيا عند دخول المستخدم إلى النظام ويكون عادة . /bin/bash
الملفات الخاصة بالمستخدمين :
/etc/passwdويحتوى هذا الملف على معلومات كل مستخدم . /etc/shadowويحتوى هذا الملف على معلومات سرية تخص المستخدمين .
134
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
العناصر اللزمة لتعريف المجموعة : nameاسم المجموعة ويستخدم للدخول إلى المجموعة ول يجوز ان تشترك مجموعتان فى
نفس السم .
Passwdكلمة المرور وتستخدم للوصول للمجموعة .وفى اغلب الحيان ليخصص passwdللمجموعة .
GIDتعريف المجموعة وهو رقم مقترن باسم المجموعة ول يجوز ان تحمل مجموعتين نفس
الرقم .
User listقائمة المستخدمين المشتركين فى المجموعة . الملفات الخاصة بالمجموعات :
/etc/groubويحتوى هذا الملف على معلومات كل مجموعة . /etc/gshadowويحتوى هذا الملف على معلومات سريه تخص المجموعات و بعض
التوزيعات ل تعتمد على ذلك الملف مثل . suse ملحظات :
#للمستخدم اسم و رقم فالمستخدم يستعمل اسمه فى التعامل مع النظام و النظام يستعمل رقم
هذا المستخدم UIDفى عملياته أي أن جميع العمليات التى يقوم بها المستخدم تكون بالعتماد على رقمه فقط فالبرامج و الوامر لتعرف السماء . #لتغير رقم UIDللمستخدم ولكن يمكنك تغيير اسم المستخدم فقط وذلك لن النظام يربط ملكية الملفات برقم التعريف UIDوليس باسم الدخول فإذا قمت بتغيير رقم المستخدم
ستتسبب فى فقدان ذلك المستخدم لملكية جميع ملفاته . #اسم الدخول يجب أن ليحتوى على أحرف عربية وإنما يحتوى على أحرف إنجليزية و أرقام . #يتم كتابة home directory pathكالتالى . /home/login #قائمة الصدفات المتوفرة فى لينكس توجد فى الملف . /etc/shells 135
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#يجب أن ليقل طول كلمة المرور عن ستة أحرف ويسمح فى كلمة السر بالحرف الكابيتال و السمول و الرقام و العلمات والمسافات .
#إضافة و تعديل و حذف المستخدمين user adminstrationباستخدام سطر الوامر : ) user adminstrationإدارة المستخدمين ( :
هى اداره حساب المستخدمين و المجموعات و الذى يشمل ) إنشاء حساب جديد و التعديل على حساب موجود مسبقا و حذف حساب و إيقاف الحساب مؤقتا ( .
-aأوامر التعامل مع المجموعات : اخترنا أول التعامل مع المجموعات لنك لن يمكنك إضافة أي مستخدم إل بوجود مجموعة تضمه .وسنتكلم فى هذا الجزء عن أربعة أشياء ) إنشاء مجموعة – تعديل مجموعة – حذف مجموعة – الملفات الخاصة بالمجموعات ( .
- 1إنشاء مجموعة باستخدام المر : groupadd -1إذا أردت إنشاء مجموعة اسمها friendsاكتب ما يلى : the-game:/home/ahmed # groupadd friends
وتكون النتيجة هى إنشاء مجموعة اسمها Friendsمع إعطائها رقم GIDتسلسلى . -2إذا أردت إنشاء مجموعة اسمها eraمع اعطائها رقم GIDغير الرقم التسلسلى وليكن 560 اكتب ما يلى : the-game:/home/ahmed # groupadd -g 560 era
136
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ملحظة :المجموعات التى أرقامها أقل من 500هى مجموعات خاصة بالنظام أما المجموعات
التى أرقامها أكبر من 500هى مجموعات مستخدمين .
-3إذا أردت إنشاء مجموعة اسمها bombaوجعلها من ضمن مجموعات النظام والتى تأخذ أرقام GIDأقل من 500اكتب ما يلى :
the-game:/home/ahmed # groupadd -r bomba
-4إذا أردت إنشاء مجموعتين لهما نفس رقم GIDاتبع ما يلى :
مثل إذا أردت إنشاء مجموعتين الولى اسمها hhhوالثانيه اسمها hbkبحيث تحمل المجموعتان نفس رقم GIDوليكن الرقم 800اكتب ما يلى : the-game:/home/ahmed # groupadd -g 800 hhh the-game:/home/ahmed # groupadd -g 800 hbk -o
- 2تعديل المجموعات باستخدام المر : groupmod -1إذا أردت تغيير رقم المجموعة friendsالتى تم إنشاؤها سابقا إلى الرقم 900اكتب ما يلى : the-game:/home/ahmed # groupmod -g 900 friends
-2إذا أردت تعديل رقم مجموعة وإعطائها نفس رقم مجموعة أخرى اتبع ما يلى :
مثل إذا كان لديك مجموعة اسمها eraتحمل رقم 560وكانت لديك مجموعة أخرى اسمها friendsتحمل الرقم 900وأردت تغيير رقم المجموعة eraلتحمل الرقم 900اكتب ما
يلى :
the-game:/home/ahmed # groupmod -g 900 era -o
ملحظة مهمة :تغيير رقم المجموعة أمر خطير لن كل الملفات السابقة للتغيير ستظل محتفظة 137
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
برقمها الول مما يعنى وجود ملفات لمجموعة ليست موجودة . -3إذا أردت تغيير اسم المجموعة eraإلى tatuاكتب ما يلى : the-game:/home/ahmed # groupmod -n tatu era
- 3حذف المجموعات باستخدام المر : groupdel إذا أردت حذف مجموعة اسمها tatuاكتب ما يلى : the-game:/home/ahmed # groupdel tatu
ملحظة :إذا أردت حذف المجموعة الساسية لمستخدم موجود بالفعل على النظام فانه يتم إلغاء حساب ذلك المستخدم اول ثم بعد ذلك يتم إلغاء مجموعته الساسية .
- 4الملفات الخاصة بالمجموعات : الملف : /etc/group يتكون هذا الملف من أربعة أعمدة فقط يفصل بينهما بعلمة : colonمثال على مجموعة root . root : x : 0 : حيث rootهو اسم المجموعة و xهو الباسورد الخاص بالمجموعة وتدل xعلى أنه ليوجد باسورد لتلك المجموعة اما إذا كان للمجموعة باسورد فانه يكتب بصورة مشفرة مثل .16y/uvLQis/Gو 0هو رقم GIDالخاص بالمجموعة و الفراغ اللى بعد :يوضع به المستخدمون المنضمون للمجموعة . مثال آخر على مجموعة . video video:x:33:ahmed,conan,remstereo
حيث videoهو اسم المجموعة و xهو الباسورد الخاص بالمجموعة و 33هو رقم GIDالخاص
بالمجموعة و ahmed,conan,remstereoهم المستخدمون المنضمون لمجموعة . video 138
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-Bأوامر التعامل مع المستخدمين : - 1إنشاء مستخدم باستخدام المر : useradd عند إنشاء مستخدم بواسطة المر useraddفقط دون استخدام معه أية إضافات فإنه سيتم إنشاء ذلك المستخدم مع جعل خيارات أو قيم ذلك المستخدم افتراضية مثل إنشاء مجلد البيت الخاص بهذا المستخدم تحت المسار /homeواختيار الصدفة الفتراضية bashوإنشاء مجموعة افتراضية أساسية ) تكون بنفس اسم المستخدم أو يكون اسمها ( usersوضمه إلى بعض المجموعات الفتراضية الثانوية مثل ) videoو ( dialoutو وما إلى ذلك من قيم افتراضية .والملف المسجل به جميع القيم الفتراضية هو . /etc/default/useradd ملحظة مهمة : لتتصور أن إنشاء مستخدم يتم باستخدام المر useraddفقط وإنما عملية إنشاء المستخدم
تتكون من عدة مراحل وأمر useraddإنما هو أحد مراحل تلك العملية لذلك قررنا شرح كيفية إنشاء مستخدم كوحده واحدة فى آخر الفصل . -1لعرض جميع القيم الفتراضية التى يعطيها النظام لى مستخدم جديد اكتب ما يلى : the-game:/home/ahmed # useradd -D
-2إذا أردت إنشاء مستخدم اسمه himaاكتب ما يلى : the-game:/home/ahmed # useradd hima
وتكون النتيجة هى إنشاء مستخدم جديد اسمه himaمع جعل جميع قيم ذلك المستخدم افتراضية .
-3إذا أردت إنشاء مستخدم اسمه jakeمع إعطائه صدفة أخرى غير الفتراضية ولتكن csh 139
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
اكتب ما يلى : the-game:/home/ahmed # useradd -s /bin/csh jake
-4إذا أردت إنشاء مستخدم جديد اسمه rockمع وضع معلومات له مثل اسمه الحقيقى و
رقم تليفونه بفرض أن اسم هذا المستخدم الحقيقى هو ahmed elsayedوتليفونه هو 8659 اكتب ما يلى : the-game:/home/ahmed # useradd -c "ahmed elsayed","8659" rock
يمكن رؤية هذه المعلومات عند استعمال المر . finger ملحظة مهمة :يجب اللتزام بوضع اسم المستخدم الحقيقى فى أول المعلومات وأن يوضع بين
علمتى تنصيص منفردا وذلك لكى يوضع فى مكانه الصحيح ول يعتبر معلومة من ضمن المعلومات .
-5إذا أردت إنشاء مستخدم جديد اسمه asdمع تغيير المجموعة الفتراضية الساسية التى
ينشئها النظام بمجموعة أخرى شرط ان تكون تلك المجموعة موجوده بالفعل مثل friendsوذلك كما يلى : the-game:/home/ahmed # useradd -g friends asd
-6إذا أردت إنشاء مستخدم جديد اسمه saidمع ضم ذلك المستخدم لمجموعة ثانوية أخرى موجوده بالفعل مثل rootبالضافة للمجموعات الفتراضية الساسية اكتب ما يلى : the-game:/home/ahmed # useradd -G root said
-7إذا أردت إنشاء مستخدم جديد اسمه Jenniferمع ضم ذلك المستخدم لعدة مجموعات ثانوية ولتكن cdromو mailو wheelاكتب ما يلى :
140
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # useradd -G cdrom,mail,wheel Jennifer
-8إذا أردت إنشاء مستخدم جديد اسمه amrوتغيير مجموعته الفتراضية الساسية من usersإلى hbkبالضافة إلى ضمه إلى مجموعة ثانوية مثل wwwاكتب ما يلى :
the-game:/home/ahmed # useradd -g hbk -G www amr
ملحظة :لبد من وجود المجموعتين الساسية و الثانوية بالفعل لكى نتمكن من إلحاق المستخدم بهما و كذلك لبد من أن يكون المستخدم جديدا فى المجموعتين .
-9إذا أردت إنشاء مستخدم جديد اسمه hazemمع تغيير مجلد البيت لذلك المستخدم إلى /varاكتب ما يلى : the-game:/home/ahmed # useradd -d /var/hazem hazem
ملحظة :يمكنك استخدام أكثر من خيار معا فمثل إذا أردت إنشاء مستخدم اسمه tmatmبحيث يكون مجلد بيته فى المسار /var
ومجلد بيته اسمه fofaوصدفته tchواسمه الحقيقى kemoورقم تليفونه 25252اكتب ما يلى : the-game:/home/ahmed # useradd -d /var/fofa -s /bin/tch -c kimo,"tel 25252" tmatm
-10إذا أردت إنشاء مستخدم جديد اسمه zizoمع إعطاؤه رقم UIDمعين مثل 865 اكتب ما يلى : the-game:/home/ahmed # useradd -u 865 zizo
-11إذا أردت إنشاء أكثر من مستخدم بحيث يحملون نفس رقم UIDاستخدم الخيار -o 141
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
كما فعلنا فى المجموعات فمثل إذا أردت إنشاء 3مستخدمين الول اسمه azizوالثانى اسمه nimoوالثالث اسمه kimoبحيث يكون رقم UIDللثلث مستخدمين هو 750اكتب ما يلى :
the-game:/home/ahmed # useradd -u 750 aziz the-game:/home/ahmed # useradd -u 750 nimo -o the-game:/home/ahmed # useradd -u 750 kimo -o
-12إذا أردت إنشاء مستخدم جديد مع وضع تاريخ لنهاء حسابه تلقائيا بحيث أنه لن
يتمكن من الدخول بعد هذا التاريخ استخدم الخيار -oويتم وضع التاريخ كالتالى yyyy- mm-ddحيث ddتمثل اليام و mmتمثل الشهر و yyyyتمثل السنين
وفيما يلى مثال لليضاح .
مثال :إذا أردت إنشاء مستخدم جديد اسمه didoمع وضع التاريخ 2008-10-20لنهاء حسابه اكتب ما يلى : the-game:/home/ahmed # useradd -e 2008-10-20 dido
-13إذا أردت تغيير القيم الفتراضية التى ستنشئ لجميع المستخدمين الجدد على الدوام فانه سيتوجب عليك استخدام الخيار -Dوبعده ماتريد تغييره . واليك فيما يلى بعض المثلة التوضيحية :
مثال : 1إذا أردت تغيير مجلد بيت جميع المستخدمين الجدد من المسار /homeإلى المسار /varاكتب ما يلى : the-game:/home/ahmed # useradd -D -b /var
مثال : 2إذا أردت تغيير صدفة جميع المستخدمين الجدد وجعلها tchبدل من bash اكتب ما يلى : 142
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # useradd -D -s /bin/tch
- 2تعديل بيانات المستخدمين باستخدام المر : usermod -1إذا أردت تغيير اسم دخول المستخدم kimoإلى ginاكتب ما يلى : the-game:/home/ahmed # usermod -l gin kimo
-2إذا أردت تعديل صدفة مستخدم اسمه jakeمن cshإلى bashاكتب ما يلى : the-game:/home/ahmed # usermod -s /bin/bash jake
-3إذا أردت تعديل بعض معلومات مستخدم اسمه rockفمثل نريد تعديل اسمه الحقيقى إلى foadو رقم تليفونه إلى 5555اكتب ما يلى :
the-game:/home/ahmed # usermod -c foad,"tel 5555" rock
-4إذا أردت تغيير المجموعة الساسية لمستخدم اسمه asdمن friendsإلى hhhاكتب ما يلى :
the-game:/home/ahmed # usermod -g hhh asd
-5إذا أردت تغيير المجموعة الثانوية لمستخدم اسمه saidمن rootإلى hbkاكتب ما
يلى :
the-game:/home/ahmed # usermod -G hbk said
-6إذا أردت تغيير مجلد البيت لمستخدم اسمه hazemمن /varإلى /homeاكتب ما
يلى :
143
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # usermod -d /home/hazem hazem
-7إذا أردت تغيير رقم UIDلمستخدم اسمه zizoمن 865إلى 555اكتب ما يلى : the-game:/home/ahmed # usermod -u 555 zizo
-8إذا أردت تغيير تاريخ انتهاء حساب مستخدم اسمه didoمن 20-10-2008إلى 28-8-2008اكتب ما يلى :
the-game:/home/ahmed # usermod -e 2008-8-28 dido
-9إذا أردت قفل حساب المستخدم amrبحيث ليستطيع ذلك المستخدم الولوج للنظام
استخدم الخيار -Lمع مراعاة أن حرف L capitalاكتب ما يلى :
the-game:/home/ahmed # usermod -L amr
ملحظة :عند استخدام الخيار -Lلقفل حساب المستخدم فانه يتم إضافة العلمة ! امام كلمة سر المستخدم فى الملف . shadow
-10إذا أردت فتح حساب المستخدم amrالذى قمت بقفله سابقا بحيث يتمكن من الولوج للنظام استخدم الخيار -Uمع مراعاة ان حرف U capitalاكتب ما يلى : the-game:/home/ahmed # usermod -U amr
144
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
- 3حذف بيانات المستخدمين باستخدام المر : usermod -1إذا أردت حذف مستخدم اسمه amrمع الحتفاظ بمجلد البيت الخاص به اكتب ما يلى : the-game:/home/ahmed # userdel amr
فتظهر لك الرساله التالية : no crontab for amr
-2إذا أردت حذف مستخدم اسمه fofaمع حذف مجلد البيت الخاص به اكتب ما يلى : the-game:/home/ahmed # userdel -r fofa
فتظهر لك الرساله التالية : no crontab for fofa
- 4الملفات الخاصة بالمستخدمين : -1الملف : /etc/passwd ووظيفة هذا الملف حفظ المعلومات العامة عن المستخدمين فكل مستخدم له سطر خاص فى ذلك الملف .وهذا الملف مسموح للمستخدمين العاديين بقرائته فقط .ويتكون ذلك الملف من سبع خانات أو أعمده يفصل بين كل خانة وأخرى بعلمة : colonوفيما يلى مثال على أحد أسطر ذلك الملف remstereo:x:1002:100:remstereo:/home/remstereo:/bin/bash
فى أول السطر يذكر اسم المستخدم وهو هنا remstereoثم كلمة المرور ويعبر عنها بالرمز x ثم رقم UIDوهنا هو 1002ثم يذكر رقم GIDللمجموعة الساسية وهنا هو 100ثم يذكر 145
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المعلومات الضافية التى كتبها المستخدم مثل اسمه الحقيقى ورقم تليفونه وهنا نجد أن المستخدم وضع اسمه الحقيقى بنفس اسم الدخول remstereoثم يذكر مجلد البيت الخاص بالمستخدم وهنا هو /home/remstereoثم يذكر الصدفة التى يستخدمها
المستخدم للدخول للنظام وهى هنا . /bin/bash ويلحظ ان المستخدمين الموجودين بالملف ينقسموا إلى ثلث انواع :
: super user -1المستخدم الجذر ونلحظ ان UIDو GIDوخدين الرقم صفر . 0 : special user -2مستخدمو النظام مثل rpmو ftpو ipو cdromوهولء
المستخدمين لهم تعامل خاص مع النظام فمثل عند تنفيذ أمر خاص ب ftp serverفإن النظام يقوم باستدعاء المستخدم المسمى ftpليقوم بتنفيذ ذلك المر .
: regular user -3المستخدمون النظاميون وهم المستخدمون الذين تم إضافتهم للنظام من
قبل مدير النظام . root
-2الملف : /etc/shadow ووظيفة هذا الملف حفظ جميع المعلومات الخاصة بالمستخدمين بما فى ذلك المعلومات السريه للمستخدمين مثل كلمة المرور والفترة التى سيغلق بعدها حساب المستخدم وما إلى ذلك من
معلومات سرية .وهذا الملف غير مسموح للمستخدمين العاديين بقرائته ويتكون ذلك الملف من
تسع خانات أو أعمده ويفصل بين كل خانة وأخرى بعلمة : colonوفيما يلى مثال على أحد أسطر ذلك الملف
remstereo:2a$05$zn4uZeg:14089:0:99999:7:::
فى أول السطر يذكر اسم المستخدم وهو هنا remstereoثم كلمة المرور وتظهر مشفرة كالتالى 2a$05$zn4uZegثم يذكر آخر مرة تم تغيير فيها كلمة المرور و الرقم الموجود فى تلك الخانة standardوهنا هو 14089وهذا الرقم standardثم يذكر الوقت الذى ينتظره المستخدم لكى يستطيع تغيير كلمة المرور ويحسب ذلك الوقت من آخر مرة تم تغيير كلمة المرور فيها وهنا
هذا الرقم هو صفر 0أي أنه لم يحدد ثم يذكر فترة السماح التى بعدها لبد من تغيير كلمة المرور 146
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
وهى هنا 99999وهذا الرقم standardوتعنى 99999يوم ثم يذكر عدد اليام الواجب تغيير كلمة المرور فيها قبل انتهاء حساب المستخدم وهى هنا 7أيام وتعنى أنه إذا كان حساب
المستخدم محدد ب 99999يوم فقبل انتهاء هذه المدة ب 7أيام لبد من تغيير كلمة المرور
ثم يذكر الفترة بين إنهاء حساب المستخدم وبين إغلق الحساب كليا و الفرق بينهما أن إنهاء
حساب المستخدم متعلق بتعامل المستخدم مع النظام أما إغلق الحساب كليا فمتعلق بسياسة
إدارة النظام و هى هنا فارغة .ثم يذكر تاريخ صلحية الحساب account expireوتعنى أن
الحساب سيغلق بعد انتهاء هذه الفترة و هى هنا فارغة أما آخر خانة فتسمى special flagوهذه خانة غير مستخدمة حاليا و محجوزة للستخدام فى المستقبل . ملحظات :خانة كلمة المرور لها عدة أشكال كالتالى :
>!!< تعنى أن المستخدم لم توضع له كلمة مرور حتى الن . >*< تعنى أن المستخدم لم و لن يوضع له كلمة مرور ونرى هذه العلمة دائما مع system accountأو special userمستخدمين النظام .
2a$05$zn4uZegوهى كلمة مرور مشفره .
كيفية عمل disableللمستخدم من خلل ملف : /etc/shadow خذ الرقم الموجود فى الخانة رقم 3و ضعه فى الخانة رقم 8وذلك بعد إنقاص واحد منه . مثال :
السطر قبل التعديل remstereo:2a$05$zn4uZeg:14089:0:99999:7:::
السطر بعد التعديل remstereo:2a$05$zn4uZeg:14089:0:99999:7::14088:
ملحظة :الخانة رقم 7و التى تحدد عدد اليام بين إنهاء حساب المستخدم وبين إغلق 147
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الحساب توضع بها قيمتان > <0أو > <1-حيث : > <0سيقوم بعمل disableللحساب مباشرة بعد انتهاء الوقت المحدد لكلمة المرور . > <1-هذه القيمه توقف disableالتلقائى للحساب .
نقل المستخدمين من نظام لخر : قد تتساءل الن لماذا نحتاج إلى نقل المستخدمين إلى نظام آخر ؟؟ فمثل إذا أردت تنزيل
توزيعة أخرى لى سبب من السباب ففى هذه الحالة ستحتاج لنقل جميع المستخدمين إلى النظام أو التوزيعة الخرى ولنقل المستخدمين من نظام لخر يجب العتماد على ملف واحد فى إدارة المجموعات وملف واحد فى إدارة المستخدمين
بالنسبه للمجموعات يمكن العتماد على الملف /etc/groupدون استخدام الملف
/etc/gshadowوهذا ماتفعله السوزى لنها أساسا لتعتمد على الملف . gshadow
بالنسبه للمستخدمين يمكن العتماد على الملف /etc/passwdدون استخدام الملف /etc/shadow
-aالعتماد على الملف groupفى إدارة المجموعات : -1لتحويل محتويات الملف gshadowإلى الملف groupنكتب المر التالى : the-game:/home/ahmed # grpunconv
ويكون ناتج هذا المر هو تحويل محتويات الملف gshadowإلى الملف groupوبالتالى سيتم إلغاء الملف gshadowوالعتماد فقط على الملف . group -2ولرجاع الحال كما كان عليه سابقا أي لرجاع الملف gshadowاكتب المر التالى : 148
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # grpconv
ويكون ناتج المر هو أن الملف gshadowقد تمت كتابته ثانية .
-bالعتماد على الملف passwdفى إدارة المستخدمين :
-1لتحويل محتويات الملف shadowإلى الملف passwdنكتب المر التالى : the-game:/home/ahmed # pwunconv
ويكون ناتج هذا المر هو تحويل كلمات المرور الموجودة فى الملف shadowإلى الملف passwdوبالتالى سيتم إلغاء الملف shadowوالعتماد فقط على الملف . passwd
-2ولرجاع الحال كما كان عليه سابقا أي لرجاع الملف shadowاكتب المر التالى : the-game:/home/ahmed # pwconv
ويكون ناتج المر هو أن الملف shadowقد تمت كتابته ثانية وأيضا كلمات المرور الموجودة فى الملف passwdقد تحولت إلى الملف . shadow
كيفية تنقل المستخدم من مجموعة لخرى : إذا كان المستخدم مشترك فى أكثر من مجموعة فكيف يستطيع المستخدم التنقل بين تلك
المجموعات ؟ يتم التنقل بين المجموعات باستخدام المر newgrpمتبوعا باسم المجموعة المراد النتقال إليها . -1إذا كان لديك مستخدم اسمه amrمشترك فى عدة مجموعات مشترك فى عدة
مجموعات وهى ) friendsو familyو ( engineeringوكانت المجموعة الساسية لذلك 149
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
المستخدم engineeringوأراد النتقال إلى مجموعة friendsاكتب ما يلى : amr@the-game:/home/ahmed> newgrp friends
-2إذا أراد المستخدم amrالرجوع إلى المجموعة الساسية التى كان عليها وهى
engineeringاكتب ما يلى :
amr@the-game:/home/ahmed> exit
أو amr@the-game:/home/ahmed> newgrp
وهنا نجد سؤال يطرح نفسه وهو ما الفائدة من تنقل المستخدم بين المجموعات ؟ الفائده من تنقل المستخدم بين المجموعات ترجع إلى المجموعة نفسها ول تؤثر على المستخدم
نفسه .فعند انتقال المستخدم amrمن مجموعته الساسية engineeringإلى المجموعة friendsتصبح جميع العمليات ) من إنشاء ملفات ومجلدات ( التى ستتم من خلل
المستخدم amrفى مجموعة friendsمملوكة لمجموعة friendsولن تكون مملوكة لمجموعة . engineering
التعرف على بياناتك :
يتم التعرف على بياناتك من خلل المرين idو . groups
#المر : id ووظيفة ذلك المر جلب معلومات عن المستخدمين مثل ) اسم المستخدم و رقمه UIDو أسماء المجموعات المشترك فيها المستخدم و أرقامها ( GIDوليلزم أن تكون مستخدم جذر وأنت تستعمل ذلك المر . -1إذا أردت جلب معلومات عن نفسك اكتب المر idمنفردا
فمثل إذا اراد مستخدم على النظام اسمه ahmedجلب معلومات عن نفسه فليكتب ما يلى : ahmed@the-game:~> id
150
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
فتكون النتيجة كالتالى : )uid=1000(ahmed) gid=100(users) groups=100(users),16(dialout),33(video
-2إذا أردت جلب معلومات عن مستخدم اسمه remstereoاكتب ما يلى : ahmed@the-game:~> id remstereo
فتكون النتيجة كالتالى : )uid=1002(remstereo) gid=100(users) groups=100(users),16(dialout),33(video
-3إذا أردت معرفة رقم GIDللمجموعة الساسية فقط لمستخدم اسمه remstereoاكتب ما يلى : ahmed@the-game:~> id -g remstereo
فتكون النتيجة كالتالى : 100
-4إذا أردت معرفة أرقام GIDلجميع المجموعة المشترك فيها مستخدم اسمه remstereo
اكتب ما يلى :
ahmed@the-game:~> id -G remstereo
فتكون النتيجة كالتالى : 100 16 33 151
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-5إذا أردت معرفة رقم UIDفقط لمستخدم اسمه remstereoاكتب ما يلى : ahmed@the-game:~> id -u remstereo
فتكون النتيجة كالتالى : 1002
#المر : groups ووظيفة هذا المر إظهار المجموعات المشترك فيها المستخدم فقط وليلزم أن تكون مستخدم جذر وأنت تستعمل ذلك المر . -1إذا أردت معرفة المجموعات المشترك أنت فيها اكتب المر groupsمنفردا فمثل إذا أراد
مستخدم على النظام اسمه ahmedمعرفة المجموعات المشترك فيها فليكتب ما يلى :
ahmed@the-game:~> groups
فتكون النتيجة كالتالى : users dialout video
-2إذا أردت معرفة المجموعات المشترك فيها مستخدم اسمه remstereoاكتب ما يلى : ahmed@the-game:~> groups remstereo
فتكون النتيجة كالتالى : remstereo : users dialout video 152
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : gpasswd يستخدم هذا المر لوضع كلمة مرور لمجموعة و لحذف كلمة مرور مجموعة ولغلق مجموعة و للغاء غلق مجموعة . قبل البدء فى الشرح قد تتساءل ماهى الفائدة من عمل كلمة مرور للمجموعة ؟ ● الفائدة من عمل كلمة مرور لمجموعة معينة هى أنه إذا كان هناك مستخدم غير مشترك فى تلك المجموعة و أراد الدخول لتلك المجموعة عن طريق المر newgrpفإنه لن يتمكن من ذلك إل بعد إدخال كلمة المرور وذلك يزيد من المن فى النظام . ملحظة :جميع المشتركين داخل المجموعة المعمول لها كلمة مرور مسموح لهم طبعا الدخول
والخروج من المجموعة دون كتابة كلمة مرور .
-1لوضع كلمة مرور لمجموعة اسمها familyاكتب ما يلى : the-game:/home/ahmed # gpasswd family
فتكون النتيجة كالتالى : Changing the password for group family. New Password: Re-enter new password: Password changed.
حيث يطلب منك إدخال كلمة المرور الجديدة ثم يطلب منك إعادة إدخال كلمة المرور و ذلك للتأكيد . -2لزالة كلمة المرور لمجموعة اسمها familyاكتب ما يلى : the-game:/home/ahmed # gpasswd -r family 153
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3إذا أردت غلق مجموعة اسمها ) familyأي لتسمح لى مستخدم من خارج المجموعة
بالدخول إليها ( وذلك سواء كان للمجموعة المراد غلقها كلمة مرور أو ل اكتب ما يلى :
the-game:/home/ahmed # gpasswd -l family
-4إذا أردت إلغاء غلق مجموعة لها كلمة مرور اسمها familyاكتب ما يلى : the-game:/home/ahmed # gpasswd -u family
-5إذا أردت إلغاء غلق مجموعة ليس لها كلمة مرور اسمها friendsاكتب ما يلى : the-game:/home/ahmed # gpasswd -r friends
#المر : passwd -1إذا أردت تغيير أو إنشاء كلمة مرور لمستخدم اسمه remstereoاكتب ما يلى : the-game:/home/ahmed # passwd remstereo
فتكون النتيجة كالتالى : Changing password for remstereo. New Password: Reenter New Password: Password changed.
حيث يطلب منك إدخال كلمة المرور الجديدة ثم يطلب منك إعادة ادخال كلمة المرور و ذلك للتاكيد .
154
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ملحظة :يمكن للمستخدم العادى تغيير كلمة المرور الخاصة به بنفسه دون اللجوء للمستخدم الجذر فمثل إذا أراد المستخدم remstereoتغيير كلمة المرور الخاصة به فليكتب المر التالى :
remstereo@the-game:/home/ahmed> passwd
فتكون النتيجة كالتالى : Changing password for remstereo. Old Password: New Password: Reenter New Password: Password changed.
ونلحظ أنه طلب منك إدخال كلمة المرور الخاصة بالمستخدم remstereoمره أخرى وذلك للتاكد من أنه من قام باستخدام ذلك المر . -2إذا أردت وضع كلمة مرور لمجموعة اسمها familyاكتب ما يلى : the-game:/home/ahmed # passwd -g family
فتكون النتيجة كالتالى : Changing the password for group family. New Password: Re-enter new password: Password changed.
حيث يطلب منك إدخال كلمة المرور الجديده ثم يطلب منك إعادة إدخال كلمة المرور و ذلك للتاكيد .
155
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-3إذا أردت تغيير صدفة الدخول shellلمستخدم اسمه remstereoمن bashإلى tcshاكتب ما يلى :
the-game:/home/ahmed # passwd -s remstereo
فتكون النتيجة كالتالى : the-game:/home/ahmed # passwd -s remstereo Changing login shell for remstereo. Enter the new value, or press return for the default. Login Shell [/bin/bash]:
اكتب بعد علمة colon :اسم الصدفة الجديدة /bin/tcshكما يلى : Changing login shell for remstereo. Enter the new value, or press return for the default. Login Shell [/bin/bash]: /bin/tcsh Shell changed.
و للطلع على جميع الصدفات المتاحة اقرأ الملف /etc/shellsبأى محرر نصوص وأنت
مستخدم جذر .
ملحظة :يمكن للمستخدم العادى تغيير صدفته بنفسه دون اللجوء للمستخدم الجذر فمثل إذا أراد المستخدم remstereoتغيير صدفته من tcshإلى bashفليكتب المر التالى : remstereo@the-game:/home/ahmed> passwd -s
فتكون النتيجة كالتالى : 156
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
Changing login shell for remstereo. Password: Enter the new value, or press return for the default. Login Shell [/bin/tcsh]: /bin/bash Shell changed.
ونلحظ أنه طلب منك ادخال كلمة المرور الخاصة بالمستخدم remstereoمره أخرى وذلك للتاكد من أنه من قام باستخدام ذلك المر . -4إذا أردت إغلق حساب مستخدم اسمه remstereoاكتب ما يلى : the-game:/home/ahmed # passwd -l remstereo
-5لفتح حساب المستخدم remstereoالذى تم اغلقه سابقا اكتب ما يلى : the-game:/home/ahmed # passwd -u remstereo
-6لمسح أو ازالة كلمة المرور الخاصة بالمستخدم remstereoاكتب ما يلى : the-game:/home/ahmed # passwd -d remstereo
-7لجبار مستخدم اسمه remstereoعلى تغيير كلمة المرور الخاصة به فى المره القادمه لدخوله اكتب ما يلى : the-game:/home/ahmed # passwd -e remstereo
وبالتالى عند دخول المستخدم remstereoالمره القادمه يطلب منه تغيير كلمة المرور الخاصة به وذلك كما يلى : 157
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> su remstereo Password: Password change requested. Choose a new password. Old Password: New Password: Reenter New Password: Password changed.
-8إذا أردت تقرير عن حالة كلمة المرور الخاصة بمستخدم معين اسمه remstereoاستخدم الخيار S- capitalوذلك كما يلى : the-game:/home/ahmed # passwd -S remstereo
فتكون النتيجة كالتالى : remstereo NP 08/05/2008 0 99999 7 -1
ملحظة :يمكن للمستخدم العادى طلب تقرير عن حالة كلمة المرور الخاصة به فالنفرض ان مستخدم اسمه ahmedاراد معرفة حالة كلمة المرور الخاصة به فليكتب ما يلى :
ahmed@the-game:~> passwd -S
فتكون النتيجة كالتالى : ahmed PS 08/04/2008 0 99999 7 -1
يبدأ التقرير باسم المستخدم loginوهنا هو remstereoثم يذكر حالة حساب المستخدم ولها ثلث أنواع ) LKو NPو ( PSحيث :
LKتعنى أن حساب المستخدم مغلق من قبل المستخدم الجذر أي تم غلقه باستخدام المر 158
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
. passwd -l NPتعنى أن كلمة المرور الخاصة بالمستخدم قد تم محوها من قبل المستخدم الجذر أي تم
مسح كلمة المرور باستخدام المر . passwd -d
PSتعنى أن كلمة المرور متاحة والحساب مفعل ويمكن للمستخدم استخدام ذلك الحساب .
ثم يذكر آخر مرة تم تغيير فيها كلمة المرور وهنا هى 08/04/2008ثم يذكر الوقت الذى ينتظره المستخدم لكى يستطيع تغيير كلمة المرور ويحسب ذلك الوقت من آخر مرة تم تغيير
كلمة المرور فيها وهنا هذا الرقم هو صفر 0أي أنه لم يحدد ثم يذكر فترة السماح التى بعدها لبد من تغيير كلمة المرور وهى هنا 99999وهذا الرقم standardوتعنى 99999يوم ثم يذكر
عدد اليام الواجب تغيير كلمة المرور فيها قبل انتهاء حساب المستخدم وهى هنا 7أيام وتعنى أنه إذا كان حساب المستخدم محددا بــ 99999يوم فقبل انتهاء هذه المده بــ 7أيام لبد من
تغيير كلمة المرور ثم يذكر الفترة بين إنهاء حساب المستخدم وبين إغلق الحساب كليا وهى هنا . 1- -9إذا أردت معرفة حالة جميع كلمات المرور لجميع المستخدمين الموجودين على النظام
اكتب ما يلى :
the-game:/home/ahmed # passwd -aS
#التصاريح : permission مقدمة :
هى سمة من سمات النظمه متعددة المستخدمين حيث يوجد عدد كبير من المستخدمين يمكنهم الوصول للنظام والعمل عليه .
وهذه السمه تستخدم لتوفير المان لجميع المستخدمين فهى تحافظ على خصوصية المستخدمين وتحمى ملفاتهم من العبث .
والصلحيات الممنوحة للملفات والمجلدات 3انواع : readصلحية القراءة 159
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
writeصلحية الكتابة executeصلحية التنفيذ
وتمنح هذه الصلحيات إما فى صوره مفردة أو تمنح فى صورة مركبة .ويتم تحديد الصلحيات السابقة لثلث جهات وهى ) ( user , group , otherحيث :
: userهو من قام بإنشاء الملف وهو الذى يحدد الصلحيات لنفسه و للمجموعة وللخرين . : groupوهى المجموعة المشترك فيها المستخدم والمتواجد عليها أثناء إنشاء الملف وهذه
المجموعة تكون مرتبطة بالملف .
: otherوهم باقى مستخدمي النظام غير المشتركين فى مجموعة مالك الملف المرتبطة بالملف .
وكل جهة من الجهات الثلث ) ( user , group , otherيمكن منحها التصاريح الثلثة ) ( read , write , executeأي أن الجمالى هو تسعة تصاريح فرعية .
ونلحظ أنه عند إنشاء الملف أو المجلد يتم منحه افتراضيا بعض التصاريح حتى إذا لم يتم تعيينها له .
ويمكنك عرض التصاريح الممنوحة للملفات و المجلدات باستخدام المر lsمع الخيار -lوذلك كالتالى : ahmed@the-game:~> ls -l
فتكون النتيجة كالتالى مثل : total 1675076 6 2008-08-08 23:05 aa 910 2008-05-31 13:38 antiNetCut-linux.py
drwxrwxrwx 2 ahmed users -rwxrwxrwx 1 ahmed users
ويتم عرض التصاريح فى سلسلة من عشر شرط بحيث تدل أول شرطة على نوع الملف فإذا كان
المعروض ملفا تترك أول شرطة فارغة أما إذا كان المعروض مجلدا فيوضع فى أول شرطة حرف . d اما التسع شرط الباقية فيكتب بداخلها التصاريح التسعة بحيث تكون أول ثلثة تصاريح خاصة بالمالك والثلث تصاريح الثانية تخص مجموعة المالك والثلث تصاريح الخيرة تخص
المستخدمين الخرين .ويتم ترتيب التصاريح بحيث يأتى تصريح القراءة أول ثم يليه تصريح
الكتابة ثم يليه تصريح التنفيذ و عند عدم إعطاء تصريح معين تظهر بدل منه شرطة . 160
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
وهناك طريقتان لكتابة التصاريح وهما : -aكتابة التصاريح بالحرف -bكتابة التصاريح بالرقام
-aكتابة التصاريح بالحرف : وفيها تستخدم الحرف الثلثة التالية للتعبير عن السماحيات : rوتعبر عن تصريح القراءة read
wتعبر عن تصريح الكتابة write
xتعبر عن تصريح التنفيذ execute وتكون التصاريح عادة فى صورة مركبة فمثل : rwxr-x---تعنى أن المالك له جميع الصلحيات على الملف أما مجموعة المالك فتمتلك
تصريح القراءة والتنفيذ فقط أما الخرون فليس لهم أي تصريح .
r-x-----تعنى أن المالك له صلحية القراءة والتنفيذ أما مجموعة المالك والخرون ليس لهم أيتصريح على ذلك الملف .
rwxr--r--تعنى أن مالك الملف له جميع الصلحيات أما مجموعة المالك و الخرون ليس لهم
إل صلحية القراءة فقط .
-bكتابة التصريح بالرقام : وفيها تقابل كل صلحية قيمة أو رقم معين وذلك كالتالى : سماحية القراءة readوتساوى 4
سماحية الكتابة writeوتساوى 2
سماحية التنفيذ executeوتساوى 1 ويتم تركيب الصلحيات معا عن طريق جمع قيم كل صلحية كالتالى : سماحية القراءة والكتابه rw-تساوى 6
سماحية القراءة و التنفيذ r-xتساوى 5
سماحية الكتابة والتنفيذ -wxتساوى 3
سماحية القراءة و الكتابة و التنفيذ rwxتساوى 7 161
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
وتكون التصاريح عادة فى صورة مركبة فمثل :
rwx------ = 700 rw------- = 600
-wx------ = 300 rw-rw-rw- = 666
rwxrwxrwx = 777 r-xr-xr-x = 555 ملحظة :عند إنشاء مجلد يكون التصريح الفتراضى للمالك 7وعند إنشاء ملف يكون التصريح الفتراضى . 6
#بحث حول معانى التصاريح وتأثير التصاريح على العمليات المختلفة : وقبل معرفة كيفية إعطاء التصاريح يجب عليك معرفة معانى التصاريح ووظائفها وتأثير التصاريح على بعضها وتأثير التصاريح على العمليات المختلفة التى تجرى على الملفات والمجلدات من
إنشاء ونسخ ونقل وحذف وما إلى ذلك من عمليات .
لذلك قمت بعمل بحث صغير جدا كانت فكرته كالتالى :
-1أنشأت مجلدا مع إعطاء ذلك المجلد جميع التصاريح حتى لنؤثر على تصاريح الملفات والمجلدات الموجوده بداخله .
-2أنشأت داخل ذلك المجلد 6ملفات و 6مجلدات فرعية . -3سميت كل ملف ومجلد بالتصريح الممنوح إياه فمثل الملف الممنوح تصريح القراءة فقط
اسمه rوالملف الممنوح تصريح الكتابة فقط اسمه wو الملف الممنوح تصريح التنفيذ فقط اسمه xوالملف الممنوح تصريح القراءة والكتابة اسمه r+wوهكذا وبالتالى كانت أسماء الملفات
كالتالى :
r , w , x , r+w , r+x , w+x
وكانت أسماء المجلدات كالتالى : r1 , w1 , x1 , r+w1 , r+x1 , w+x1 162
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-4ثم عملت جدولين لمقارنة التصاريح مع العمليات التى يمكن إجراؤها على الملفات و المجلدات
اول :تاثير التصاريح على العمليات التى يمكن إجراؤها على المجلدات :
التصريح
فتح
نسخ
نقل
مسح
المجلد
المجلد
المجلد
المجلد
إنشاء
نسخ
داخل
داخل
ملف
نسخ
ملف من
ملف من
المجلد
المجلد
خارج
نقل ملف
نقل ملف
مسح
المجلد
خارج
داخل
من داخل من
ملف من
للخارج
المجلد لداخله
للخارج
المجلد
المجلد
r1
0
0
0
0
0
0
0
0
0
0
w1
0
0
2
0
0
0
0
0
0
0
x1
1
0
0
0
0
2
0
0
0
0
r+w1
0
0
2
0
0
0
0
0
0
0
r+x1
2
2
0
0
0
2
0
0
0
0
w+x1
1
0
2
2
2
2
2
2
2
2
لداخله
حيث : 0تعنى أن العملية فشلت ) لم تتم ( 2تعنى أن العملية قد تمت بنجاح
اما 1فتعنى أنه يمكنك الدخول إلى المجلد باستخدام المر cdفقط وليمكنك عرض ما بداخل المجلدات أي لن تتمكن من استخدام المر . ls نتيجة :
التصريح : r 163
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
يستخدم لعرض ما بداخل المجلد فقط دون إمكانية فتح المجلد أو الدخول إليه ويتم ذلك من خلل المر ls التصريح : x
يستخدم لفتح المجلد أو الدخول إليه فقط دون إمكانية عرض مابداخله ويتم ذلك باستخدام المر . cd التصريح : r+x
يستخدم لفتح المجلد مع عرض ما بداخله كما يستخدم لنسخ المجلد من مكان لخر التصريح : w يستخدم لنقل المجلد من مكان لخر التصريح : w+x
يستخدم لمسح المجلد ويستخدم لنشاء ملف داخل المجلد ويستخدم لنسخ ملف من خارج المجلد لداخله ويستخدم لنقل ملف من خارج المجلد إلى داخله والعكس ويستخدم لمسح
مابداخل المجلد من ملفات و مجلدات فرعية
ثانيا :تأثير التصاريح على العمليات التى يمكن إجراؤها على الملفات :
التصريح
فتح الملف
نسخ الملف
نقل الملف
مسح الملف
التعديل على الملف
r
2
2
2
2
0
w
0
0
2
2
1
x
0
0
2
2
0
r+w
2
2
2
2
2
r+x
2
2
2
2
0
164
دليل المستخدم العربى فى أوامر لينكس
الحمد ل رب العالمين
w+x
0
سبحان ال وبحمده سبحان ال العظيم
0
2
2
1
حيث : 0تعنى أن العملية فشلت ) لم تتم ( 2تعنى أن العملية قد تمت بنجاح
اما 1تعنى أنه يمكنك التعديل على الملف دون فتحه باستخدام المر : cat >> filename
نتيجة :
التصريح : r يستخدم لفتح الملف و الطلع على مابداخله من بيانات ويستخدم لنسخ الملف من مكان لخر
التصريح : w يستخدم لكى تستطيع الكتابة داخل الملف و التعديل على بياناته التصريح : r+x
يستخدم لكى تستطيع تنفيذ برنامج أو سكربت أو تسطيب البرامج ملحظة :نقل الملفات من مكان لخر وحذفها ل يعتمد على التصاريح الممنوحة للملف و إما يعتمد على التصاريح الممنوحة للمجلد الذى يحوى الملفات وبذلك قد تكون إن شاء ال قد فهمت الغرض من وراء كل تصريح وتأثير التصريح الممنوح على العمليات التى تجرى على الملف و المجلد .
ويتحكم فى منح التصاريح صاحب الملف أي من قام بإنشائه وكذلك المستخدم الجذر 165
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
#المر : chmod يستخدم هذا المر لتغيير السماحيات على الملفات والمجلدات ومن خلل ذلك المر يمكن تغيير السماحيات بالرقام و بالحرف -aتغيير السماحيات بالرقام : -1إذا أردت تغيير السماحيات لملف أو مجلد اسمه eraبحيث تمنح المالك جميع
الصلحيات وتمنح مجموعة المالك صلحية القراءة والتنفيذ و تمنح الخرين صلحية القراءة فقط اكتب ما يلى : ahmed@the-game:~> chmod 754 era
-2إذا أردت تغيير السماحيات لمجلد بما يحتويه من ملفات و مجلدات فرعية وكان ذلك المجلد اسمه didoبحيث تمنح المالك ومجموعته جميع الصلحيات ول تمنح الخرين أية
صلحيات اكتب ما يلى :
ahmed@the-game:~> chmod -R 770 full
-bتغيير السماحيات بالحرف :
وفى هذه الطريقة سوف نستبدل الرقام بالحرف .وتعد هذه الطريقة بدائية جدا وغير عملية بالمرة بالمقارنة بالطريقة السابقة وذلك لعدم مرونتها حيث إننا لن نتمكن من تغيير الصلحيات للجهات الثلث ) ( user , group , otherفى آن واحد إل فى حالة وحيدة و نادرة وهى حالة
تساوى التصاريح الممنوحة لجميع الجهات السابق ذكرها .
وقبل البدء فى الشرح يجب معرفة الرموز التية : uتعنى user
gتعنى group oتعنى other
aتعنى الكل أي ) ( user , group , other +لضافة تصريح 166
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
= لضافة تصريح لسحب تصريح -1إذا كان لديك مجلد اسمه socaوأردت إعطاء مالكه جميع الصلحيات اكتب ما يلى : ahmed@the-game:~> chmod u+rwx soca
أو
ahmed@the-game:~> chmod u=rwx soca
-2إذا كان لديك مجلد اسمه socaوأردت إعطاء مجموعة مالكه صلحية القراءة و التنفيذ
اكتب ما يلى :
ahmed@the-game:~> chmod g+rx soca
أو ahmed@the-game:~> chmod g=rx soca
-3إذا كان لديك مجلد اسمه socaوأردت إعطاء المستخدمين الخرين صلحية القراءة و
التنفيذ اكتب ما يلى :
ahmed@the-game:~> chmod o+rx soca
أو ahmed@the-game:~> chmod o=rx soca
-4إذا كان لديك مجلد اسمه nogaوأردت إعطاء مالكه و مجموعته و المستخدمين
الخرين صلحية القراءة و التنفيذ اكتب ما يلى :
ahmed@the-game:~> chmod a+rx noga 167
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
أو ahmed@the-game:~> chmod a=rx noga
-5إذا كان لديك مجلد اسمه nogaوأردت سحب صلحية القراءة و التنفيذ من
المستخدمين الخرين اكتب ما يلى :
ahmed@the-game:~> chmod o-rx noga
#المر : chown يستخدم لتغيير ملكية ملف معين إلى مستخدم جديد و إلى مجموعة جديده أيضا وذلك من خلل المستخدم الجذر فقط . -1إذا أردت تغيير ملكية ملف أو مجلد اسمه himaإلى المستخدم amrمع عدم تغيير المجموعة المالكة لذلك الملف اكتب ما يلى :
the-game:/home/ahmed # chown amr hima
-2إذا أردت تغيير ملكية ملف أو مجلد اسمه miroإلى المستخدم conanوتغيير المجموعة المالكة لذلك الملف إلى المجموعة familyاكتب ما يلى :
the-game:/home/ahmed # chown conan:family miro
ملحظة :ليس شرطا عند تغيير المجموعة المالكة للملف أن يكون صاحب الملف عضوا فى تلك
المجموعة فمثل هنا المستخدم conanليس عضوا فى مجموعة . family
-3إذا أردت تغيير ملكية مجلد بما يحتويه من ملفات و مجلدات فرعية وكان ذلك المجلد
اسمه didoإلى المستخدم amrمع عدم تغيير المجموعة المالكة لذلك الملف اكتب ما يلى : 168
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # chown -R amr dido
-4إذا أردت تغيير ملكية مجلد بما يحتويه من ملفات و مجلدات فرعية وكان ذلك المجلد اسمه didoإلى المستخدم conanوتغيير المجموعة المالكة لذلك المجلد إلى المجموعة
familyاكتب ما يلى :
the-game:/home/ahmed # chown -R conan:family dido
#المر : chgrp يستخدم لتغيير المجموعة التى ينتمى إليها ملف أو مجلد معين . -1إذا أردت تغيير المجموعة التى ينتمى إليها ملف أو مجلد اسمه biboإلى المجموعة
familyاكتب ما يلى :
the-game:/home/ahmed # chgrp family bibo
-2إذا أردت تغيير المجموعة التى ينتمى إليه مجلد بما يحتويه من ملفات و مجلدات فرعية
وكان ذلك المجلد اسمه zizoإلى المجموعة familyاكتب ما يلى :
the-game:/home/ahmed # chgrp -R family zizo
كيفية إنشاء مستخدم : لنفرض أنك تريد عمل مستخدم اسمه adelكل ما عليك فعله هو اتباع الخطوات التالية : -1أنشئ المستخدم بواسطة المر useraddوذلك كالتالى : 169
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # useradd adel
-2قم بعمل كلمة مرور لذلك المستخدم باستخدام المر passwdوذلك كالتالى : the-game:/home/ahmed # passwd adel
فتكون النتيجة كالتالى : Changing password for adel. New Password: Bad password: a palindrome Reenter New Password: Password changed.
حيث يطلب منك إدخال كلمة المرور الجديدة ثم يطلب منك إعادة إدخال كلمة المرور و ذلك للتأكيد . -3قم بإنشاء مجلد بيت خاص بالمستخدم adelوذلك كالتالى : the-game:/home/ahmed # mkdir /home/adel
-4قم بنقل ملكية مجلد بيت المستخدم adelبما يحويه من مجلدات فرعية و ملفات من المستخدم الجذر rootإلى المستخدم adelوذلك كالتالى : the-game:/home/ahmed # chown -R adel /home/adel
-5افتح الملف /etc/passwdبأى محرر نصوص وليكن mceditوذلك كالتالى : 170
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
the-game:/home/ahmed # mcedit /etc/passwd
-6ابحث داخل ذلك الملف عن السطر التالى : adel:x:1006:100::/home/adel:/bin/bash
وتأكد من أنه ينتهى ب /bin/bashأي يكون كالسطر السابق فإذا لم يكن كذلك ضع فى
نهايته /bin/bash
171
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الفصل الثامن :ادارة العمليات #مقدمه : لكل عمليه تجرى فى النظام عمليه ام تقوم بتشغيل البرنامج الحقيقى .والعمليه الم لجميع العمليات الخرى هى العمليه initفهى تتحكم بما يحدث عند تشغيل النظام و تتحكم بطريقة عمله . العمليه initتشكل جزء من النواه حيث انها تقوم بتوليد جميع العمليات الخرى عن طريق مجموعة قيود موجوده فى الملف /etc/inittabفمثل عند ادخال المر findفى سطر الوامر فان الصدفه هنا تمثل العمليه الم للمر . find تتمتع العمليات بجميع صلحيات المستخدم الذى اطلقها فى النظام وهذا المفهوم مهم لن هذا ما
يمنع مستخدم من الكتابه و التعديل على بيانات مستخدم اخر و كذلك يمنع قراءة البريد الخاص بالمستخدمين الخرين .
- 1جعل برنامج يعمل فى الخلفية : ويتم ذلك باستخدام المعامل & بعد المر مباشرة وذلك لجعل المر يعمل فى الخلفيه اى ان البرنامج يعمل دون ان يحتل سطر الوامر وبالتالى يمكنك الستفادة من سطر الوامر في كتابة أوامر أخرى ،ويتم كتابة المعامل & بعد المر مباشرة ول يشترط ترك مسافه بينه وبين المر .فمثل اذا اردت فتح برنامج الله الحاسبه xcalcو جعله يعمل فى الخلفيه اكتب ما يلى : &ahmed@the-game:~> xcalc
فتكون النتيجه هى طباعة رقم العمل على الشاشه يليه رقم العمليه processالخاصه بالبرنامج .
- 2تعليق برنامج ل يعمل فى الخلفية : تعليق البرنامج يعنى ايقافه عن العمل مؤقتا و ليس غلقه نهائيا ،ويمكنك تعليق او ايقاف اى برنامج عن العمل بالضغط على مفتاحى . ctrl+z فمثل اذا قمت بتشغيل برنامج الله الحاسبه xcalcمن سطر الوامر دون ان تجعل العمل فى 172
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
الخلفيه ثم اردت لى سبب ما تعليق البرنامج او ايقافه عن العمل اضغط على مفتاحى ctrl+zو ذلك كما يلى : ahmed@the-game:~> xcalc
اضغط على ctrl+z
xcalc
[1]+ Stopped
فتكون النتيجه هى ايقاف او تعليق برنامج xcalcو طباعة رقم العمل على الشاشه يليه حالة البرنامج يليه اسم البرنامج .
- 3عرض قائمه بالبرامج التى تعمل فى الخلفيه و البرامج المعلقه : يمكنك عرض قائمه بالبرامج التي تم إجراؤها بسطر الوامر ،والتى تعمل فى الخلفيه و البرامج المعلقه باستخدام المر jobsوذلك كما يلى : ahmed@the-game:~> jobs
فتكون النتيجه كالتالى مثل : & tvtime
[1]- Running
xcalc
[2]+ Stopped
فتكون النتيجه هى عرض رقم العمل الخاص بالبرنامج ثم عرض حالة البرنامج ثم عرض اسم البرنامج .
- 4اعادة برنامج معلق الى العمل فى المقدمة : يمكنك اعادة برنامج قمت بتعليقه للعمل فى المقدمة عن طريق المر fgفمثل اذا كنت قد قمت بتشغيل برنامج xcalcمن سطر الوامر ثم قمت بايقافه او تعليقه بالضغط على مفتاحى ctrl+zثم أردت إرجاعه للعمل مره أخرى فما عليك إل كتابة المر fgيتبعه رقم العمل ويمكنك تحديد رقم العمل باستخدام المر jobsوذلك كما يلى : ahmed@the-game:~> jobs xcalc 173
[1]+ Stopped
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> fg 1
فتكون النتيجه هى اعادة البرنامج المعلق او الموقوف الى العمل فى المقدمة .
- 5اعادة برنامج معلق الى العمل فى الخلفية : يمكنك إعادة برنامج قمت بتعليقه للعمل فى الخلفيه عن طريق المر bgفمثل اذا كنت قد قمت بتشغيل برنامج xcalcمن سطر الوامر ثم قمت بإيقافه او تعليقه بالضغط على مفتاحى ctrl+zثم أردت إرجاعه للعمل مره أخرى فى الخلفية فما عليك إل كتابة المر bgيتبعه رقم العمل ويمكنك تحديد رقم العمل باستخدام المر jobsوذلك كما يلى : ahmed@the-game:~> jobs xcalc
[1]+ Stopped
ahmed@the-game:~> bg 1 & [1]+ xcalc
فتكون النتيجه هى عرض رقم العمل و اسم البرنامج و بجانبه المعلمه & ) اى ان البرنامج سوف يعمل فى الخلفيه ( .
#المر : ps وظيفة هذا المر عمل تقرير عن العمليات التى تجرى حاليا . -1اذا اردت عرض قائمه بجميع العمليات التى يملكها المستخدم الحالى اكتب ما يلى : ahmed@the-game:~> ps
فتكون النتيجة مثل كالتالى : TIME CMD
PID TTY
8261 pts/1 00:00:00 bash 174
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
8270 pts/1 00:00:00 ps
حيث :
PIDيمثل رقم العمليه و هو رقم خاص بكل عمليه فل تتشابه عمليتان فى هذا الرقم . TTYالمحطه الطرفيه التى تعمل عليها .
TIMEكمية الوقت الذى اخذته العمليه من المعالج او زمن وحدة المعالجه المركزيه .
CMDاسم العمليه ذاتها . -2اذا اردت عرض قائمه بجميع العمليات التى يملكها المستخدم الحالى مع عرض بعض المعلومات
الضافيه عن تلك العمليات اكتب ما يلى :
ahmed@the-game:~> ps u
فتكون النتيجه مثل كالتالى : PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER
04:55 0:00 /bin/bash
pts/2 Rs
ahmed 8452 0.1 0.4 5008 2364
04:56 0:00 ps u
pts/2 R+
ahmed 8468 0.0 0.1 2580 992
حيث : USERهو اسم المستخدم .
CPU%النسبه المئويه التى تستخدمها العمليه من سرعة الجهاز الكليه . MEM%النسبه المئويه التى تستخدمها العمليه من الذاكره .
STATحالة العمليه ) Rتعنى runningاى قيد التشغيل ( و ) sتعنى sleepingاى نائمه ( و
) Tتعنى stoppedاى متوقفه ( و ) Zتعنى . ( zombie
VSZالمساحه المستخدمه من الذاكره الفتراضيه بالكيلوبايت . RSSالمساحه المستخدمه من الذاكره الفيزيائيه الرامات بالكيلوبايت . -3اذا اردت معرفة الرقم الساسى للعمليات ppidاستخدم الخيار -lوذلك كما يلى : 175
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> ps -l
فتكون النتيجه مثل كالتالى : TIME CMD
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY
pts/2 00:00:00 bash pts/2 00:00:00 ps
0 R 1000 2635 2575 0 80 0 - 12530 R 1000 2644 2635 0 80 0 - 592 -
-4اذا اردت معرفة جميع العمليات التى تعمل الن فى لينكس اكتب ما يلى : ahmed@the-game:~> ps -A
-5اذا اردت عرض العمليات على شكل شجره تبين العملية الم والعلقة بين العمليات المختلفة
اكتب ما يلى :
ahmed@the-game:~> ps f
-6اذا اردت عرض جميع العمليات الخاصه التى بدأها المستخدم الحالى اكتب ما يلى : ahmed@the-game:~> ps -ux
#المر : pstree يستخدم لعرض جميع العمليات و البرامج الجاري تشغيلها على شكل شجرى جميل جدا -1اذا اردت عرض جميع العمليات و البرامج الجارى تشغيلها على شكل شجرى اكتب ما يلى : ahmed@the-game:~> pstree
-2اذا اردت عرض جميع العمليات الخاصة بمستخدم معين اسمه ahmedاكتب ما يلى : 176
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> pstree ahmed
-3اذا اردت عرض جميع العمليات الجارى تشغيلها مع عرض ارقام العمليات pidاستخدم الخيار -pوذلك كما يلى : ahmed@the-game:~> pstree -p
#المر : kill يستخدم لرسال اشارات الى العمليات ويوجد 64اشارة متاحه و الشارة الفتراضية هى SIGTERMوتحمل القيمة 15وهذه الشارة يمكنك من خللها انهاء عمل البرنامج و العمليات غير المرغوب فيها اى حذفها من النظام . يمكن للمستخدم العادى انهاء البرامج و العمليات التى تعود ملكيتها اليه فقط ول يمكنه انهاء البرامج و العمليات التى ليملكها بينما يستطيع المستخدم الجذر انهاء اى عملية او برنامج فى النظام . -1لعرض قائمة بالشارات المتاحة وقيمها استخدم الخيار -lوذلك كما يلى : ahmed@the-game:~> kill -l
-aانهاء عمل برنامج باستخدام رقم العملية :
-2اذا اردت انهاء برنامج او عملية ما اكتب رقم العمليه pidبعد المر killمباشرة وذلك كما يلى : ahmed@the-game:~> kill 2526
اذا رفض البرنامج او العملية النتهاء قم بارسال الشارة SIGKILLوالتى تحمل القيمة 9
) ووظيفتها انهاء العمليات عن طريق نواة النظام ( بحيث تضع بعد تلك الشارة رقم العملية pid وذلك كما يلى :
177
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
ahmed@the-game:~> kill -9 2526
اذا رفض البرنامج ان يتم غلقه استخدم رقم العملية الرئيسى ppidلنهاؤه وذلك كما يلى : ahmed@the-game:~> kill 3068
اذا لم تنتهى العمليه او البرنامج المراد انصحك بالتحول الى المستخدم الجذر لنهاء ذلك البرنامج لنه قد يكون ذلك البرنامج او العمليه مملوك للمستخدم الجذر .
السبب فى بقاء بعض العمليات بعد الغاؤها و عند الكشف عليها بالمر psوجد انها تعمل ولكن برقم pidجديد هو ان هذه العمليه قد تم تشغيلها من قبل برنامج اخر لذلك فان الخيار المثالى هو انهاء تلك العملية باستخدام رقم العمليه الرئيسى ppidكما سبق واوضحنا .
طبعا يمكنك الحصول على رقم العمليه pidورقم العمليه الساسى ppidمن خلل المر ps وذلك كما سبق ان اوضحنا . -3اذا اردت انهاء عدة عمليات معا اكتب ارقام العمليات بعد المر killمع ترك مسافة بين كل رقم عمليه و الخرى وذلك كما يلى :
ahmed@the-game:~> kill 3068 2258 9638 9523
-bانهاء عمل برنامج باستخدام اسم البرنامج :
-4يمكن انهاء عمل برنامج بواسطة اسمه مع وضع علمة %قبل اسم البرنامج مباشرة فمثل لنهاء عمل برنامج xcalcاكتب ما يلى : ahmed@the-game:~> kill %xcalc
وهذه الطريقه قد ل تصلح مع كل البرامج -cانهاء عمل برنامج باستخدام رقم العمل الخاص به 178
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
-5يمكنك انهاء عمل برنامج بواسطة رقم العمل الخاص به وذلك بوضع علمة %قبل رقم العمل البرنامج مباشرة فمثل اذا قمت بتشغيل برنامج tvtimeمن الترمينال فى الخلفيه و اردت انهاء عمله اكتب ما يلى :
ahmed@the-game:~> kill %1
وطبعا رقم العمل يمكنك الحصول عليه من خلل المر jobsكما اوضحنا سابقا
#المر : killall يستخدم لنهاء العمليات و البرامج بواسطة اسمائها . اذا اردت انهاء برنامج او عملية ما اكتب اسم العمليه بعد المر killallمباشرة فمثل اذا اردت انهاء برنامج xcalcاكتب ما يلى : ahmed@the-game:~> killall xcalc
اذا رفض البرنامج او العمليه النتهاء استخدم الخيار -9متبوعا باسم العمليه وذلك كما يلى : ahmed@the-game:~> killall -9 xcalc
179
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
180
دليل المستخدم العربى فى أوامر لينكس
سبحان ال وبحمده سبحان ال العظيم
الحمد ل رب العالمين
خاتمه : الحمد ل رب العالمين و الصلة والسلم على أشرف المرسلين و خاتم النبيين ورحمة ال للعالمين سيدنا محمد و على آله وصحبه أجمعين . تم بعون ال وفضله النتهاء من تأليف وإخراج هذا الكتاب فى ليلة الربعاء 25رمضان 1429هجريا – 25سبتمبر 2008ميلديا الساعه 01:24صباحا . أسال ال العظيم رب العرش العظيم أن يجعل هذا الكتاب فى ميزان حسناتي و حسنات والدتى وأرجو من كل من يقرأ هذا الكتاب الدعاء بالخيرات ودخول الجنة لى و لمى الحبيبة . المؤلف :مهندس /أحمد السيد أحمد على البلد :مصر المدينه :السكندرية البريد اللكترونى للتواصل : [email protected] [email protected] السم المستعار فى منتديات لينكس هو remstereo
181
دليل المستخدم العربى فى أوامر لينكس