شرح طريقة الدخول إلى أقسام الوندوز من لينوكس

بسم الله الرحمن الرحيم
مقدمة
يستخدم الوندوز نظام ملفات (fat32 أو ntfs غالبا) مختلف عن نظام الملفات المستخدم في لينوكس (ext2 أو ext3 أو reiserfs أو غيرها). و هذا ما يجعل الدخول إلى الأجزاء من القرص الصلب المهيئة تحت نظام الوندوز يستدعي استخدام الأمر mount و دور هذا الأمر هو الربط بين نظام الملفات (FS) يعني بمفهومنا بين جزء من أجزاء القرص الصلب أو قرص مضغوط أو مرن و بين نقطة من شجرة ملفات النظام هذه النقطة تسمى mountpoint وهي عادة تكون عبارة عن مجلد فارغ يتم ربطه بالجزء المطلوب من القرص. للتوضيح أعطي مثالين:

* المجلد /media/cdrom هو مجلد من شجرة النظام (لأن نظام الملفات في لينوكس تمثيلها شجري يبدأ من المجلد الجذر / و يتفرع إلى بقية الملفات). عند إدخال قرص مضغوط إلى السواقة فإن العديد من التوزيعات تقوم بعملية الماونت mount تلقائيا لهذا القرص إلى المجلد /media/cdrom

* المجلد الجذر / الذي منه تتفرع كل الملفات أيضا مربوط بجزء من النظام المسمى الجزء الجذر root partition و هذا الجزء يربط بالمجلد / تلقائيا عند بدء النظام

و أذكر أنه في لينوكس كل شيء عبارة عن ملفات حتى العتاد و هذا الأخير ملفاته موجودة في المجلد /dev مثلا /dev/hda يمثل في الغالب القرص الصلب ide الأول.

الحاصل فإن الأمر mount أمر هام جدا و موجود حسب علمي في كل التوزيعات اللينوكسية و يستخدمه النظام تلقائيا عند بدء التشغيل لربط أجزاء من القرص مع نقاط الربط، انظر الملف /etc/fstab

لا أستطيع استيفاء شرح هذا الأمر الكثير الخيارات و لكن سأقتصر على تلخيص كيفية تمكين النظام من رؤية أقسام الوندوز. للمزيد من المعلومات ينظر man mount

عرض أقسام القرص الصلب و عرض نقاط الماونت
يجب أن تكون لك دراية عن تقسيم القرص الصلب و أسماء الأجزاء التي عادة تحمل أسماء مثل hda1, hda2, hdb1 بالنسبة للأقراص من نوع ide أو sda1 sda2 sdb1 بالنسبة للأقراص sata.
لعرض هذه الأقسام نستخدم الأمر التالي (بحساب root):

fdisk -l

بعد تنفيذ هذا الأمر يمكنك رؤية السطر (أو الأسطر) الخاص بالوندوز. مثال:

/dev/hda1   *          63    12700799     6350368+   7  HPFS/NTFS
/dev/hda2        12700800    61447679    24373440    f  W95 Ext'd (LBA)
/dev/hda3        61447680    80287199     9419760    b  W95 FAT32
/dev/hda5        12700863    25295759     6297448+   7  HPFS/NTFS

لاحظ أن الأقسام /dev/hda1 و /dev/hda5 من نوع ntfs و /dev/hda3 من نوع fat32 و هذه هي أقسام الوندوز في القرص الصلب.

أيضا يمكن معرفة ال mountpoint الموجودة أي الأجزاء (و أنظمة الملفات) المعمول لها ماونت مسبقا و ذلك بتنفيذ الأمر mount مستقلا:

mount

استخدام الأمر mount للدخول إلى أقسام الوندوز

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

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

أولا نقوم بإنشاء مجلد الذي سيكون هو هذه النقطة و يفضل إنشاؤه تحت المجلد /mnt و نسميه بأي اسم نشاء يكون معبرا عن دور الجلد مثلا win_c أو win_d :

 

mkdir /mnt/win_c

الآن ما علينا إلا القيام بالماونت بربط الجزء /dev/hda1 بالنقطة /mnt/win_c و الأمر هو:

 

mount /dev/hda1 /mnt/win_c

 

أحيانا قد تضطر إلى تحديد نوع نظام الملفات مثلا vfat بالنسبة ل fat32 أو ntfs :

mount -t ntfs /dev/hda1 /mnt/win_c

 

أو

mount -t vfat /dev/hda1 /mnt/win_c

 

الآن يمكنك مشاهدة ملفات الوندوز و لكن للقراءة فقط لتفعيل القراءة و الكتابة معا نغير قيمة umask:

mount -t vfat -o umask=0000 /dev/hda1 /mnt/win_c

 

و هذا خاص بنظام ال fat أما ال ntfs فلتفعيل الكتابة عليه هناك طرق لن أتطرق إليها في هذا الموضوع و يمكنك مشاهدة هذا الرابط:

<!--{12186538244490}-->http://www.ntfs-3g.org/<!--{12186538244491}-->

أيضا من المشاكل التي يمكن أن تواجهنا نحن العرب وهي عدم ظهور أسماء الملفات العربية بالشكل الصحيح، لحل هذا المشكل نحدد قيمة iocharset:

mount -t vfat -o umask=0000,iocharset=utf8 /dev/hda1 /mnt/win_c

تحرير ملف fstab لجعل الماونت تلقائي و دائم

لتفادي إعادة تنفيذ الأوامر عند كل تشغيل للنظام يمكن إضافة الأسطر الخاصة بالوندوز إلى الملف /etc/fstab الذي يقوم النظام بقراءته ثم عمل ماونت لأنظمة الملفات. الملف fstab يكون على هذا الشكل (نسختك قد تختلف):

 

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/hda3       /               ext3    defaults,errors=remount-ro 0       1
/dev/hda8       /home           ext3    defaults        0       2
/dev/hda6       none            swap    sw              0       0
/dev/hdd        /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/hdc        /media/cdrom1   udf,iso9660 user,noauto     0       0

  

كل جزء يتم ربطه من خلال الماونت له سطر خاص يبدأ بمكان هذا الجزء في /dev ثم الخانة الثانية نقطة الربط التي يجب أن تكون موجودة مسبقا و الثالثة نوع نظام الملفات و الرابعة الخيارات هذه أهم الخانات التي يجب معرفتها.

 إذن لإضافة سطر الوندوز نقوم بوضع القيم المناسبة مثلا:

/dev/hda1       /mnt/win_c     vfat    defaults,umask=0000,iocharset=utf8        0       0

 

أو بالنسبة ل ntfs:

/dev/hda1       /mnt/win_c     ntfs    defaults,nlfs=utf8        0       0

 

لاحظ أننا في الخانة الرابعة قمنا بتحديد بعض الخيارات مثل umask و utf8.

الآن بعد تسجيل الملف فإن الماونت يصبح تلقائيا عند بدء التشغيل أو لتنفيذ الماونت يدويا يمكن تنفيذ الأمر mount بإحدى الطريقتين:

 

mount /dev/hda1

أو

mount /mnt/win_c

 

 

اكتفينا بكتابة مكان نظام الملفات أو مكان نقطة الربط لأن mount يقرأ الملف /etc/fstab لمعرفة أن /dev/hda1 يرتبط ب /mnt/win_c

لمعرفة المزيد عن fstab انظر man fstab

انتهى و أتمنى أن يكون الشرح واضحا و نافعا و أرحب بملاحظاتكم و إضافاتكم

شكرا

شكرا