0

دستورات لینوکس

 
amindadaadad
amindadaadad
کاربر طلایی3
تاریخ عضویت : دی 1389 
تعداد پست ها : 3567
محل سکونت : سیستان و بلوچستان

پاسخ به:دستورات لینوکس
چهارشنبه 8 شهریور 1391  1:55 AM

دستور mount





دستور mount برای بالا اوردن یک درایو استفاده میشه که در فارسی هم همون موینت کردن میگن 
هر درایوی که شما در سیستمتون داشته باشین یک device name بهش تعلق میگیره که در فولدر /dev/میتونین اونا رو پیدا کنین مثلا 


کد:

dev/sda /dev/sda5 
برای بدست اوردن اطلاعاتب در مورد فایل سیستم درایوهاتون و پیدا کردن uuid , lable و device name به 2 اموزش زیر رجوع کنین
راهنمای ترمینال اوبونتو (دانسته‌هایمان را به اشتراک بگذاریم)
راهنمای ترمینال اوبونتو (دانسته‌هایمان را به اشتراک بگذاریم)

شکل کلی دستور 


کد:

mount [-alrsvw] [-t fstype] [-o options] [device] [mountpoint] 
mount کردن یک درایو به ساده ترین شکل
برای این کار احتیاج به device name اون درایو و یک محل برای مونت کردنش احتیاج داریم که به اون mount point میگن 
پس شکل کلی به این شکل میشه


کد:

mount device-name mount-point 
مثلا 
کد:

alieblice@ubuntu:~$ sudo blkid [sudo] password for alieblice: /dev/sda1: UUID="246dcfec-7380-48d3-942b-a5ba4c2e8882" TYPE="ext4" /dev/sda5: UUID="715fa349-8dd1-4104-bd70-9a31a6279749" TYPE="swap" /dev/sdb: UUID="d1a62327-4227-439b-81f9-4ef82027957b" TYPE="ext4" LABEL="New Volume" /dev/sdc1: UUID="5f1bb23f-3857-4e06-8bda-28e0cb6f61d3" TYPE="ext2" /dev/sdc5: UUID="b4637559-61e4-41ff-ae1c-667632393686" SEC_TYPE="ext2" TYPE="ext3" alieblice@ubuntu:~$ mount /dev/sdb /media/sdb mount: only root can do that alieblice@ubuntu:~$ sudo mount /dev/sdb /media/sdb alieblice@ubuntu:~$ 
دستور blkid برای دیدن دایو های موجود روی سیستمتون استفاده میشه که قبلا کامل توضیح داده شده 
همون طور که در بالا میبینین چندین تا دراییو وجود داره که ما درایو dev/sdb رو به /media/sdb موینت کردیم که /dev/sdb درواقع mount point مون بود
نکته : فلدر sdb باید از قبل در فولدر media موجود باشه در غیر این صورت ارور میده 
mountکردنو میتونین بر اساس label و uuid هم انجام بدین که دستور به این صورت میشه 
برای lable از L- استفاده کنین ((ال بزرگ))
label کد:

alieblice@ubuntu:~$ sudo mount -L New Volume mount: no such partition found alieblice@ubuntu:~$ sudo mount -L "New Volume" 
alieblice@ubuntu:~$ 
پیشنهاد میکنم همیشه اسم درایو رو بین "" قرار بدین تا به مشکل بر نخرین
در بالا mount point رو تعیین نکردم به این دلیل که داخل فایل /etc/fstab تنظیماتی رو انجام دادم (( در اخر اموزش در مورد فایل fstab توضیح دادم ))

uuid


کد:

alieblice@ubuntu:~$ sudo mount -U d1a62327-4227-439b-81f9-4ef82027957b /media/sdb 
توضیح بعضی اپشن ها 
a- : استفاده از a- باعث میشه که تمام درایو های لیست شده در فایل /etc/fstab موینت بشن ((دیگه لازم نیست دونه به دونه برای هرکدوم دستور موینت رو بنویسیم ))

r- : استفاده از r- باعث میشه تا درایومون به صورت read-only ((فقط قابل خواندن)) موینت بشه 
w- : با استفاده از w- درایوتون به صورت read and write ((قابل خواندن و نوشتن)) موینت میشود 
v- : اطلاعات بیشتری رو از مراحل موینت شدن درایو به شما میدهد
t- : با استفاده از t- میتونین نوع فایل سیستم مورد نظرتونو انتخاب کنین ((ext4 ,ext3 , .....))
L- و U- که به ترتیب برای موینت کردن بر اساس اسم و uuid هستش که در بالا مثالش زده شد 

o-
یک سری اپشن دیگر هستن که باید در ادامه o- بیان که در زیر تعدادیشون توضیح داده شده 

defaults : با عث میشه تا تنظیمات پیش فرض برای موینت کردن اون درایو استفاده بشه که در درجه اول تنظیمات داخل فایل /etc/fstab رو میخونه و اگر تنظیماتی نبود سراغ تنظیمات خودش میزه 

auto : با این اپشن میتونیم بگیم که در هنگام بوت شدن سیستم , این درایو هم موینت بشود یا در موقعی که از a- استفاده کردیم به عنوان اپشن , این درایو هم موینت بشود 

noauto : عکس کار auto رو انجام میده یعنی در موقع بوت شدن سیستم درایو رو موینت نکند و در موقع استفاده از اپشن a- موینت نشود 

user یا nouser : با استفاده از این 2 میتونیم به کاربران غیر روت اجازه دهیم که یک درایو رو بدون دست رسی به روت موینت کنن که معمولا همون کاربری که موینت کرده درایو رو میتونه unmount بکند .

اپشن بالا بیشتر برای درایو هایی مثل usb فلاپی و غیره استفاده میشه 

users : شبیه user با این تفاوت که هرکسی میتونه درایو رو unmount کند 

remount : بعضی اوقات پیش میاد که لازم میشه بدون این که یک درایوی unmount بشه تغییراتی روی اون درایو ایجاد کنیم مثلا تبدیلش کنیم به read-only در این مواقع میتونیم از این اپشن استفاده کنیم 

loop : فرض کنیم که یک فایل ایمیج داریم که میخایم اونو جوری موینتش کنیم که انگار یک درایو از hard disk مون بوده میتونیم از این اپشن استفاده کنیم مثلا


کد:

mount -t vfat -o loop image.img /mnt/image 
فایل image.img جوری موینت میکنه که انگار یک درایو یا یک هارد بوده 

ro :همون فقط قابل خوندن هستش 
rw :همون قابل خوندن و نوشتن هستش

چند مثال از اپشن های بالا 

کد:

alieblice@ubuntu:~$ sudo blkid /dev/sda1: UUID="246dcfec-7380-48d3-942b-a5ba4c2e8882" TYPE="ext4" /dev/sda5: UUID="715fa349-8dd1-4104-bd70-9a31a6279749" TYPE="swap" /dev/sdb: LABEL="New Volume" UUID="d1a62327-4227-439b-81f9-4ef82027957b" TYPE="ext4" /dev/sdc1: UUID="5f1bb23f-3857-4e06-8bda-28e0cb6f61d3" TYPE="ext2" LABEL="LILI" /dev/sdc5: UUID="b4637559-61e4-41ff-ae1c-667632393686" SEC_TYPE="ext2" TYPE="ext3" alieblice@ubuntu:~$ 
مثال :
در زیر یک درایو با فرمت ext2 و به همراه اپشن فقط قابل خواندن (r-) و همچنین توانایی unmount کردن درایو به وسیله ی هرکاربری(users) که اسم درایو LILI است رو به mount point به این ادرس /media/LILI موینت میکنیم 
کد:

alieblice@ubuntu:~$ sudo mount -v -r -t ext2 -o users -L LILI /media/LILI /dev/sdc1 on /media/LILI type ext2 (ro,noexec,nosuid,nodev) alieblice@ubuntu:~$ 
در مثال زیر همون درایو بالا رو بدون این که unmount کنیم از اپشن فقط قابل خواندن به قابل خواندن و نوشتن و همچنین قابلیت unmount کردنشو به وسیلهی هر کاربری میگیرم 
کد:

alieblice@ubuntu:~$ sudo mount -v -o remount -w -U 5f1bb23f-3857-4e06-8bda-28e0cb6f61d3 /dev/sdc1 on /media/LILI type ext2 (rw,noexec,nosuid,nodev) alieblice@ubuntu:~$ 
نکته ک برای 2 مثال بالا حتما نکته اخر اموزش رو هم بخونین

فایل /etc/fstab

فایل /etc/fstab از 6 قسمت تشکیل شده که شامل موارد زیر هستش 


کد:

#device mount point filesystem options dump fsck 
dump : یک نرم افزار backup گیر هستش که ازش استفاده میکنین میتونین مقدار رو به عدد یک تغییر بدین تا از درایوتون پشتیبان تهیه کند
pass یا fsck : لینوکس در زمان بوت شدن از نرمافزار fsck برای چک کردن فایل سیستم ها استفاده میکنه که اگه مقدارشو به عدد 1 تغییر بدین در هر بار بالا امدن فایل سیستم برای اون درایو رو چک میکنه 

در واقع شما میتونین همون اپشن هایی که در دستور mount مینوشتین رو در این فایل بنویسین تا هر بار نخواد دستورو از نو بنویسین و هم چنین ایجاد اپشن هایی مثل مونت شدن اتوماتیک در موقع بوت سیستم
مثال :
در زیر یک درایو با فرمت ext2 و به همراه اپشن فقط قابل خواندن (r-) و همچنین توانایی unmount کردن درایو به وسیله ی هرکاربری(users) که ادرس درایو /dev/sdc1 است رو به mount point به این ادرس /media/LILI و قابلیت موینت شدن خودکار در زمان بوت و قابلیت موینت کردن به وسیله ی کاربران عادی رو داخل فایل fstab مینویسیم 

# < کد:

file system> <mount point> <type> <options> <dump> <pass> /dev/sdc1 /media/LILI ext2 ro,users,user,auto 0 0 
نکته : در قسمت device میتونیم از lable و یا uuid هم استفاده کنیم که در مثال زیر نوع چگونگی نوشتنش رو میتونین ببینین

نمونه یک فایل fstab پیشرفته 
کد:

#device mount point filesystem options dump fsck /dev/sda1 / ext3 defaults 1 1 UUID=3631a288-673e-40f5-9e96-6539fec468e9 /usr reiserfs defaults 0 0 LABEL=/home /home reiserfs defaults 0 0 /dev/sdb5 /windows vfat uid=500,umask=0 0 0 /dev/cdrom /media/cdrom iso9660 users,noauto 0 0 /dev/sdb1 /media/usb auto users,noauto 0 0 server:/home /other/home nfs users,exec 0 0 //winsrv/shr /other/win cifs users,credentials=/etc/creds 0 0 /dev/sda4 swap swap defaults 0 0 
نکته مهم :

بعضی اوقات در دستوراتی که استفاده میکنیم از اپشنایی مثل : قابلیت موینت شدن به وسیله ی هر کاربری 
یا قابلیت unmount شدن به وسیله ی هر کاربری و ... استفاده میکنیم مثل دستور زیر


کد:

sudo mount -v -r -t ext2 -o users -L LILI /media/LILI 
خوب حالا اگه الان به عنوان یک کاربر معمولی بیاین وبخاین که اونو unmount کنین , نمیتونین اونو unmount کنین و این اررورو میده 
کد:

alieblice@ubuntu:~$ umount /dev/sdc1 umount: /dev/sdc1 is not in the fstab (and you are not root) alieblice@ubuntu:~$ 
برای حل این مشکل حتما باید از فایل fstab استفاده کنین و اپشناتونو در اون بزارین

** دارالولایه **

درباره امضاء

تشکرات از این پست
دسترسی سریع به انجمن ها