شرح أمر cd وشجرة الملفات وبعض الأشياء للقادمين الجدد

بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته


شرح شجرة الملفات وبعض الأشياء للقادمين الجدد إلى نظام جنو لينكس :

1-ترتيب المجلدات :

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









عندما تفتح أنت الطرفية تكون في مجلد إسم الحساب لديك في مجلد المنزل home أي أنت في .
home/tom/
/ ترمر كما قلنا إلى القسم الرئيسي الروت root وهو الأساس .

-home إسم مجلد المنزل الذي يكون فيه مجلدات بأسماء حسابات المستخدمين .

-tom مجلد بإسم حساب مستخدم إسمه tom .


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

باقي المجلدات لا يمكن أبدا التعديل عليها إلا بصلاحيات root لهذا مثلا نحتاج أن نستخدم sudo أو su عندما نريد تثبيت برنامج ما لأن الامر يتطلب إضافات ملفات إلى مجلدات ليست موجودة بمجلد الحساب لنا ولا نملك صلاحيات التعديل عليها  بإستثناء مجلد tmp/ وهو للملفات المؤقته وسيتم حذف كل ما فيه عند إعادة إقلاع النظام.



الأن في جنو لينكس إذا كنا نستخدم الطرفية نستخدم أمر cd للتنقل بين المجلدات هناك طريقتين للتنقل .

أول لنفترص أننا فتحنا طرفية جديدة terminal الأن نحن في مجلد الحساب لدينا الذي يكون موجود في مجلد المنزل home أمر pwd يطبع لنا أين نحن الان .




الأن داخل مجلد الحساب لدينا لدي مجلدات كثير منها Dowloands والكثير ملاحظة مهمة في نظام جنو لينكس يجب أن نراعي حالة الأحرف يعني Downloads ليست مثل downloads.

الأن أريد الدخل إلى مجلد Downloads بكل بساطة أكتب .
cd Downloads

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




الحل أن نكتب المسار كامل من أول شجرة الملفات أي / .




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

-أولا إستخدما هذا الرمز ~ وهو يدل على مسار مجلد الحساب لدينا من أول شجرة الملفات إلى مجلد الحساب لدينا.


-ثانيا إستخدام HOME$ (ننتبه إلى حالة الأحرف الكبيرة) وهو أمر خاص بما يسمى بمتغيرات البيئة إن شاء الله سأشرح الأمر لاحقا بموضوع أخر وقد سبق و وضعت أمر في شرح أخر يجلب إسم الواجهة.




لهذا أخوتي عندما نريد تطوير برنامج مثلا أو نريد أن نساعد أحد أو نريد وضع إختصار لأمر أو shortcut لبرنامج يجب أن نضع المسار كاملا من / إلى أن نصل للملف أو المجلد .


في أمر cd النقطة ترمز إلى المجلد الموجودين نحن  فيه الأن والنقطتين إلى المجلد الأب صور ليفهم اﻷمر أكثر .








الأمر ليس فقط للتنقل ممكن على اساس النقط أن أنسخ مثلا ملف أو مجلد من مجلد أخر إلى الملجلد الموجود فيه انا الأن أو مثلا ممكن أن أنسخ ملف أو مجلد من المجلد الموجود فيه انا إلى مجلد الأب .





ملاحظة ليس بالضرورة إستخدام النقط ان فقط أشرح لتوضيح الأمور ممكن إستخدام المسار كاملا أو إستخدام ~ أو $HOME .
cp /home/youcef/myfolder/folder/text.txt  /home/youcef/myfolder
cp ~/myfolder/folder/text.txt  ~/myfolder
cp $HOME/myfolder/folder/text.txt  $HOME/myfolder

قومو بكاتبة الأوامر في الأسفل لتتوضح الامور أكثر أمر echo فقط للطباعة طبعا ممكن تطويعه لأمور مفيدة لكن ليس موضوعنا .
~ echo
echo $HOME




احيانا نسمع أننا ننشىء قسم home أو boot و ...منفصل كيف يتم الأمر الأمر ببساطة اننا ننشىء قسم  منفصل ونخبر النظام أن يضم هذا القسم عند كل إقلاع على أنه home/ أو boot/ أي نعطيه المسار الذي يجب أن يكون فيه وهو أمر ممكن في أنظمة جنو لينكس وإعداداتها تكون في ملف etc/fstab/ يمكنكم قراءة الملف لكن لا تعدلو عليه إذا لا تعرفو شيء عن الموضوع .



فإذا أخوتي كل شيء داخل مجلد الحساب لدينا أي شيء كهذا home/youcef/ ممكن أن تعدل عليه... وكل شيء أخر نحتاج صلاحيات root ممكن من خلال إستخدام sudo أو su أو ممكن إعطاء صلاحيات لمستخدم ما من خلال chmod و chown لكن امر لا ينصح فيه إعطاء هكذا أشياء لملفات النظام وممكن أيضا بكل بساطة الدخول بمستخدم root كما في توزيعة kali وهذا أمر ابدا أبدا لا ينصح به لكن توزيعة كالي هي لإختبار الإختراق وليست للإستخدام الشخصي اليومي... مجلد المنزل لمستخدم root لا يكون بمجلد home يكون بمجلد منفصل root/ ولا يمكن الدخول عليه أو حتى معرفة ما بداخله إلى من خلال إستخدام sudo -i أو su او الدخول بحساب root وأظن في أبونتو إفتراضيا لا يكون مفعل هذا الحساب على العموم ليس موضوعنا تابعو الصورة في الأسفل من فيدورا وإذا كنا لا ندري ماذا نفعل أشدد على عدم إستخدام الامر لكن وضعت الصورة للتوضيح.


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



أما بالنسبة لأسماء المجلدات المكتوبة بالعربية في واجهة gnome shell او أي واجهة تستخدم                 gnome-terminal تحتاج تثبيت bicon  أو تكتب الأحرف كما هي أحرف معكوسة ومتفرقة صور للتوضيح.
sudo dnf install bicon








أخر ملاحظة بعض البرامج تواجه مشاكل إذا كان إسم ملف أو مجلد مكتوب باللغة العربية .




 2-أسماء الهارديسكات والفلاشات وأقسامها وبعض الأشياء :

مستخدمي ويندوز تعودو على أسماء مثل C D E ... الأمر يختلف في جنو لينكس أولا النظام يتعامل مع كل شيء على أنه ملف وتكون اسماء الهارديسات هكذا .

أول هارديسك من نوع sata يكون الإسم sda ثاني هارديسك أو فلاشة sdb ثالث sdc وهكذا ....

الأن أول قسم من الهارديسك الأول يكون إسمه sda1 والثاني sda2 و....

ذات الأمر للهارديسكات أو الفلاشات التي تضاف إلى الجهاز من فلاشات هارديسكات خارجية مثلا sdb1 sdb2 و...

الأن أين مسار هذه الملفات مسارها في dev/ كما قلنا سابقا / القسم الأساسي الذي يتفرع منه كل شيء و dev مجلد كأي مجلد فيه ملفات تدل على العتاد وبعض الأشياء مثل

dev/sda1/
dev/sdb1/

ال cdrom الأول يكون إسمه sr0 أو cdrom او dvd وال cdrom الثاني يكون مثلا إسمه sr1 مثال

dev/sr0/
مثلا أمر لصنع ملف iso من القرص الموجود داخل أول cdrom لدينا
dd if=/dev/sr0 of=~/myiso.iso
 أمر dd لنقل الملفات طبعا له تفسير أعمق من ذلك لكن ليس موضوعنا if تعني input file   و of تعني out file  و myiso.iso/~ وضعت إسم الملف الذي أريد إنشائه ومساره كما قلنا ~ تدل على مجلد المنزل لدينا  .

ملاحظة مهمة أمر dd أمر خطير إذا تم إستخدامه بشكل خاطأ ممكن ان يأدي إلى حذف ملفات الهارديسك إذا إستخدم بطريقة خطأ.


أخيرا يمكنك الإتطلاع على ملفات مجلد dev قد تجدو شيء مثير للإهتمام .
ls /dev

شارك الموضوع

مواضيع ذات صلة

التسميات

2016 (1) 23 (1) 24 (3) 25 (1) 26 (1) 27 (1) 28 (1) 29 (1) 30 (1) 31 (1) إتصال (1) إختراق (2) أدة (1) أدوات (1) إرسال (1) أرش (1) إسترجاع (1) إستعلام (1) أشياء (7) أشياء تفعلها (8) إصدارات (1) إصلاح (6) إصلاحrealtek (1) إضافات (1) إضافة (1) أعجوبة (1) أعجوية (1) إعداد (1) إقاف (2) أقسام (1) ألعاب (2) الفرق (1) الفلاشة (1) القسم هوم (1) الكتابة بالعربية (1) إلى جانب (1) أندرويد (1) إنشاء (1) إنشاء مستودع (1) أيات (1) أيزو (1) أيقومات (1) أيقونات (1) ايقونات (2) باتش (1) بارامتر (1) بايثون (16) برامج (56) برامج إسلامية (2) برنامج (19) برودباند (1) بعد (7) بعد التثبيت (8) بلوتوث (1) بناء (1) بناء توزيعة (1) بيئة عمل (1) تثبيت (29) تجهيز (2) تجهيو من دون (2) تحزيم (2) تحقق (1) تحويل (1) تخصيص (5) ترجمة (2) ترقية (1) تسجيل الشاشة (1) تشغيل (3) تعريف (13) تعطيل (2) تعلم (6) تفعلها (7) تفعيل (2) تقطع الأحرف (1) تقعيل (1) تنزيل (2) تورنت (1) توزيعة (1) توسعة (1) ثيم (5) ثيمات (1) جافا (1) جماليات (7) جنوم (1) حجم (1) حرق (2) حزمة (1) حل (2) دالة (1) دورة (1) روتر (1) ريدهات (2) سكربت (2) شرح (11) صورة متحركة (1) فايرفوكس (1) فتح منفذ (1) فصل (1) فلاشة (3) فيدورا (29) فيدورا بالعربي (1) قاموس (1) كالي (2) كتاب (2) كتب (2) كرت (1) كروت الشاشة (1) كلمة المرور (2) كورس (1) كورورا (1) لعبة (1) لينكس (2) لينكسو (1) ماهو (6) متغير البيئة (1) مجانا (1) محاكات (2) محاكي (1) محمل الإقلاع إصلاح (1) محمول (1) مستودعات (1) مشكلة (2) ملف نصي (1) من إصدار (1) نظام ملفات (1) نمط (2) نواة (1) هجين (4) واجهات (1) وايرلس (1) وهمي (2) ويندوز (2) access token (1) active (2) add (1) after (7) alias (1) andoid studio (1) android (2) android studio (1) Apache (2) appstream (1) arboot (1) arboot fix (1) arch (3) archiso (1) arfedoraccframework (3) arfedoracontrolcenter (3) arfedy (1) atari (1) atom (1) ayat (1) bicon (1) blivet (1) blivet-gui (1) bls (1) bluetooth (1) book (2) books (2) bootloader fix (1) boxes (3) broadband (1) broadcom (1) broadwayd (1) bugzilla (1) build (2) builddep (1) bumblebee (1) bumbleebe (2) burn (2) byzanz (1) c# (1) calamares (1) camera (1) cannot open display (1) cannot open display: :0 (1) ccna (1) cd (2) centos (1) change (2) chsh (1) cisco (1) clion (1) clone (1) code.org (1) command (2) command line (2) commands (2) comps (1) connect (1) contra (1) convert (1) copr (1) could not connect to the debugger (1) cpu (1) cpufreq (1) createrepo (1) csharp (1) css (1) curlew (1) custom (2) dbus (3) dconf (1) dd (1) Decryption (1) defragment (2) desktop (1) desktop entry (1) dictionary (1) Digital signature (1) disks (1) dnf (14) do (7) docker (1) dolphine (1) download (2) downloads manager (1) dply (1) DRI PRIME (1) driver (9) dukto (1) e2fsck (1) efi (4) el forkane (1) elforkane (1) elif (1) emergency (3) emergency mode (3) emulator (1) enable (2) Encryption (1) entries (1) error mounting /dev/sd (1) ext4 (1) extend (1) extensions (2) fakenes (1) fast startup (2) fceux (1) fedora (45) fedora 25 alpha (1) fedora cloude (1) fedora28 (1) fedoraوفيدورا (1) fedy (1) fgmac (2) fgmac-24 (1) file (1) find (1) firefox (2) fix (10) flash mem (1) flash memory (2) flashplayer (1) flatpak (4) forward (1) fpaste (1) free (1) freebsd (1) freevpn (1) function (1) game (3) games (2) gedit (1) genymotion (1) gettext (1) gif (1) gimp (1) gio (1) github (5) github.io (1) glibc-common (1) gmaclinux (2) gnome (16) gnome boxes (1) gnome disk (1) gnome shell (13) gnome terminal (1) gnome-disks (1) gnu (1) godot (1) goldendict (1) google web designer (1) gpg (2) gradio (1) group (2) grub (7) grub2 (1) grubenv (1) gstreamer (1) gtk (8) gtk+ (1) gvrecord (1) hack (2) hash (4) hdmi (3) hibernate (1) home (2) hosspot (1) html (1) http (1) hybrid (2) icon (2) icons (3) ide (1) if (1) install (32) installf (9) installing (7) intellij idea (1) internet downlaod manager (1) iso (2) java (3) jdk (2) jetbrains (1) jetbrains toolbox (1) kali (2) kde (3) kernel (1) kernel parameters (1) key (1) kickstarts (3) korora (1) krita (1) kvm (2) kvm switches (1) lamp (1) laps (1) learn (1) legacy (1) legacy bios (3) libreoffice (2) libvirt (1) life is trange (1) linux (8) lutris (1) lv (1) lvm (2) mac (4) macros (1) mageia (1) make distro (1) mariadb (1) MariaDB and PHP Lamp Server (1) markdown (2) mate terminal (1) mbr (1) md5sum (1) mirro (1) mkconfig (1) mo (1) mono (2) monodevelop (2) mount (1) mp4 (1) multi screen (1) mumble (1) murmur (1) natron (1) nautilus (2) nes (1) netbeans (1) netcut (1) nintendo (1) ntfs (2) nvidia (8) objdesktop (1) ojuba (2) oop (1) opensuse (1) openvpn (1) opera (1) optirun (2) oracle (1) os.path (1) package (2) page (1) pages (1) pantheon (1) parameter (1) parameters (1) password (2) patch (1) path (2) pdf (1) peek (1) photoshop (1) php (1) phpstorm (1) plasma (2) plugin (3) plugins (1) plymouth (1) po (1) polkit (1) port (1) portable (1) portmatp (1) PostinstallerF (1) pot (1) powerline (2) powerline-go (1) preset (1) preview (1) primary display (1) primeos (1) primus (1) primusrun (1) private key (1) programs (3) protonvpn (1) pubg (1) public key (1) put (1) pv (1) pycharm (2) pygobject (4) pygtk (5) python (56) pythonk (1) qdbus (1) qemu (3) qemu-kvm (1) query (1) radio (1) raspberry pi (4) raspbian (2) reclaim space (2) record (1) redhat (3) remix (1) remix os (1) repo (4) repofrompath (1) repository (1) reset (1) resize2fs (1) rhel (1) router (1) rpm (7) rpmbuild (1) rtl8188ee (1) rtl8192c (1) rtl8192ce (1) rtl8192cu (1) rtl8192de (1) rtl8192ee (1) rtl8192se (1) rtl8723ae (1) rtl8723be (1) rtl8723com (1) rtl8821ae (1) rubymine (1) salix (1) scratch (2) scratch2.scratch 2 (1) screencast (1) script (2) seconday display (1) self (1) send (1) server (1) settings (2) sha1256sym (1) sha256sum (1) share desktop (1) shell (2) shortcut (1) shutter (1) skel (1) skel ماهو (1) skype (1) skype.برامج (1) slackware (1) software (1) soundcloud (1) source code (1) spec (2) spin (1) sqlmap (1) ssh (3) sshd (2) st-trans (1) steam (2) store (1) su (1) sudo (2) sudoers (1) swap (2) switch (2) Switchable Graphics (1) synergy (1) systemd (1) systemd preset (1) teamviewer (1) terminal (2) theme (5) things (7) thomson (1) thread (2) threading (2) thumbnails (1) to (8) tor (2) tor browser (1) torrent (1) transfer closed with 736700 bytes remaining to read (1) translation (1) turn off (2) tuxcut (1) txt (1) ubuntu (1) uefi (5) unable to mount location (1) unity (1) unity3d (1) upgrade (1) usb (1) useradd (2) utf-8 (1) vega (1) verify (1) vg (1) vgaوتبديل (1) vi (1) video (1) vim (1) vino (1) virsh (1) virt-install (1) virt-manger (1) virtual (1) virtual box (1) virtualbox (3) vmware (3) vnc server (1) vokoscreen (1) vpn (1) web server (1) webstorm (1) wifi (1) windows (4) windows-1256 (1) wine (1) woeusb (1) X Error: BadAccess (1) X Error: BadDrawable (1) xdg-mime (1) xdman (1) xfce (1) xfconf-query (1) yum (2) zeal (1) zealdocs (1)