تغييرات

اذهب إلى التنقل اذهب إلى البحث
الصلاحيات والروابط الثابته واللينه
سطر 41: سطر 41:  
== طريقة التقديم ==
 
== طريقة التقديم ==
   −
===== يشير المدرب ان الجلسة مرتبطة بشكل جزئي لما جاء في [[منهج نواة تقنية الجلسة الرابعة|الجلسة الرابعة]] وبالتحديد أجزاء الملفات ووسائط التخزين =====
+
===== يشير الميسر ان الجلسة مرتبطة بشكل جزئي لما جاء في [[منهج نواة تقنية الجلسة الرابعة|الجلسة الرابعة]] وبالتحديد أجزاء الملفات ووسائط التخزين =====
    
==== الملفات, نظم الملفات والصلاحيات Files, file systems and file permissions ====
 
==== الملفات, نظم الملفات والصلاحيات Files, file systems and file permissions ====
يذَكِر المدرب المتدربين بالمكونات المادية للقرص الصلب كما تم ذكرها في ما سبق بسؤال المتدربين عنها وسرد التفاصيل الخاصة بها<blockquote>
+
يذَكِر الميسر المتدربين بالمكونات المادية للقرص الصلب كما تم ذكرها في ما سبق بسؤال المتدربين عنها وسرد التفاصيل الخاصة بها<blockquote>
 
(إجابة إسترشادية):
 
(إجابة إسترشادية):
   سطر 54: سطر 54:  
* عند الكتابة يتحرك هذان القطبان فإذا تلامس القطب (N) مع القرص قبل القطب (S) تكون النتيجة (N-S) وهذا يمثل الرقم (1) بلغة الآلة ،بينما إذا حدث العكس تكون النتيجة (S-N) وهذا يمثل الرقم (0) بلغة الآلة.
 
* عند الكتابة يتحرك هذان القطبان فإذا تلامس القطب (N) مع القرص قبل القطب (S) تكون النتيجة (N-S) وهذا يمثل الرقم (1) بلغة الآلة ،بينما إذا حدث العكس تكون النتيجة (S-N) وهذا يمثل الرقم (0) بلغة الآلة.
   −
* تخزن البيانات بشكل عشوائي على الأقراص (platters) ويتم تخزين معلومات عن هذه البيانات (metadata) في ذاكرة خاصة (special memory) داخل القرص الصلب (hard disk) توصِف هذه البيانات لسهولة قراءتها واسترجاعها من قِبل نظام التشغيل ؛فعلى سبيل المثال يتم تسجيل رقم المسار (track number) الذي به هذه البيانات ورقم كل جزء (sector) يحوي جزء من هذه البيانات ...إلخ.
+
* تخزن البيانات بشكل عشوائي على الأقراص (platters) ويتم تخزين معلومات/بيانات وصفية عن هذه البيانات (metadata) في ذاكرة خاصة (special memory) داخل القرص الصلب (hard disk) توصِف هذه البيانات لسهولة قراءتها واسترجاعها من قِبل نظام التشغيل ؛فعلى سبيل المثال يتم تسجيل رقم المسار (track number) الذي به هذه البيانات ورقم كل جزء (sector) يحوي جزء من هذه البيانات ...إلخ.
</blockquote>يقوم المدرب بمراجعة الجزء الخاص بالملفات بسؤال المتدربين عن أنواع الملفات التي تعاملنا معها الى الآن والصلاحيات التي نحتاجها من وجهة نظرهم للتعامل مع تلك الملفات<blockquote>
+
</blockquote>
 +
 
 +
==== البيانات الوصفية لملف بإستخدام الأمر stat ====
 +
يسأل الميسر عن كيفية الوصول للبيانات الوصفية (metadata) السابق ذكرها كجزء من البيانات المخزنة في المكونات المادية للقرص الصلب (hard disk device) ومن المسؤول عن ذلك؟<blockquote>
 +
(إجابة إسترشادية):
 +
 
 +
- من المسؤول عن الوصول الى البيانات الوصفية (metadata) المخزنة على القرص الصلب (hard disk device) وكيف نصل لها؟
 +
 
 +
نظام التشغيل هو المسؤول عن ذلك ويمكن الوصول لها في نظام لينكس (Linux) عن طريق أمر 'stat'
 +
 
 +
ويقوم الميسر بتطبيق هذا الأمر مع المتدربين للوصول الى النتيجة ومناقشتها سوياً:<syntaxhighlight lang="bash">
 +
$ stat directory1
 +
  File: 'directory1/'
 +
  Size: 4096      Blocks: 8          IO Block: 4096  directory
 +
Device: 811h/2065d Inode: 1623019    Links: 3
 +
Access: (0500/dr-x------)  Uid: ( 1000/  adef)  Gid: ( 1000/  adef)
 +
Access: 2021-04-09 22:01:36.708155848 +0200
 +
Modify: 2021-04-09 22:01:13.808296041 +0200
 +
Change: 2021-04-09 22:01:34.852166470 +0200
 +
Birth: -
 +
</syntaxhighlight></blockquote>يقوم الميسر بمراجعة الجزء الخاص بالملفات بسؤال المتدربين عن أنواع الملفات التي تعاملنا معها الى الآن والصلاحيات التي نحتاجها من وجهة نظرهم للتعامل مع تلك الملفات<blockquote>
 
(إجابة إسترشادية):
 
(إجابة إسترشادية):
   سطر 64: سطر 84:  
- في نظركم ما هي الصلاحيات اللازمة للتعامل مع الملفات بشكل عام؟
 
- في نظركم ما هي الصلاحيات اللازمة للتعامل مع الملفات بشكل عام؟
   −
هي القراءة/السرد (r) والكتابة/التحرير (w) والتنفيذ/الفتح (x)
+
هي القراءة/السرد (r) والكتابة/التحرير (w) والتنفيذ/الفتح (x) ؛وهذا لكلٍ من يملك هذا الملف من المستخدم (user) ويعبر عنه أول ثلاث خانات المعبرة عن الصلاحيات ،والمجموعة (group) ويعبر عنها الثلاث خانات التالية ،والآخرون (others) ويعبر عنها الثلاث خانات الأخيرة.
    
- بناءاً على ذلك في نظركم ماذا يحدث عند اعطاء الملفات الإعتيادي (regular file) كل من هذه الصلاحيات؟ ماذا يحدث عند اعطاء المجلد (directory) كل من هذه الصلاحيات؟ ... وهكذا
 
- بناءاً على ذلك في نظركم ماذا يحدث عند اعطاء الملفات الإعتيادي (regular file) كل من هذه الصلاحيات؟ ماذا يحدث عند اعطاء المجلد (directory) كل من هذه الصلاحيات؟ ... وهكذا
   −
عند اعطاء الملف الإعتيادي (regular file) صلاحية القراءة ،فهذا الملف يمكن معرفة محتوياته لكن لا يمكن الكتابة عليه ؛وكذلك المجلد (directory) يمكن سرد محتوياته ولكن لا يمكن الكتابة عليه
+
عند اعطاء الملف الإعتيادي (regular file) صلاحية القراءة فقط ،فهذا الملف يمكن معرفة محتوياته ،لكن لا يمكن الكتابة عليه لأنه لا يحتوي على صلاحية الكتابة ؛وكذلك المجلد (directory) يمكن سرد محتوياته ،ولكن لا يمكن الكتابة عليه.
 +
 
 +
ويقوم الميسر بتطبيق هذا مع المتدربين بالتدريج للوصول الى هذه النتيجة ومناقشتها سوياً:<syntaxhighlight lang="bash">
 +
$ cat > file1.txt
 +
lorem ipsum
 +
# ctrl+d <- EOF character
 +
 
 +
$ chmod 400 file1.txt
 +
$ cat file1.txt
 +
lorem ipsum
 +
</syntaxhighlight>بينما عند اعطاء الملف الإعتيادي (regular file) صلاحية الكتابة فقط ،فهذا الملف يمكن الكتابة به ولكن لا يمكن معرفة محتوياته لأنه لا يحتوي على صلاحية القراءة.
 +
 
 +
ويقوم الميسر بتطبيق هذا مع المتدربين بالتدريج للوصول الى هذه النتيجة ومناقشتها سوياً: <syntaxhighlight lang="bash">
 +
$ chmod 200 file1.txt
 +
$ cat > file1.txt
 +
Hello, World!
 +
# ctrl+d <- EOF character
 +
 
 +
$ cat file1.txt
 +
Hello, World!
 +
 
 +
</syntaxhighlight>أما اذا اعطينا المجلد (directory) صلاحية الكتابة فقط فلا يمكن سرد محتوياته ولا فتحه للكتابة عليه.
 +
 
 +
ويقوم الميسر بتطبيق هذا مع المتدربين بالتدريج للوصول الى هذه النتيجة ومناقشتها سوياً:<syntaxhighlight lang="bash">
 +
$ chmod 200 directory1
 +
$ ls -l direcotry1/
 +
ls: cannot open directory 'directory1/': Permission denied
 +
$ mkdir directory1/directory2
 +
mkdir: cannot create directory 'directory1': Permission denied
 +
 
 +
</syntaxhighlight>وعند اعطاء الملف الإعتيادي (regular file) صلاحية التنفيذ فقط ،فهذا الملف يمكن فتحة ولكن لا يمكن الكتابة عليه ولا قراءة محتوياته.
 +
 
 +
ويقوم الميسر بتطبيق هذا مع المتدربين بالتدريج للوصول الى هذه النتيجة ومناقشتها سوياً:<syntaxhighlight lang="bash">
 +
$ chmod 100 file1.txt
 +
$ cat file1.txt
 +
cat: file1.txt: Permission denied
 +
$ cat >> file1.txt
 +
bash: file1.txt: Permission denied
 +
</syntaxhighlight>وأما عند اعطاء المجلد (directory) صلاحية التنفيذ فقط ،فهذا المجلد لا يمكن سرد محتوياته ولا الكتابة عليه.
 +
 
 +
ويقوم الميسر بتطبيق هذا مع المتدربين بالتدريج للوصول الى هذه النتيجة ومناقشتها سوياً:<syntaxhighlight lang="bash">
 +
$ ls -l directory1/
 +
ls: cannot open directory 'directory1/': Permission denied
 +
$ mkdir directory1/directory2
 +
mkdir: cannot create directory ‘directory1/directory2’: Permission denied
 +
</syntaxhighlight>ويمكن دمج الصلاحيات سوياً وانتاج مزيج منه وتطبيق ذلك مع المتدربين:<syntaxhighlight lang="bash">
 +
$ chmod 300 directory1/
 +
$ mkdir direcotry1/directory3
 +
mkdir: created directory 'directory1/directory3'
 +
$ ls -l directory1/
 +
ls: cannot open directory 'directory1/': Permission denied
 +
$ chmod 500 directory1/
 +
$ ls -l directory1/
 +
total 4
 +
drwxrwxr-x 2 adef adef 4096 Apr  9 22:01 directory3
 +
</syntaxhighlight>وهكذا...
 +
</blockquote>
 +
 
 +
==== الروابط الثابته واللينه Hard and soft links ====
 +
يسأل الميسر عن اذا ما اردنا ان نفتح ملف في المجلد 'home' الخاص بالمستخدم في مكان آخر ،ويحاول تقريب الصورة الى المتدربين ليكون المدخل لشرح الروابط الثابته واللينه.<blockquote>
 +
(إجابة استرشادية):
 +
 
 +
- كيف نقوم بالوصول الى ملف في المجلد 'home' الخاص بالمستخدم 'adef' من سطح المكتب مثلاً؟
 +
 
 +
عن طريق الروابط سواء كانت ثابته او لينه
 +
 
 +
- ما الفرق بين الروابط الثابته واللينه؟
   −
بينما
   
</blockquote>
 
</blockquote>
* التعرض للأوامر وتجربتها وإكتشاف نتيجتها
  −
* تقييم الطرق والادوات المستخدمة
  −
* يتم تجربة مجموعة من الصلاحيات وإكتشاف ما تقوم به
  −
  777  666  760    500  310  744  070    007
  −
* تغيير صلاحيات ملفات وتجربة الوصول اليها وتطبيق أوامر عليها مثل ls mv
  −
* تغيير صلاحيات مجلد و تجربة الوصول اليها وتطبيق أوامر عليها مثل ls cd mkdir
  −
* كتابة برنامج بسيط يعرض جملة علي الشاشة بلغة برمجة مترجمة (المنفذة تجميعياً) compiled ومرة اخري بلغة برمجة مفسرة interpreted وتغيير
  −
صلاحياتهم لمنع المستخدم من صلاحية التشغيل execute ومرة اخري من القراءة read وملاحظة الفرق بين نوعي البرامج مع نفس الصلاحيات
   
[[تصنيف:منهج نواة تقنية]]
 
[[تصنيف:منهج نواة تقنية]]
2

تعديل

قائمة التصفح