اذهب إلى المحتوى

لوحة المتصدرين

  1. محمد هاني صباغ

    • نقاط

      3

    • المساهمات

      95


  2. Mohamed Ibrahim36

    Mohamed Ibrahim36

    الأعضاء


    • نقاط

      1

    • المساهمات

      38


  3. حسام الدين محيسن

    • نقاط

      1

    • المساهمات

      49


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 04/16/15 في كل الموقع

  1. مقّدمة إذا كنتَ لا تمتلك خبرةً كبيرة في التعامل مع أنظمة لينكس، فربّما تكون مندهشًا من فكرة التحكّم بنظام التشغيل عبر سطر الأوامر. هنا، سنحاول شرح أساسيات فعلِ ذلك. لن يغطّي هذا الدّرس كل شيءٍ تحتاج معرفته للتعامل بفعالية مع نظام لينكس. ولكنّ من المفترض أن يعطيك أساسًا جيدًا للارتكاز عليه لكي تتمكن من استكشاف بقية الأمور بنفسك. سيُعطيك هذا الدّرس الأساسيات التي تحتاج أن تعرفها فقط قبل الانتقال إلى دليلٍ آخر. المتُطلّبات والأهداف من أجل المتابعة مع هذا الدّرس، ستحتاج إلى امتلاك الوصول إلى خادوم لينكس. إذا كنتَ تحتاج معلوماتٍ حول كيفية الاتصال بخادومك للمرّة الأولى، فيمكنك اتّباع هذا الدّرس حول كيفية الاتّصال بخادوم لينكس باستخدام SSH. قد تودُّ أيضًا امتلاك أساسيات فهم كيفية عمل الطرفيّة وكيف تبدو الأوامر في نظام لينكس. درسنا السابق هذا يغطّي أساسيات الطرفيّة، لذا فيجب عليك التحقق منه إذا كنتَ جديدًا على استخدام الطرفيّات. جميع المهام الموجودة في هذا الدّرس يُمكن إنجازها باستخدام حساب مستخدم عادي غير جذر (non-root) لا يمتلك صلاحياتٍ إدارية (حيث أننا لن نحتاجها). عندما تصبحُ جاهزًا للبدء، اتّصل بخادومك عبر SSH وتابع القراءة. دورة علوم الحاسوب دورة تدريبية متكاملة تضعك على بوابة الاحتراف في تعلم أساسيات البرمجة وعلوم الحاسوب اشترك الآن التنقّل والاستكشاف أهمّ المهارات الأساسية التي يجب عليك احترافها هي التنقّل في نظام الملفّات (filesystem) والحصول على فكرة عن الأشياء حولك. سنناقش الأدوات التي تسمح لك بفعل ذلك في هذا القسم. معرفة مكانك باستخدام الأمر pwd عندما تقوم بتسجيل الدخول إلى خادومك، فإنّه سيتم إرسالك عادةً إلى مجلّد المنزل (home directory) الخاص بحساب المستخدم الذي تستعمله. مجلّد المنزل هو عبارة عن مسارٍ مُعَدّ لمستخدمك لتخزين الملفات والمجلّدات. إنّه الموقع الذي تمتلك كامل السيطرة عليه في نظام الملفات. لمعرفة موقع مجلّد المنزل الخاص بك بالنسبة إلى بقيّة نظام الملفّات، يمكنك استخدام الأمر pwd. يقوم هذا الأمر بعرض المسار الذي نتواجدُ فيه حاليًا: pwd يجبُ أن تحصل على بعض المعلومات التي تبدو هكذا: /home/demo يتم تسمية مجلّد المنزل باسم المستخدم الذي يتبعُه، لذا ففي المثال السابق تلاحظ ما ستكون قيمة اسم مجلّد المنزل عندما تقوم بتسجيل الدخول إلى الخادوم باستخدام حسابٍ يُدعى demo . هذا المسار موجود داخل مجلد يُدعى /home ، والذي هو بدوره ضمن مسارٍ أعلى يدعى "الجذر (root)” ولكن يتم تمثيله بإشارة / واحدة. معرفة محتوى المجلّدات باستخدام ls الآن صرتَ تعرف كيفية عرض المسار الذي تتواجدُ فيه حاليًا، يمكننا الآن أن نعلّمك كيفية عرض محتويات مسارٍ معيّن. حاليًا، لا يمتلك مجلّد المنزل الخاص بك الذي رأيناه بالأعلى الكثير من الأمور بداخله لرؤيتها، لذلك سننتقل إلى مسارٍ أكثر امتلاءً بالملفّات لنستكشفه. قمّ بكتابة الأمر التالي في طرفيّتك للانتقال إلى هذا المسار (سنشرح تفاصيل الانتقال إلى مساراتٍ أخرى في القسم التالي). بعدها، سنستخدم الأمر pwd للتأكّد مما إذا كنّا قد انتقلنا بنجاح: cd /usr/share pwd /usr/share الآن أصبحنا في المسار الجديد، فلنلقي نظرةً على ما يوجد بداخله. لفعل هذا، يُمكننا استخدام الأمر ls: ls adduser groff pam-configs applications grub perl apport grub-gfxpayload-lists perl5 apps hal pixmaps apt i18n pkgconfig aptitude icons polkit-1 apt-xapian-index info popularity-contest . . . كما ترى، هناك العديد من العناصر بداخل هذا المسار. يمكننا إضافة بعض الأعلام الإضافية (flags) للأمر السابق للتعديل على سلوكه الافتراضي. كمثال، لسرد جميع المحتويات بشكلٍ أكثر تفصيلًا، سنستخدم العَلَم -l (اختصار لـlong output): ls -l total 440 drwxr-xr-x 2 root root 4096 Apr 17 2014 adduser drwxr-xr-x 2 root root 4096 Sep 24 19:11 applications drwxr-xr-x 6 root root 4096 Oct 9 18:16 apport drwxr-xr-x 3 root root 4096 Apr 17 2014 apps drwxr-xr-x 2 root root 4096 Oct 9 18:15 apt drwxr-xr-x 2 root root 4096 Apr 17 2014 aptitude drwxr-xr-x 4 root root 4096 Apr 17 2014 apt-xapian-index drwxr-xr-x 2 root root 4096 Apr 17 2014 awk . . . هذه الرؤيا تعطينا الكثير من المعلومات التي لم نعتد غالبًا على رؤيتها. تصف الكتلة الأولى (block) نوع الملفّ (إذا كان العمود الأول هو حرف "d” فحينها فالعنصر هو مجلّد، وإذا كان إشارة "-” فحينها يكون العنصر ملفًا عاديًا) والأذونات. يصفُ كلُّ عمودٍ منفصل مفصولٍ بمساحةٍ بيضاء عن غيره عددًا من المعلومات المختلفة مثل مالك الملفّ، المجموعة، حجم العنصر، تاريخ آخر تعديل واسم العنصر. سنقوم بتفصيل بعضٍ من هذه الأمور لاحقًا، ولكن الآن، يكفي أن تعرف أنّه بإمكانك عرض هذه المعلومات باستخدام عَلَم -l مع الأمر ls. لسرد جميع الملفّات بما في ذلك الملفّات المخفيّة، فسيجب عليك إضافة العَلَم -a . بما أنّه لا يوجد هناك ملفّات مخفية حقًا في المسار /usr/share ، فسيجب علينا الرجوع إلى مجلّد المنزل الخاص بنا لتجربة ذلك الأمر. يمكنك الرجوع إلى مجلّد المنزل عبر كتابة الأمر cd دون أي مُعطيات: cd ls -a . .. .bash_logout .bashrc .profile كما يمكنك أن ترى، هناك العديد من الملفّات المخفية في هذا المكان بالإضافة إلى كلٍ من . و .. واللذان يعتبران حرفين من نوعٍ خاص في نظام لينكس. ستجد غالبًا أنّه يتم تخزين ملفات الإعداد كملفات مخفيّة، كما في حالتنا هنا. بالنسبة إلى إشارة النقطة والنقطتين، فهما ليسا مجلّدين بالضبط، بل هما عبارة عن طريقة داخلية (method) للإشارة إلى مساراتٍ أخرى مرتبطة بالمسار الحالي. النقطة الواحدة تُشير إلى المسار الحالي، والنقطتان تشير إلى المسار الأبّ (parent directory) للمسار الحالي. سنشرح هذا الأمر في القسم التالي. التنقّل في نظام الملفّات باستخدام cd لقد قمنا بالانتقال بالفعل عبر مسارين مختلفين لتوضيح بعض خصائص ls في القسم السابق. فلنلقي جولةً أفضل على ذلك الأمر هنا. ابدأ عبر الرجوع إلى المسار /usr/share عبر كتابة التالي: cd /usr/share هذا مثالٌ لتغيير المسار الحالي عبر استخدام ما يعرف بالمسار المُطلق (absolute path). في لينكس، جميع الملفّات المجلّدات تقع تحت المسار الأكثر علوًا (top-most directory)، والذي ندعوه بمجلّد الجذر (root directory)، ولكن يُشار إليه بإشارة / واحدة. يقوم المسار المُطلق بتحديد موقع مجلّدٍ معيّن بالنسبة إلى هذا المسار الأكثر علوًا (مجلّد الجذر /). يسمحُ لنا هذا بالإشارة بطريقةٍ غير معقّدة إلى أيّ مكانٍ في نظام الملفّات. أيُّ مسارٍ مُطلق يجب أن يبدأ بإشارة / . الخيار البديل هو استخدام ما يُعرف بالمسارات المُرتبطة (relative paths). تقوم المسارات المُرتبطة بالإشارة إلى المسارات الموجودة على نظام الملفّات بالنسبة إلى المسار الحالي. هذه الطريقة عادةً تكون أسهل وأقصر بالنسبة إلى المسارات القريبة من المسار الحالي في شجرة الملفّات. يُمكن الإشارة إلى أيّ مسارٍ موجود ضمن المسار الحالي عبر تسميته دون الحاجة لإشارة / . يُمكننا الانتقال إلى المجلّد locale الموجود ضمن /usr/share (والذي هو مسارنا الحالي) عبر كتابة: cd locale يُمكننا أيضًا القفز خطوتين بدل خطوةٍ واحدة والانتقال إلى مسارٍ داخل مسارٍ آخر عبر توفير الجزء الثاني (الذي هو اسم المجلّد الثاني الذي سننتقل إليه) ووضعه بعد المسار الأول. كمثال، يُمكننا الوصول إلى المجلّد LC_MESSAGES الموجود داخل المجلّد en عبر كتابة الأمر التالي: cd en/LC_MESSAGES للرجوع إلى أعلى، وللانتقال إلى المسار الأب للمسار الحالي، يُمكننا استخدام حرف النقطتين الخاص .. الذي تحدّثنا عنه من قبل. كمثال، نحن الآن في المسار /usr/share/locale/en/LC_MESSAGES . للانتقال إلى أعلى بدرجةٍ واحدة، يمكننا أن نكتب: cd .. سيأخذنا هذا الأمر إلى المسار /usr/share/locale/en . من الاختصارات التي رأيتها بالسابق هو استخدام الأمر cd للرجوع إلى مجلّد المنزل الخاص بك بسرعة دون الحاجة لتوفير مساره المعيّن: cd pwd /home/demo لتعلّم المزيد حول كيفية استخدام هذه الأوامر الثلاثة، يمكنك مراجعة هذا الدّرس حول استكشاف نظام الملفّات في نظام لينكس. عرض الملفّات في القسم الأخير، تعلّمنا القليل حول كيفية التنقّل في نظام الملفّات. على الأرجح فإنّكَ رأيت بعض الملفّات أثناء استخدام أمر ls في المسارات السابقة. في هذا القسم، سنناقش طرقًا مختلفة يمكنك استخدامها لعرض الملفّات. على عكس الأنظمة الأخرى فإنّ نظام لينكس والأنظمة الأخرى الشبيهة بيونكس (Unix-like) تعتمدُ على استخدام الملفّات الصرفة (plain text files) في معظم أجزاء النظام. الطريقة الرئيسية التي نقوم من خلالها بعرض الملفّات هي عبر استخدام الأمر less. والذي ندعوه بـ"منشئ الصفحات (pager)”، لأنّه يسمح لنا بالتنقّل عبر صفحات ملفٍ معيّن، less هو عبارة عن تطبيقٍ سيستولي على شاشة الطرفيّة بأكملها أثناء عمله وسيبقى عاملًا إلى حين أن تقرر أنت إغلاقه. سنقوم بفتح الملفّ /etc/services ، والذي هو عبارة عن ملف إعداداتٍ يحتوي على معلومات الخدمات التي يعرفها النظام: less /etc/services سيتم فتح الملفّ في less ، مما يسمح لك بعرض جزءٍ من المستند بحيث يتوافق مع مساحة نافذة الطرفيّة: #Network services, Internet style # # Note that it is presently the policy of IANA to assign a single well-known # port number for both TCP and UDP; hence, officially ports have two entries # even if the protocol doesn't support UDP operations. # # Updated from http://www.iana.org/assignments/port-numbers and other # sources like http://www.freebsd.org/cgi/cvsweb.cgi/src/etc/services . # New ports will be added on request if they have been officially assigned # by IANA and used in the real-world or are needed by a debian package. # If you need a huge list of used numbers please install the nmap package. tcpmux 1/tcp # TCP port service multiplexer echo 7/tcp . . . للتمرير بين الصفحات، يُمكنك استخدام مفتاحيّ الأعلى والأسفل على لوحة مفاتيحك. للانتقال بصفحةٍ كاملة إلى الأسفل، يُمكنك إمّا أن تستخدم space bar أو زرّ "Page Down” على لوحة مفاتيحك، أو الاختصار CTRL + F. للرجوع إلى الأعلى، يمكنك إمّا أن تستخدم زرّ "Page Up” أو الاختصار CTRL + B. للبحث عن نصٍ معين في المستند، يمكنك كتابة إشارة / متبوعةً بالنصّ الذي تبحث عنه. كمثال، للبحث عن كلمة "mail”، سيجب علينا كتابة: /mail سيقوم الأمر السابق بالبحث عبر المستند عن كلمة "mail” ويتوقف عند أول نتيجةٍ متوفرة. للانتقال إلى نتيجةٍ أخرى، يمكنك استخدام مفتاح n الصغير (دون Caps Lock): n للرجوع إلى النتيجة السابقة، استخدام حرف N الكبير (مع Caps Lock): N عندما تريد الخروج من برنامج less، يمكنك ببساطة الضغط على حرف q: q صحيحٌ أننا قمنا بالتركيز على أداة less في هذا القسم، إلّا أنه يوجد العديد من الطرق الأخرى لعرض محتويات ملفٍّ ما. يقوم الأمر cat مثلًا بعرض محتويات الملفّ ويقوم بإرجاعك إلى موجّه الأوامر تلقائيًا. يقوم الأمر head افتراضيًا بعرض أول 10 سطورٍ من ملفٍ ما. أيضًا يقوم الأمر tail بعرض السطور الـ10 الأخيرة من ملفٍ ما. تقوم هذه الأوامر بعرض محتويات الملفّات بطريقة تجعلها مناسبة للاستخدام لنقلها عبر الأنابيب (piping) لبرامج أخرى. سنناقش هذا المفهوم في دليلٍ مستقبلي. جرّب الآن استخدام الأوامر السابقة لعرض محتويات الملفّ /etc/services . التّعامل مع الملفّات والمجلّدات تعلّمنا في القسم الأخير كيفية عرض الملفّات، في هذا القسم، سنقوم بتوضيح آلية التّعامل مع الملفّات والمجلّدات وإنشائها. إنشاء ملفّ باستخدام touch يمكن للعديد من الأوامر والبرامج أن تقوم بإنشاء الملفّات. الطريقة الأساسية لإنشاء الملفّات هي عبر الأمر touch. هذا الأمر سيقوم بإنشاء ملفٍ فارغ باستخدام اسم الملفّ المطلوب وموقعه المحدد. أولًا، يجب علينا التأكّد مما إذا كنّا في مجلّد المنزل الخاصّ بنا، بما أنّه المجلّد الذي نمتلكُ فيه صلاحيات حفظ الملفّات. فحينها يمكننا إنشاء ملفٍ يدعى file1 عبر كتابة: cd touch file1 الآن، إذا قمنا بعرض الملفّات الموجودة في مجلّد المنزل الخاصّ بنا، سنرى ملفّنا الجديد: ls file1 إذا استخدمنا هذا الأمر على ملفٍ موجود مسبقًا، فإنّه ببساطة سيتم تحديث وقت آخر تعديل على الملفّ الذي حاولنا إنشاءه (ولكن لن يتم الكتابة فوقه أو حذفه). هذا لن يفيدنا كثيرًا في مرحلتنا هذه. يمكننا أيضًا إنشاء أكثر من ملف في نفس الوقت. يمكننا أيضًا استخدام المسارات المُطلقة. كمثال، إذا كان اسم المستخدم الخاصّ بنا يدعى demo ، فحينها يمكننا كتابة: touch /home/demo/file2 /home/demo/file3 ls file1 file2 file3 إنشاء المسارات باستخدام mkdir هذا الأمر شبيهٌ بالأمر touch، يسمحُ لنا الأمر mkdir بإنشاء مساراتٍ (مجلّدات) جديدة فارغة. كمثال، لإنشاء مجلّد جديد ضمن مجلّد المنزل الخاص بنا ولندعوه test ، يمكننا ببساطة كتابة: cd mkdir test يمكننا أيضًا إنشاء مجلّدٍ داخل مجلّد test ولندعوه example مثلًا عبر كتابة: mkdir test/example لكي يعمل الأمر السابق، يجب على المسار test أن يكون موجودًا بالفعل. لإخبار mkdir بأنّه يجب عليه إنشاء أيّ مساراتٍ ضرورية في طريقه إلى إنشاء مسارٍ مطلوب، يمكنك استخدام الخيار -p معه. يسمحُ لك هذا بإنشاء مساراتٍ ومجلّدات متداخلة في خطوةٍ واحدة. يمكننا إنشاء هيكلة مجلّدات تبدو مثل some/other/directories عبر كتابة: mkdir -p some/other/directories سيقوم الأمر السابق بإنشاء مجلّد some أولًا، ثمّ other ثانيًا بداخله، وأخيرًا مجلّد directories بداخل هذين المجلّدين. نقل وإعادة تسمية الملفّات والمجلّدات باستخدام mv يمكننا تحريكُ ملفٍ ما إلى مسارٍ جديد عبر استخدام الأمر mv. كمثال، يمكننا نقل الملف file1 إلى داخل المجلّد test عبر كتابة: mv file1 test لاستخدام هذا الأمر، سيجبُ علينا إعطاءه جميع العناصر التي نرغبُ بنقلها بالإضافة إلى المواقع التي نريدُ نقلها إليها في النهاية. يمكننا نقلُ ملفٍ ما إلى مجلّد المنزل الخاص بنا عبر استخدام حرف النقطة الخاص . الذي يشير إلى مسارنا الحالي (حرف النقطة يشير للمسار الحالي، ونحن الآن في مجلّد المنزل)، يجب علينا أن نتأكّد مما إذا كنّا في مجلّد المنزل بالفعل، ومن ثمّ ننفذ الأمر: cd mv test/file1 . قد يبدو هذا الأمر مبهمًا قليلًا، ولكن يمكننا استخدام الأمر mv أيضًا لإعادة تسمية الملفّات والمجلّدات. في الواقع، نقل وإعادة تسمية الملفّات ليسا سوى مجرّد عمليتين تضبطان الموقع والاسم لعنصرٍ موجودٍ حالي. لذا، لإعادة تسمية الملفّ test إلى testing ، يمكننا كتابة: mv test testing ملاحظة: من المهمّ أن تُدركَ أنّ نظام لينكس لن يمنعك من القيام بإجراءاتٍ تدميرية له. إذا قمتَ بمحاولة إعادة تسمية ملفٍ ما واخترت اسمًا يوجد بالفعل لملفٍ آخر بنفس المسار، فحينها فإنّه سيتم الكتابة فوق الملفّ القديم والإبقاء على الملفّ الجديد الذي تقوم بنقله. لا يوجد هناك أيّ طريقة لاسترجاع الملفّ القديم في حال قمتَ بالكتابة فوقه. نسخ الملفّات والمجلّدات باستخدام cp مع الأمر mv، يمكننا نقل أو إعادة تسمية ملفٍّ ما أو مجلّد، ولكن لا يمكننا استنساخه. يُمكن للأمر cp أن يقوم بعملِ نسخةٍ جديدة من عنصرٍ موجودٍ حاليًا. كمثال، يمكننا نسخ الملف file3 إلى ملفٍ جديد يُدعى file4: cp file3 file4 على عكس العملية التي يقوم بها mv والتي بعدها لن يبقى ملفّ file3 موجودًا، فإنّنا الآن نمتلكُ كلًّا من الملفّين file3 و file4. ملاحظة: كما هو الحال مع الأمر mv، فإنّه يُمكن أيضًا أن يتم الكتابة فوق ملفٍ ما إذا لم تكن حذرًا حول اسم الملفّ الذي ستستخدمه كهدفٍ للعمليّة. كمثال، إذا كان الملفّ file4 موجودًا بالفعل بالمثال أعلاه، فإنّه سيتم استبدال محتوياته بشكلٍ كامل بمحتويات الملفّ file3. بهدفِ نسخ المجلّدات والمسارات، يجب أن تستخدم الخيار -r مع الأمر cp. هذا الخيار هو اختصار لكلمة "recursive”، حيثُ أنّه يقوم بنسخ المجلّد بالإضافة إلى جميع محتوياته الداخلية. من الضروري استخدام هذا الخيار عند نسخ المجلّدات، بغضّ النظر عمّا إذا كان المجلّد فارغًا أم لا. كمثال، انسخ المجلّد some إلى مجلّدٍ جديد يدعى again ، عن طريق الأمر: cp -r some again على عكس الملفّات، والتي يُمكن الكتابة فوقها في حال كانت موجودة بالفعل، فإنّه في حال كان المجلّد الهدف موجودًا بالفعل، فإنّه سيتم نسخ المجلّد أو الملفّ إلى داخل المجلّد الموجود حاليًا: cp file1 again هذا الأمر سيقوم بإنشاء نسخةٍ جديدة من ملفّ file1 ويضعها داخل مجلّد again. حذف الملفّات والمجلّدات باستخدام rm و rmdir يمكنك استخدام الأمر rm لحذف ملفٍ معيّن. ملاحظة: كنّ حذرًا بشدّة عند استخدام أوامر تدميرية مثل rm . لأنّه لا يوجد هناك أمرٌ استرجاعي لهذه الأفعال في حال حصلت، لذلك فمن الممكن أن تقومَ بتدميرِ ملفاتٍ مهمّة بالخطأ للأبد. لحذف ملفٍ عادي، طبّق: cd rm file4 بالمثلِ أيضًا، لحذف المجلّدات الفارغة، يمكننا استخدام الأمر rmdir. سينجحُ هذا الأمر فقط في حال كان المجلّد فارغًا. كمثال، لحذف مجلّد example الموجود بداخل مجلّد testing، يمكننا أن نكتب: rmdir testing/example إذا كنتَ ترغبُ في حذف مجلّد غير فارغ، فسيجبُ عليك استخدام الخيار -r مع الأمر rmdir، والذي سيقوم بحذف جميع محتويات مسارٍ معيّن مباشرةً، بالإضافة إلى المجلّد نفسه. كمثال، لحذف مجلّد again وكل شيءٍ بداخله، يمكننا أن نكتب: rm -r again مُجدّدًا، تجدرُ الإشارة إلى أن هذه العمليات دائمة. كنّ متأكدًا دائمًا أنّ الأمر الذي كتبته هو أمرٌ ترغبُ في تنفيذه حقًا. تحرير الملفّات حاليًا، صرنا نعرف كيفية التّعامل مع الملفّات ككائنات، ولكننا لم نتعلّم بعد كيفية تحريرها بشكلٍ فعلي وكيفية إضافة المحتوى إليها. الأمر nano هو واحدٌ من أبسط محررات النصوص المُستعملة عبر سطر الأوامر في نظام لينكس، وهو نقطة بدايةٍ عظيمة للمبتدئين. يقوم nano بتنفيذ الأوامر بشكلٍ شبيه ببرنامج less الذي تحدّثنا عنه من قبل، ولكنّه يحتلّ شاشة الطرفيّة بأكملها طوال فترة استخدامه. يُمكن للمحرر nano أن يقوم بفتح ملفاتٍ موجودة أو إنشاء أخرى. إذا قررتَ إنشاء ملفٍ جديد، يمكنك تمرير اسمه للمحرر nano الآن أو لاحقًا عندما تودُّ حفظ المحتوى الذي تريده. يمكننا فتح الملفّ file1 للتحرير عبر كتابة: cd nano file1 سيقوم برنامج nano بفتح الملفّ (والذي هو فارغٌ حاليًا). ستبدو الواجهة شيئًا كالتالي: GNU nano 2.2.6 File: file1 [ Read 0 lines ] ^G Get Help ^O WriteOut ^R Read File ^Y Prev Page ^K Cut Text ^C Cur Pos ^X Exit ^J Justify ^W Where Is ^V Next Page ^U UnCut Text ^T To Spell بالأعلى، لدينا اسم التطبيق واسم الملفّ الذي نقوم حاليًا بتحريره. في المنتصف، محتوى الملفّ الفارغ حاليًا. في الأسفل، يظهرُ عددٌا من المفاتيح التي يُمكن أن يتم ضغطها مع بعضها البعض لتنفيذ مهامٍ معيّنة للتحكم في المحرّر. لكلّ واحدٍ من هؤلاء، يعني الحرف ^ مفتاحَ CTRL. للحصول على المساعدة من المحرّر، اضغط على مفاتحي: Ctrl + G عندما تنتهي من تصفّح المساعدة، اضغط على Ctrl + X للرجوع إلى مستندك. قم بكتابة / تعديل أيِّ نصٍ تريده. في هذا المثال، سنكتبُ العبارتين التاليتين فقط: Hello there. Here Is some text. لحفظ ما كتبناه، يمكننا أن نضغط: Ctrl + O هذا هو الحرف O وليس الرقم صفر. سيسألك البرنامج عن تأكيد اسم الملفّ الذي تودّ حفظه: File Name to Write: file1 ^G Get Help M-D DOS Format M-A Append M-B Backup File ^C Cancel M-M Mac Format M-P Prepend كما ترى، تغيّرت الخيارات التي بالأسفل أيضًا. تعتمد هذه الخيارات على السياق، بمعنى أنّها ستتغير طبقًا لِمَا تحاولُ أن تفعله. إذا كان الملفّ file1 لا يزالُ ملفًا ترغبُ بالكتابة إليه، اضغط على مفتاح "Enter”. إذا قمنا بعمل بعض التغييرات الإضافية ورغبنا في حفظ الملفّ والخروج من البرنامج، فسنتمكّن من رؤية موجّه أوامرٍ مشابه. قم بإضافة سطرٍ جديد، ثمَّ حاول الخروج من البرنامج عبر كتابة: Ctrl + X إذا لم تقم بحفظ المحتويات قبل الخروج بعد عمل تغييراتك، فسيتم سؤالك عمّا إذا كنتَ تريد حفظها أم لا: Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ? Y Yes N No ^C Cancel يمكنك كتابة "Y” لحفظ التغييرات، "N” لرفضها والخروج، أو "Ctrl + C” لإلغاء عمليّة الخروج من البرنامج والعودة إليه. إذا اخترتَ الحفظ، فستحصلُ على نفسِ موجّه أوامر الملفّ الذي حصلتَ عليه من قبل، لتأكيد ما إذا كنتَ تريد حفظ التغييرات إلى نفس الملفّ. اضغط زرّ Enter لحفظ الملفّ والخروج من المحرّر. يمكنك رؤية محتويات الملفّ الذي أنشأته إمّا عبر برنامج cat لعرض محتوياته، أو برنامج less لعرضِه للقراءة. بعد عرضِ البرنامج باستخدام less ، تذكّر أنّه يجب عليك الضغط على زرّ q للرجوع للطرفيّة. less file1 Hello there. Here is some text. Another line. محرّرٌ آخر يمكنُ أن يتم توجيهكَ إليّه في شروحاتٍ مستقبلية هو vim أو vi . هذا المحرّر أكثر تطورًا وأكثر قوةً ، ولكنّ يتطلب الكثير لتعلّمه. إذا أخبركَ أحدهم باستخدام vim أو vi، فاستخدم nano عوضًا عن ذلك. إذا كنتَ ترغبُ بتعلّم المزيد حول كيفية استخدام vim ، فاقرأ هذا الدّرس حول كيفية البدء مع vim. دورة علوم الحاسوب دورة تدريبية متكاملة تضعك على بوابة الاحتراف في تعلم أساسيات البرمجة وعلوم الحاسوب اشترك الآن الخاتمة الآن، يجب أن تكونَ قد امتلكتَ أساسيات فهم كيفية التنقّل في خادومك العامل بنظام لينكس وكيفية عرض الملفّات والمسارات المتوّفرة. يجبُ أن تكون قادرًا أيضًا على معرفة أساسيات أوامر التعامل مع الملفّات والتي ستسمح لك بعرض، نسخ، نقل أو حذف الملفّات. أخيرًا، يجب أن تكون مرتاحًا مع بعض أساسيات تحرير الملفّات باستخدام محرّر nano. مع هذه المهارات القليلة، يجب أن يكون قادرًا على متابعة مشوارك في شروحاتٍ أخرى وتعلّم كيفية استخراج أكبر إمكانية متوفّرة من خادومك. في الدّرس التالي، سنناقش كيفية عرض وفهم الأذونات في لينكس. ترجمة -وبتصرّف- للمقال: Basic Linux Navigation and File Management.
    1 نقطة
  2. نُقدم لكم سلسلة مقالات تعليمية عن موضوع مُهم جدا لأصحاب المواقع الالكترونية على الانترنت وهو دراسة نِظام التحليل الرقمي (Digital Analysis) وتطبيقه بشكلٍ عَمَليّ باستخدام نظام (Google Analytics). الهدف من هذا المقال هو إعطائك الخلفية المعرفية اللازمة عن التحليل الرقمي وبعض مصطلحاته لكي تكون مهيأً لفهم وتطبيق خطواتٍ عملية بشكل سليم ومفهوم. لماذا يحتاج أصحاب المواقع إلى التحليل الرقمي لأداء مواقعهم؟تنقسم التحليلات الرقمية إلى قسمين: تحليل البيانات النوعية مثل: "نوعية الفئة المستهدفة للزوار من حيث الموقع الجغرافي".تحليل البيانات الكمية مثل: "حساب عدد زوار موقعك بالنسبة لفترة زمنية معينة".وتعتمد هذه التحليلات (Analytics) على نشاط موقعك على الويب، مُنافسة المواقع الأخرى وعلى فئتك المستهدفة من الزوار أو الفئة التي تريد أن تستهدفها، وذلك لتحسين أداء موقعك على الويب بشكل دائم ، لذلك فإن الفائدة الرئيسية من التحليلات الرقمية تكمن في إعطائك المعلومات الدقيقة و المُخصّصة عن سُلوك الزوار في موقعك حتى تتمكن من تحقيق النتائج و الأهداف التي تسعى إليها من خلال موقعك على الويب. من أين أبدأ؟ (تحديد هدف وطبيعة عملك)لكي تتمكن من التحليل السليم يجب أن تكون واضحاً في أهدافك، فلتبدأ بتحديدها بشكل عام، ثم تُقسّمها إلى أهداف فرعية، واعمل على تحقيقها بشكل تسلسلي (Step-By-Step) خطوة بخطوة، سنذكر لك أشهر خمس أهداف عامة لمعظم المواقع على شبكة الانترنت على حَسَبِ طبيعة عمل كل موقع كالتالي: مواقع تَختص بالتجارة الإلكترونية: الهدف منها بيع المنتجات أو الخدمات (مثل: Amazon أو Click Bank ). مواقع إنشاء قوائم العملاء المحتملين: الهدف منها هو جمع معلومات عن الزوار وتقديمها لموظفي المبيعات ليتواصلوا مع العملاء المحتملين، مثل: المواقع التي تَعرض استبيانات (Surveys) مطلوب تعبئتها أو التصويت (Vote) لحدث معين. مواقع ‏ناشري المحتوى: الهدف هو تشجيع الزوار لمشاركة محتوى الموقع بينهم وتكرار الزيارات عليه (مثل المدونات). المواقع المعلوماتية أو مواقع الدعم عبر الإنترنت: فإن مساعدة المستخدمين في العثور على المعلومات التي يحتاجونها في الوقت المناسب هي الأهمية القصوى لهم (مثل :المواقع الإخبارية). مواقع الشركات /المؤسسات أصحاب العلامات التجارية: الهدف الرئيسي هو زيادة الوعي والجذب والولاء لهذه المؤسسة. تُوجد إجراءات رئيسية على أي موقع ويب أو تطبيق جوّال تَرتبط بأهداف النشاط التجاري، وقد تشير الإجراءات إلى الهدف الذي تم تحقيقه تمامًا، على سبيل المثال، قياس التحويلات (Conversion Rate) والتحويلات هي عملية تحويل الزائر إلى عميل/زبون (Costumer)، مثل تحويلات لعمليات شراء تَمّت على موقع يختص بالتجارة الإلكترونية. تعتبر هذه تحويلات "قوية أو متفاعلة" لأن الزوار متفاعلون مع منتوجات الموقع، وقد تكون لبعض الإجراءات على موقع الويب مؤشرات سلوكية، كعدم قيام أحد العملاء بشراء المنتوجات وبالتالي لم تتحقق أهدافك الرئيسية تمامًا، والمتمثلة في عملية شِراء المنتوجات ، لكنه يقترب منها مثل: الاشتراك في القائمة البريدية (subscriber)أو الإشعارات لتلقي كل ما هو جديد عن موقعك عبر البريد الإلكتروني. وتُعد هذه تحويلات "متوسطة أو شبه متفاعلة"، و من المهم قياس كلٍ من التحويلات القوية أو المتوسطة ليكون لديك المزيد من البيانات السلوكية التي تُعينك على فهم التجارب و تُساعدك على تحقيق النتائج المناسبة لموقعك. ما هو أسلوب التحليل الأمثل؟بعد أن حددت هدفك وماذا تريد أن تُحلل، صَنّف الآن عملك إلى شرائح (segments) و قنوات تسويق (Channels) كي تتمكن من معرفة ما هي القناة المسؤولة عن الزيادة التي حدثت في عمليات الشراء. كما يُساعدك هذا على الاطلاع على شرائح بياناتك وفهم سبب أحد التغييرات التي قد تطرأ على بياناتك المُجمّعة. نظام تقسيم الشرائح هو : مجموعة فرعية من بيانات، على سبيل المثال: من بين المجموعة الكاملة من زوّار موقعك قد تتمثل إحدى الشرائح من الزوّار حَسب بلد معيّن أو مدينة معيّنة. وقد تتمثل شريحة أخرى من الزوّار الذين اشتروا منتجات نتيجة مشاهدة إعلان معيّن. ابدأ بتصنيف بياناتك على ورق، وإليك بعض الأمثلة التوضيحية على ذلك :يمكنك تصنيف بياناتك إلى شرائح (segments) حسب النقاط التالية : التاريخ والوقت: لمقارنة السلوك المختلف للزوّار الذين يزورون موقعك في أيام معينة من الأسبوع وساعات معينة من اليوم. الجهاز المستخدم: لمقارنة أداء الزوّار على أجهزة الحاسوب المكتبية والأجهزة اللوحية وأجهزة الجوّال. قناة التسويق: لمقارنة الاختلاف في أداء أنشطة التسويق المتنوعة. الموقع الجغرافي: لتحديد البلدان أو المناطق أو المدن ذات الأداء الأفضل. سمات العملاء: مثل عملاء دائمي الزيارة مقابل عملاء أصحاب الزيارة الأولى على الموقع (Web Site)، للمساعدة في فهم الأشياء التي تجذب عملاءك الذين يتسمون بالوفاء. خطوات ما قبل التنفيذ:اكتب أهداف نشاطك التجاري. حدد الاستراتيجيات والتكتيكات لدعم أهدافك. اختر المقاييس التي ستكون مؤشرات الأداء الرئيسية. حدد الطريقة التي ستحتاج إليها لتقسيم بياناتك. إنشاء خطة التنفيذ بعد تحديد متطلبات نشاطك في موقعك وتوثيق البيئة الفنية له، أنشئ خطة تنفيذ مخصصة لأداء التحليلات. عناصر يجب التركيز عليها في تحليلك:صفحة الوصول / صفحة الهبوط (Landing Pages): هي أول صفحة يَراها الزائر عند دخوله لموقعك (ليس شرطاً أن تكون الصفحة الرئيسية) . الإحالة (Referrals): هي المواقع التي جاء منها الزائر قبل دخوله لموقعك، قد تكون هذه الزيارة عبر محرك البحث أو إعلانات جوجل أو عن طريق شريك ما، لذلك عند محاولتك تطوير شبكة واسعة من الشركاء في الإنترنت (مواقع وشبكات صديقة)، من المهم أن تعرف تحديداً من هو الشريك الأساسي لك. إن معرفة مصدر الإحالة سيساعدك في فهم جمهورك ومن أين أتى، ويساعدك كذلك في وضع تصوّر أفضل للشريحة التي يُمكنك استهدافها وزيادة الوصول لك. الصفحات الأكثر زيارة: اعرف ما هي أكثر الصفحات زيارة في موقعك وما هي أكثر المقالات قراءة ، خذ هذه المعلومات و أعد صياغة المحتوى الخاص بك بشكل يناسب رغبات الزوّار. كيف أبدأ التنفيذ؟عن طريق الاستعانة بفريق تطوير الويب أو يمكنك القيام بتنفيذ الخطة بنفسك اذا كانت مهامك بسيطة، مع الأخذ بعين الاعتبار أن بعض التِقنيات لمواقع الويب الأخرى يُمكن أن تتطلب تخطيطًا إضافيًا ولا تنسى أبداً دور المحافظة على خطتك وتحسينها. فقد تتغير متطلبات نشاطك التجاري وبيئته الفنية بمرور الوقت وبدون فريق أو متابعة شخصية منك للمحافظة على خطة القياس، لن تتواكب بياناتك مع احتياجات تقاريرك، ولاشك أن نظام تحليلات جوجل "Google Analytics" هو من أفضل الأنظمة التحليلية على الاطلاق . معلومات مهمة عن Google Analyticsيَتكون نِظام تحليلات جوجل من أربع أشياء رئيسية وهي: Collection "جمع البيانات"Processing "المعالجة"Configuration " ترتيب وتكوين البيانات"Reporting " التقارير"كما هو مُوضّح في الصورة التالية: كيف يعمل Google Analytics؟في البداية يَتم جَمع البيانات "Collection" فيَستخدم بَرنامج Google Analytics شِيفرة صَغيرة من نوع Javascript لجمع المعلومات، يَجب عليك وضع هذه الشيفرة في كُل صفحة من الموقع ، أو إن كُنت تستخدم موقع متوافق مع Google Analytics كمدونات بلوجر "Blogger " أو قناة YouTube فإن شِفرة التتبع الرقمية الخاصة بحسابك على Google Analytics تفي بالغرض بوضع رقم الشيفرة في المكان المخصص لها في لوحة تحكم Blogger أو في إعدادات قناة Youtube وتكون على الشكل التالي: "UA-36457479-1" وعند وصول الزوار إلى موقع الويب الخاص بك، سوف تبدأ هذه الشِفرة بجمع قِطع مُختلفة من المعلومات حول كيفية تفاعل الزائر مع موقع الويب الخاص بك مثل جمع روابط "URL" للصفحات المعروضة على الزائر و جمع المعلومات من متصفح المستخدم مثل اللغة و اسم المتصفح، نظام تشغيل جهاز الزائر ومعرفة من أين دخل الزائر على الموقع، وهذا مهم جدا في التحليل والمسمى بمصادر الإحالة "referring source" وكل هذه المعلومات توضع على خادوم "Server" خاص بتحليلات Google لكي يتم معالجتها وهي المرحلة الثانية Processing كما في الشكل السابق التي يتم فيها تحويل البيانات الخام إلى بيانات أكثر تخصُصًا، مثالُ ذلك :أنه أثناء المعالجة يتم تصنيف نوع أجهزة الزوار الذين دخلوا من خلالها على موقعك هل كانت من هاتف محمول أم من أجهزة حاسوب، ثم تَذهب البيانات المعالجة إلى مرحلة إعدادات التكوين Configuration الخاصة بك، كإعداد المرشحات (Filters) إلى البيانات ، ويمكن أن تشمل استبعاد أنواع معينة من البيانات في التقارير الخاصة بك، مثل أن تقوم باستثناء البيانات من زوار الشركة الخاصة بِك ، مَع الأخذ بَعين الاعتبار بأن التكوينات التي قُمت بِتحديدها يَتم تخزينها في قاعدة البيانات، و من المهم أن تُلاحظ أنه لا يُمكن تغييرها بعد ذلك ،كما أنه يمكنك أن تُستخرج هذه البيانات على هيئة تقارير Reporting ليَتم عَرض تحليلاتك بالشكل المنهجي الذي تريده . ما هي المحاور والمقاييس التي يعمل بهاGoogle Analytics؟المحاور التي يعمل بها Google Analytics هي وصف خصائص الزوار مثل الموقع الجغرافي ومواقع الإحالة وأسماء صفحات موقك، أما المقاييس فهي إحصائيات رقمية تُساعدك على فهم سلوك الزوّار، يُمكن أيضا أن تكون حِساب المتوسطات، مثل مُتوسط ظهور عدد الصفحات للزوّار خِلال فترة زمنية على موقع الويب الخاص بك، يُمكنك أيضا ضبط Google Analytics لتتبع مُعدلات التحويل عندما يقوم الزوّار بإجراءات مثل عدد تسجيلات الدخول على الموقع" Signups " في رسالة إخبارية أو شراء منتج ما، وهناك عدة مقاييس مهمة يجب أن تعرفها وهي: مقياس الزوار (Visitors/Users): لحساب عدد الزوار الموقع خلال فترة زمنية محددة، ويُستخدم لمعرفة حجم الزوار الكلي للموقع ويمكن تقسيم الزوار إلى نوعان: زوار مُتردّدين على الموقع وزوار غير مُتردّدين . مقياس مدة جلسات الزوار على الموقع (Visits/Sessions): لحساب الفترة الزمنية التي قضاها الزوّار على صفحات موقعك ومن خلال هذا المقياس تفهم مدى جاذبية الزائر لصفحات موقعك ومَعرفة الصفحات الأكثر جاذبية للزوار. مقياس مشاهدات صفحات موقعك (Pageviews and events): لحساب عدد مشاهدات الصفحات لموقعك، ويستخدم لمعرفة أكثر المواضيع مشاهدة على موقعك لتعرف ما نوع المواضيع التي يحبها جمهورك. مقياس معدل ارتداد الزوار لموقعك (Bounce rate): هو النسبة بين العدد الكلي للزوار الذين شاهدوا صفحة واحدة فقط من الموقع على العدد الكلي لجميع زوّار الموقع ، ويجب أن تأخذ في عين الاعتبار نوع موقعك لفهم هذا المقياس بشكل صحيح، فمثلا موقع تحتوي صفحاته على تقنية Ajax وهي تقنية يتفاعل معها المستخدم من غير إعادة تحميل الصفحة "Refresh" فمن الطبيعي أن يكون معدل ارتداد مثل هذه المواقع أعلى بكثير من معدل ارتداد المواقع التي لا تستخدم تقنية Ajax . مقياس وقت عمليات الزوار "Time­based metrics": ويُستخدم لمعرفة الآتي: زمن التصفح ""time on page: الزمن التي تَمّت فيه مجموعة من تفاعلات الزوار على موقعك، ويُعرّف Google وقت تصفح الزائر للصفحة من خلال تسجيل وقت دُخوله وطرحه من وقت دخوله لصفحة أخرى. زمن التصفح = "وقت دخول الصفحة الأولى – وقت دخول الصفحة الثانية" زمن الزيارة "visit duration": يَختلف عن زمن التصفح ، وهو الفرق بين الوقت لأول تفاعل "interaction" للزائر على موقعك من وقت آخر تفاعل . زمن الزيارة = "التفاعل الأول للزائر على الصفحة – وقت آخر تفاعل على الصفحة" نستنتج من ذلك مدى أهمية التحليل الرقمي لأصحاب المواقع ومدى قوة ودقة نظام Google Analytics في التحليل الرقمي للمواقع، مما جعله أفضل الأنظمة التحليلية. من المهم أن نكون قد فهمنا آلية عمله والمقاييس التي يستند عليها بشكل جيد حتى نَعرف كيف نستفيد من هذا النظام ، ابدأ الآن بتحديد أهدافك التحليلية ولا تنسَ أن أسلوب التحليل الأمثل يكون بتصنيف البيانات إلى الشرائح والعناصر التي يجب التركيز عليها في التحليل: (صفحات الوصول – الإحالة – الصفحات الأكثر زيارة) .
    1 نقطة
  3. لينكس هو نظام تشغيلٍ متعدد المستخدمين مبني على مفاهيم يونكس (Unix) لملكيّة الملفّّات والأذونات (permissions) بهدفِ توفير حمايةٍ أفضل. إذا كنتَ تخطط لتحسين مهاراتك بلينكس فيجب عليك أن تمتلك فهمًا جيدًا لكيفية عمل ملكية الملفّّات والأذونات في لينكس. هناك العديد من التعقيدات عند التعامل مع ملكية الملفّّات والأذونات، لكننا سنحاول جهدنا لاستخلاص المفاهيم الأساسية المهمّة لفهم كيفية عملها سنتطرّق إلى كيفية عرض وفهم ملكية الملفّّات والأذونات في لينكس. إذا كنتَ تبحث عن دليلٍ حول كيفية تعديل الأذونات، فاطّلع على هذا الدّرس: مبادئ أذونات الملفات (File permissions) على لينكس. المتطلبات تأكّد من أنّك تفهم المفاهيم التي تم تغطيتها بالدروس السابقة في هذه السلسلة: مقدّمة إلى طرفية لينكس. أساسيات التصفّح في لينكس وإدارة الملفّّات. حول المستخدمين كما ذكرنا في المقدّمة، لينكس هو نظام متعدد المستخدمين. يجب علينا أن نفهم أساسيات مستخدمي ومجموعات نظام لينكس قبل الحديث عن ملكية الملفّّات والأذونات، لأنهما الكيانان اللذان ينطبق عليهما ملكية الملفّّات والأذونات. فلنبدأ بالحديث عن أساسيات ماهيّة المستخدمين أولًا. في لينكس، هناك نوعان من المستخدمين: مستخدمو النظام (system users) والمستخدمون العاديون (regular users)، بشكلٍ عام، مستخدمو النظام يتم استخدامهم لتشغيل العمليات غير التفاعلية (non-interactive processes) والعمليات التي تعمل بالخلفية (background processes) على النظام، بينما يتم استخدام المستخدمين العاديين لتسجيل الدخول إلى النظام وتشغيل العمليات التفاعلية. عندما تقوم بالولوج لأول مرّة إلى أيّ نظام لينكس، قد تلاحظ أن النظام يبدأ مع عدّة مستخدمين للنظام حيث يقوم هؤلاء المستخدمون بتشغيل الخدمات التي يعتمد عليها نظام التشغيل، وهذا الأمر طبيعي تمامًا. من الطرق السهلة لعرض جميع المستخدمين المتوفّرين على النظام هي عرض محتويات ملفّّ etc/passwd/. كلّ سطر في هذا الملفّّ يحتوي معلوماتٍ حول مستخدمٍ واحد، بدءً باسم المستخدم الخاص به (الاسم قبل إشارة ":” الأولى). يمكنك طباعة محتويات ملفّّ passwd عن طريق الأمر التالي: cat /etc/passwd المستخدم الجذر بالإضافة إلى النوعين السابقين للمستخدمين، هناك "المستخدم الجذر" أو ما يعرف بـSuperuser أو root user، وهو يمتلك القدرة على الكتابة فوق أي تقييدات لأذونات ملكية الملفّّات أو تعديلها. بشكلٍ آخر، هذا يعني أن المستخدم الجذر يمتلك القدرة على الوصول إلى أيّ شيءٍ على خادومه الخاص. حيث يتم استخدام هذا المستخدم لتطبيق التغييرات المتعلقة بالنظام بأكمله، ويجب إبقاء هذا المستخدم آمنًا. من الممكن أيضًا أن يتم إعداد حسابات مستخدمين آخرين تمتلك صلاحيات "المستخدم الجذر". في الواقع، من أفضل التدربيات الممكن القيام بها هو إنشاء مستخدمٍ عادي يمتلك صلاحيات sudo لإدارة مهام النظام. حول المجموعات المجموعات هي تجميعات لـ0 مستخدمين أو أكثر. ينتمي المستخدم عادةً إلى المجموعة الافتراضية ويمكن أيضًا أن يكون عضوًا في أيٍّ من المجموعات الأخرى على الخادوم. من الطرق السهلة لعرض جميع المجموعات المتوفّرة على الخادوم والأعضاء بداخلها هي الاطّلاع على ملفّّ etc/group/. لن نغطّي أساسيات إدارة المجموعات في هذا المقال، ولكن يمكنك تطبيق هذا الأمر في حال كنتَ فضوليًا عن مجموعاتك: cat /etc/group الآن صرتَ تعرف ماهيةَ المستخدمين والمجموعات، فلنتحدّث عن ملكية الملفّّات والأذونات. عرض ملكية الملفات والأذونات في لينكس، كلّ الملفّّات تعتبر مملوكة من طرف مستخدمٍ واحد ومجموعةٍ واحدة، وكلّ ملفٍّّ يمتلك أذونات الوصول الخاصة به. فلنأخذ لمحة على كيفية عرض أذونات الملفّّات وملكيّتها. الطريقة الأكثر شيوعًا لعرض أذونات ملفٍّّ ما هي باستخدام الأمر ls مع خيار السرد الطويل (long listing option)، كمثال: ls -l myfile . إذا كنتَ تريد عرض أذونات جميع الملفّّات الموجودة في مسارك الحالي، فقم باستخدام الأمر بدون أيّ معامِلات مثل: ls -l تلميح: إذا كنتَ في مسار المنزل الخاص بك وكان فارغًا، ولم تقم بإنشاء أي ملفّّات لعرضها بعد، فيمكنك متابعة العملية عن طريق سرد محتويات المسار etc/ باستخدام هذا الأمر: ls -l /etc بالأسفل تجدُ مثالًا على لقطة شاشة لِمَا يُمكن للخرج أن يكون، مع تسميات كلِّ عمودٍ من الخرج: لاحظ أنّه يتم سرد وضع كلّ ملفّّ، المالك، المجموعة والاسم الخاصّين به. باستثناء عمود وضع الملفّّ (file's mode) فإنّه من السهل فهم جميع أجزاء الخرج. للمساعدة في شرح جميع هذه الحروف والرموز، فلنقم بتقسيم عمود الوضع (Mode column) إلى مكوناته الأساسية. فهم وضع الملفات للمساعدة في فهم ما تعنيه تلك الحروف والرموز، ألقِ نظرة على هذه الصورة التوضيحية التي تشرح ماهية "الوضع" أو الـ"mode” الخاص بأول ملفٍّّ من المثال أعلاه: نوع الملفات في لينكس، هناك نوعان أساسيان من الملفّّات: عادي وخاص. يتم تحديد نوع الملفّّ عن طريق أول حرفٍ من الوضع الخاص به. في هذا الدليل سنشير إلى هذا عن طريق استخدام مصطلح "حقل نوع الملفّّ". يُمكن أن يتم التعرف على الملفّّات العادية عن طريق شَرْطَة hyphen ( - ) في حقل نوع الملفّّ الخاص بها. الملفَّّات العادية هي مجرد ملفَّّات صرّفَة تحتوي على بيانات. يتم تسميتها بالملفّّات "العادية" لتمييزها عن الملفّّات الخاصة. الملفّاّت الخاصّة هي الملفّات التي تمتلك محرف غير شَرْطَي (non-hyphen character) مثل الحروف العادية في حقل نوع الملفّ الخاصة بها، ويتم معاملتها من جانب نظام التشغيل بطريقةٍ مختلفة عن الملفّاّت المحلّية. المحرف الذي يظهر في حقل نوع الملفّ يحدّد نوع الملفّ الخاص. مثل المجلّدات (folders)، وهي الملفّاّت الخاصة الأكثر شيوعًا من بين الملفّاّت الخاصّة. يتم التعرّف على المجلّدات عن طريق محرف d الذي يظهر في حقل نوع الملفّ الخاصّ بالمجلّد (مثل لقطة الشاشة السابقة). هناك أنواعٌ أخرى من الملفّاّت الخاصّة ولكنّها ليست أساسية لِمَا سنتعلّمه هنا. أصناف الأذونات نعلمُ من الرسم البياني السابق أنّ عمود الوضع يحدد نوع الملفّّ، متبوعًا بثلاثة أصناف (classes) من الأذونات: المستخدم (المالك)، المجموعة والآخرون. ترتيب هذه الأصناف ثابت على جميع توزيعات لينكس. فلنلقِ نظرة على الأصناف التي ينتمي إليها كلّ نوعٍ من المستخدمين: المستخدم (User): مالك الملفّ (owner) ينتمي إلى هذا الصنف. المجموعة (Group): أعضاء مجموعة الملفّ ينتمون إلى هذا الصنف. الآخرون (Other): أيُّ مستخدمين آخرين ليسوا جزءًا من صنفيّ المستخدم أو المجموعة فهم ينتمون إلى هذا الصنف. قراءة الأذونات الرمزية الشيء التالي الذي من الواجب الاهتمام به هو تشكيلة المحارف الثلاثة الخاصّة بوضع الملفّ، لأنها هي التي تقوم بتحديد الأذونات الخاصّة بالملفّ، بشكلٍ رمزي (symbolic) يمتلكها كل ملفّ. يتم تمثيل أذونات الكتابة، القراءة والتنفيذ في كلِّ تشكيلةٍ ثلاثية (triad) على النحو التالي: القراءة: يتم تمثيلها بحرف r بالموقع الأول. الكتابة: يتم تمثيلها بحرف w بالموقع الثاني. التنفيذ: يتم تمثيله بحرف x بالموقع الثالث. في بعض الحالات الخاصّة، يمكن أن يكون هناك حرفٌ آخر هنا. عندما يتم وضع شَرْطَة ( - ) في أي موقعٍ من هذه المواقع، فهذا يعني الإذن المعين ذاك ليس متوفرًا لهذا الصنف. كمثال: إذا كانت التشكيلة الثلاثية للمجموعة المالكة لملفٍّ معين هي: --r ، فهذا يعني أن الملفّ هو قابل للقراءة فقط لتلك المجموعة المتصلة بالملفّ. فهم قراءة، كتابة وتنفيذ الملفات الآن صرتَ قادرًا على قراءة الأذونات الخاصّة بكلّ ملفّّ، وعلى الأرجح فإنّك الآن تريد معرفة مالذي يسمح كلّ نوعٍ من أنواع الأذونات للمستخدمين أن يفعلوا. سوف سنشرح كلّ إذنٍ بشكلٍ منفصل، ولكن عليك أن تتذكر أنّه غالبًا ما يتمُ استخدام خليط من هذه الأذونات مع بعضها البعض للسماح بوصولٍ معين إلى هذه الملفّات والمسارات من قبل المستخدمين. إليك شرحًا بسيطًا إلى نوع الوصول الذي يمنحه كلٌّ نوعٍ من الأذونات للمستخدمين. 1- القراءة يسمحُ إذن القراءة لملفٍّ عادي أن يتم عرضه من قبل المستخدم لمشاهدة محتويات الملفّ. لمجلد أو مسار، يسمح إذن القراءة لمستخدمٍ أن يقوم بعرض أسماء الملفّات الموجودة بتلك المجلدات أو المسارات. 2- الكتابة يسمحُ إذن الكتابة لملفٍّ عادي أن يتم تعديله أو حذفه من قبل المستخدم. لمجلدٍ أو مسار، يسمح إذن الكتابة بأن يتم حذف المجلد أو المسار وتعديل محتوياته (إنشاء، حذف وإعادة تسمية الملفّات الموجودة بداخله) وتعديل محتويات الملفّات التي يمكن قراءتها من قبل المستخدم. 3- التنفيذ يسمح إذن الكتابة بأن يتم تنفيذ ملفٍّ من قبل المستخدم (يجب على المستخدم أن يمتلك إذن القراءة أيضًا). أذونات التنفيذ يجب أن يتم إعطاؤها للبرامج التنفيذية وسكربتات الشلّ (shell scripts) قبل أن يتمكّن المستخدم من تشغيلها. لمجلدٍ أو لمسار، يسمح إذن التنفيذ بالوصول إلى البيانات الوصفية (metadata) الخاصة بالملفّات الموجودة بداخله (مثل الأمر cd أو ls -l). أمثلة على أوضاع الملفّات والأذونات الآن وبعدما صرتَ قادرًا على قراءة وضع الملفّات وفهم معنى إذنِ كلِ واحدٍ منها، فسوف نتطرّق إلى بضعة أمثلة لأوضاعٍ شائعة للملفّات مع شرحٍ بسيط حولها: -rw-------: تمثّل ملفًّا قابلًا للوصول فقط من قبل مالكه. -rwxr-xr-x: تمثّل ملفًّا قابلًا للتنفيذ من قبل جميع المستخدمين على النظام. -rw-rw-rw-: تمثّل ملفًّا قابلًا للتعديل من قبل جميع المستخدمين على النظام. drwxr-xr-x: تمثّل مسارًا يمكن لجميع المستخدمين على النظام الوصول إليه وقراءته. drwxrwx---: تمثّل مسارًا قابلًا للتعديل (بالإضافة إلى محتوياته) من قبل مالكه والمجموعة التي ينتمي إليها. drwxr-x---: تمثّل مسارًا يمكن الوصول إليه من قبل مجموعته. كما تلاحظ، عادةً، مالك الملفّ يتمتّع بغالب الأذونات الخاصة بالملفّ مقارنةً مع الصنفين الآخرين. عادةً، سترى أنّ صنفيّ "المجموعة" و "الآخرون" يمتلكان أذونات فرعية فقط من أذونات مالك الملفّ (مساوية لها أو أقل). هذا أمرٌ منطقي لأن الملفّات يجب أن تكون قابلة للوصول فقط من طرف المستخدمين الذين يحتاجون الوصول إليه لسببٍ معيّن. شيءٌ آخر لملاحظته هو أنّه وعلى الرغم من أنّه هناك العديد من تشكيلات الأذونات الممكنة، فإنّ عددًا محدودًا منها فقط قد يكون استخدامها منطقيًا في حالاتٍ معيّنة. كمثال فإنّ أُذنيّ الكتابة والتنفيذ غالبًا ما يتم إلحاقهما بإذن القراءة، لأنّه سيكون من الصعب تعديل، ومن المستحيل تنفيذ ملفٍّ لا تستطيع قراءته. تعديل ملكية الملفات والأذونات للإبقاء على هذا الدليل بأبسط ما يمكن، لن نتطرف إلى كيفية تعديل ملكيّة الملفّات والأذونات هنا. الخاتمة يجب أن تكون الآن قد امتلكت معرفة جيّدة حول كيفية عمل ملكيّة الملفّات والأذونات في نظام لينكس. إذا كنتَ تحبّ تعلم المزيد عن أساسيات لينكس، فمن المستحسن بشدّة أن تقوم بقراءة الدّرس القادم من هذه السّلسلة والذي سيكون حول إعادة توجيه الإدخال/الإخراج في لينكس. ترجمة -وبتصرّف- للمقال: An Introduction to Linux Permissions.
    1 نقطة
  4. ربما تعتقد أنك من خلال العمل الحر فقد ملكت الدنيا بين يديك أو العكس. تفكر باليوم الذي تجد تلك الوظيفة الروتينية المتكررة المهام يوميًا وبراتب شهري ستتقاضاه حتى لو لم تنجز عملك كما يجب، إذا كنت من أولئك الذين ينظرون لنصف الكوب الفارغ فحتمًا لن تسعد بعملك، ولا حتى أنت من تنظر لنصف الكوب الممتلئ فكلاكما بالنهاية خاسر. لا شيء بالنهاية جيد على الإطلاق أو سيء على الإطلاق إنما مقارنته بالنسبة لاحتياجاتك وظروفك وكذلك تطلعاتك وطموحاتك هو ما يصنع الفارق بحياتك، معرفة مميزات الشيء وعيوبه من الأمور التي يجب أن تساعدك على اتخاذ القرار للعمل كمستقل والتغلب على العوائق التي ستقابلك نتيجة هذا القرار. العمل الحر بالنسبة للشباب بالجامعات فرصة عظيمة لتنمية قدراتهم واكتساب بعض الخبرة حتى قبل التخرج والخروج لمواجهة ظروف الحياة، لكن بالنسبة لشاب يبدأ حياته ولم يعمل من قبل فالاختيار ربما يكون صعبًا بعض الشيء، كذلك لرجل يعول أسرة هل من الممكن أن يتجه للعمل كمستقل ويخاطر بوظيفته لنتعرف على مميزات العمل الحر وعيوبه لنقرر.. مميزات العمل كمستقل1- أنت شركة بحد ذاتهاليس لك رئيس عمل حتى يتحكم بمصيرك بالشركة، لا أحد يتابعك، لا يوجد حرفيًا أي موظف أعلى منك ليوجهك، القرار بالنهاية لك في كل ما يختص بعملك وليس بيد رئيس غيرك أنت، أنت الذي تعمل على كل المهام والمشاريع التي توكل إليك، أنت الذي تقوم بمهام التسويق لنفسك وأعمالك، الماليات وحساب الأرباح من الذي يقوم بها؟ المدير المالي..نعم ولكن احزر من يكون. يمكنك أن تعتبر نفسك شركة مصغرة، كل القرارات تعود إليك بالنهاية، أنت سيد قرارك ولا أحد يتحكم بمصير عملك، بالنسبة لشخص يعمل بوظيفة روتينية فأنت مجرد صورة خيالية ليست موجودة بالوجود. 2- البدء بأقل المصادر المتاحةبما أنك تقرأ هذا المقال فأنت تمتلك على الأقل اتصالًا بالإنترنت بشكل ما، لكن هل فكرت أنه من المُمكن أن يكون وسيلة لمصدر دخل تعيش منه وتعيل أسرتك أو تصرف منه على نفسك، أو ربما حتى تدخر منه مالًا للمستقبل.. كل ما تحتاجه لتعمل كمستقل هو جهاز حاسوب لتعمل عليه واتصالًا بالإنترنت، في حال كانت لديك الخبرة بأي مجال فهذا كل ما تحتاجه لتبدأ بالعمل عبر منصة "مستقل"، لا تحتاج لواسطة للحصول على وظيفة، ولا تحتاج لأن تصرف أموالك على السفر والانتقال لمكان الشركة التي تعمل بها. إذا كنت طالبًا فيمكنك اختيار مجال من مجالات العمل عبر الإنترنت وتعلمه واحترافه جيّدًا، لتبدأ بعد ذلك بالعمل على المشاريع التي ستصقل مهاراتك وتدفع بحياتك المهنية للأمام، ستكون بغنى عن قراءة الوظائف الخالية بالصحف الحكومية يوميًّا، أو التودد لبعض الأشخاص للحصول على أي وظيفة براتب شهري لا تناسب مهاراتك. 3- مقابل مادي أفضلالمقابل المادي في العمل الحر أفضل بكثير من المقابل لقاء وظيفة ثابتة وذلك لعدة أسباب، منها على سبيل المثال فرق العملة، فبالنسبة لبعض البلدان المستوي الاقتصادي ومستويات الدخل فيها متدني، يكون فارق العملة هو ما يمثل فارقاً ضخما، فـ 5 دولارات في مصر شيء لكن بالإمارات أو الولايات المتحدة لا شيء، وسيكون المقابل المادي أفضل نسبيًّا من التعامل بالعملات المحلية لسوء الأحوال الاقتصادية. كذلك مع العمل والخبرة ربما تستطيع العمل على أكثر من مشروع في وقت واحد، ما سيزيد من المردود المادي بالطبع ، أما إذا كنت بوظيفة ثابتة فإن راتبك ثابت لا يزيد، أو حتى ربما يزيد بالتقادم في بعض الأحوال وانتظار الحوافز ومكافآت المناسبات. 4- حرية الاختيارستستطيع اتخاذ قرارك بنفسك، والاختيار بين المشاريع التي تنفذها والعملاء الذين ستتعامل معهم، إذا لم يعجبك المشروع تستطيع بكل سهوله رفضه والعمل على مشاريع أخرى تقتنع بها، يمكنك اختيار عدم التعامل مع العملاء وأصحاب العمل الذين لا ترتاح لهم كذلك. ميزة الاختيار أنها ستجعلك أنت من تقرر أيّ المشاريع يمكن أن يفيدك على المستوى المادي أو الخبرة، وهو ما لن تجده بالعمل بوظيفة ثابتة تقوم بالمهام الموكلة إليك من قبل مديرك ورؤسائك في العمل. 5- المرونة والتكيّفمن مميزات العمل الحر كذلك المرونة في التحرك والسفر والتنقلات، يمكنك العمل الحر من أي مكان ولست مُقيّدًا بأماكن عمل الشركة، طالما تمتلك حاسوبك والإنترنت فيمكنك السفر إلى أي مكان ومباشرة عملك منه، من خلال الوظيفة الثابتة ربما تقضي حياتك العملية كلها بمبنى واحد. التنقل الوحيد به هو ما بين الأدوار الأرضية والعلوية. القدرة على التكيف مع أي مهام أو مخاطر جديدة، وهي ميزة كافية لتعودك العمل تحت الضغوط والقدرة على ابتكار حلول جديدة عند مواجهة أي عوائق تقابلك، وهي ميزة ستكتسبها مع الخبرة والوقت ربما تعرف قيمتها لاحقًا، بعد أن تواجه مشاكل العمل الحر الذي سنسردها. 6- القدرة على التّطور وتنمية المهاراتسيتيح لك العمل كمستقل القدرة على التطور وتنمية مهاراتك أولاً بأول فهي مسألة وجودية بالنسبة لك، ويرجع ذلك لكمّ المنافسة بين المستقلين لإثبات قدراتهم على إنجاز العمل بالوقت والجودة المحددة، فبدخولك العمل الحر فقد وضعت نفسك على حافة الخطر التي ستجعلك تعمل بإتقان وتزود من مهاراتك على قدر المستطاع لئلا تقع من عليها. على قدر المشاريع التي ستعمل بها والجهد الذي ستبذله ستُصقِل مهاراتك وتصبح مُحترفًا ربما في فترة يسيرة، فالتطور والنمو المهني لا يعتمد بأي شكل على عدد السنوات التي تقضيها بالوظيفة أو ما يسمى في العمل الثابت بالأقدمية. 7- تطوير شبكة من العلاقات الجيدةمرونة العمل الحر وحرية اختيار المشاريع والعملاء ستتيح لك التعرف على الكثير من الأشخاص وأصحاب المشاريع من أقطار وثقافات مختلفة، ربما لا تجدها بمكان آخر وهو ما يزيد من مخزونك المعرفي والقدرة على التفاوض ومهارات التواصل، كما سيضيف لك رصيدًا جيّدًا من أصحاب العمل الذي من الممكن أن تتعامل معهم أكثر من مرة إذا كان لك معهم سابق خير. هذه معظم مميزات العمل كمستقل ربما يوجد أمور أخرى تريد مشاركتنا بها من قبيل خبرتك وتجاربك الخاصة. الآن هل أنت مستعد لقراءة السطور التالية لمعرفة الجانب المظلم للعمل كمستقل، تذكر فقط أن معرفتها سيساعدك على التغلب على تلك العوائق التي ستقابلك أثناء رحلتك بالعمل الحر.. مساوئ العمل كمستقل1- التيه والتّخبط بالبدايةمع الحرية وامتلاك زمام القرار تأتي المسؤولية الكبيرة، بداية العمل كمستقل لمن لم يعمل سابقًا أو من ترك وظيفته تعتبر أصعب المراحل التي لا يعرف من خلالها كيف يمكنه العمل، كيف يؤسس لنفسه نمطًا مُعيّنًا، بيئة العمل ومراقبة الأداء كل هذا يعود إليه بالنهاية. ستمر عليك أوقات الشك بقرار العمل كمستقل كالأشباح كلما واجهتك مشكلة أو عقبة خصوصًا في البداية، ستفكر أكثر من مرة لتبحث عن وظيفة ثابتة تريحك من أعباء المسؤولية الكبيرة الناتجة عن العمل كمستقل خاصة لو كانت لديك عائلة وزوجة، لكن ربما معرفة أنه يوجد الكثير من المستقلين مروا بهذه الفترة وتجاوزوها يهون عليك قليلاً. هذه الفترة تعتبر عنق الزجاجة بالنسبة للمستقل حتى يطور لنفسه نظامًا ونمطًا يوميًّا للعمل والالتزام، إذا نجحت بذلك فستشعر بالفعل بلذة انتصارك على نفسك أولاً ثم بمتعة أن تكون رئيس نفسك في كل شيء. 2- الفصل بين العمل والراحةسهل أن تفصل بين العمل وأوقات الراحة بالوظيفة الثابتة، مسألة العمل في أي وقت ومكان ستصعب عليك الفصل بينهما، تأتي أيام عليك لتعمل بمنتصف الليل وتأتي أيام تقضي وقتك كله ما بين مشاهدة التلفاز وتصفح الإنترنت وربما التسكع مع بعض الأصدقاء قليلًا. عندما يأتي وقت العمل ستقول لنفسك "ربما بضع دقائق لأستريح ثم أبدأ"، لتمر الساعات دون إنجاز أي مهمة بالمشروع، أو ربما العكس تنهمك بالعمل ولا تدري متى تأخذ قسطك من الراحة. لذلك فإن الفصل بين بيئة عملك وبيئة راحتك من الأمور التي يجب أن تهتم حتى تساعد نفسك على العمل والتركيز على إنجاز كل المهام. 3- تقلّب الدخل الماديعلى حسب المشاريع التي تعمل بها بالشهر سيمكنك توفير دخل جيد، لكن ستأتي فترات ربما لا تحصل على أي مشروع فيحدث أن يقل الدخل، الحصول على العملاء والمشاريع من الأمور المُتقلّبة بالعمل الحر لذا فإن الاعتماد على طريقة واحدة للحصول على الدخل قد لا تؤتي ثمارها. إذا كان مجالك يسمح بالعمل على أشياء لبيعها فيما بعد فهذه طريقة جيدة حتى تحافظ على دخلك ولو قليلًا، كذلك العمل عن بعد مع بعض الفرق قد يشكل طريقة أخرى للحفاظ على ثبات الحالة المادية لك، المشكلة واقعية والكثير يعاني منها لذا فجهّز نفسك من الآن لابتكار وتوفير وسائل إضافية للدخل المادي كبيع المنتجات الرقمية أو بيع الدورات التعليمية أو العمل على مشاريع خاصة. 4- حياة اجتماعية سيئةإذا كنت تباشر عملك في المنزل فبطبيعة الحال ستتعرض لكثير من المواقف والتعاملات الاجتماعية التي قد تشتتك عن العمل أو حتى لا تحترم طريقة عملك، على الناحية الأخرى قد تصبح مُنعزلًا بشكل مخيف عن عائلتك وأصدقائك إذا لم تستطع التحكم بوقتك وبيئة العمل. الإنسان بطبيعة الحال كائن اجتماعي، لذا حاول أن تتواصل مع معارفك وأصدقائك بين الحين والآخر، حاول كذلك تجنب المواقف التي ستضايقك والناتجة أساسًا عن الثقافة المغلوطة بالوطن العربي عن العمل الحر والمستقلين. 5- المخاطرة والخوف من التغييرالتغيير هو ما يجعل الإنسان يكتشف نفسه وقدراته، لكن التغيير ليس سهلًا، الكثير يخشاه، لا يريده، يستغشي بالجهل خوفاً منه، فكثير من الناس لا يريد امتلاك خيارات حياته حتى لا يلوم نفسه على الفشل الذي ربما يواجهه، الخوف من المخاطرة وترك منطقة الراحة الخاصة بك من أصعب مساوئ العمل كمستقل. فقط من يستطيع المغامرة هو من يمكنه أن يكتشف تلك الأماكن التي لم يصل إليها أحد من قبل إذا كنت تحب الراحة وعدم المخاطرة فالأمر سيصبح صعبًا عليك،المخاطرة والتغيير هو ما سيدفعك للأمام، عندما تتقبله سيصبح معلمك الأول بحياتك المهنية. هذه أهم المساوئ والمميزات التي قد تواجهك بالعمل كمستقل، إذا كنت عقدت العزم بالعمل كمستقل تمتلك قرارك فيجب أن تعد العدة لما ستواجهه، تخيل نفسك بطل للعبة فيديو عليك أن تلتقط جميع الأسلحة بطريقك حتى تحرز أعلى النقاط ولا تنسى أن تنظر للخريطة أعلى الشاشة حتى لا تضل الطريق.
    1 نقطة
  5. DevOps هي عبارة عن اختصار مشترك لكلمتيّ Development و Operations ، وهي بشكلٍ عام تعني مفاهيم تقنية متعلقة بتطوير الأنظمة والبرمجيات واستخدامها وتطويعها، يمكنك مراجعة المزيد هنا: http://theagileadmin.com/what-is-devops/
    1 نقطة
×
×
  • أضف...