ابزارهای کاربردی مرتبط با هارددیسک در لینوکس

دسته بندی: آموزش
کاور مقاله ابزار مرتبط با هارد دیسک در لینوکس

در سیستم عامل لینوکس ابزار های مختلفی برای برای مدیریت ذخیره سازی وجود دارد، اما تعداد انگشت شماری از آن ها که بیشتر کاربرد دارند، استفاده می شوند. ما در این مقاله تصمیم داریم دستورات رایج در زمینه فایل سیستم و مدیریت ذخیره سازی را معرفی کنیم.

در این مقاله در مورد آماده سازی اولیه دستگاه ها برای نصب و راه اندازی یک سیستم لینوکسی توضیح داده نمی شود بلکه چگونگی پارتیشن بندی و فرمت بلاک های دستگاه های لینوکسی تشریح می شود.

پیدا کردن گنجایش حافظه و میزان حجم استفاده شده از حافظه به کمک df

اغلب مهمترین اطلاعاتی که از سیستم موردنیاز است، چگونگی پیدا کردن گنجایش اصلی سیستم و همچنین میزان حجم مصرفی از حافظه سیستم می باشد. بدین منظور می‌توان از دستور df  استفاده کرد. بصورت پیش فرض خروجی این دستور اندازه گیری 1 هزار بلاک که معمولا بصورت مفید استفاده نشده اند می باشد و در ادامه دستور  -h را می‌نویسیم، برای اینکه خروجی چاپ شده قابل فهم برای انسان باشد. بدلیل اینکه بصورت پیش فرض این دستور مقادیر را بر اساس هگزادسیمال نمایش می دهد و با -h این مقادیر بصورت مقادیر استاندارد مانند مگابایت و گیگابایت نمایش داده می شوند.

$ df -h
	
Output
Filesystem      Size  Used Avail Use% Mounted on
udev            238M     0  238M   0% /dev
tmpfs            49M  624K   49M   2% /run
/dev/vda1        20G  1.1G   18G   6% /
tmpfs           245M     0  245M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           245M     0  245M   0% /sys/fs/cgroup
tmpfs            49M     0   49M   0% /run/user/1000
/dev/sda1        99G   60M   94G   1% /mnt/data

 

 

هماطوری که مشاهده می کنید پارتیشن /dev/vda1 که در روت قرار دارد 6% پر شده است و 18 گیگ در دسترس دارد در حالیکه پارتیشن /dev/sda1 که در مسیر /mnt/data قرار دارد خالی می باشد و 94 گیگ حافظه در دسترس دارد.

می‌توانیم این مشخصات را با دستور زیر مشاهده کنیم:

 

$ df -h -x tmpfs -x devtmpfs

Output

Filesystem      Size  Used Avail Use% Mounted on

/dev/vda1        20G  1.1G   18G   6% /

/dev/sda1        99G   60M   94G   1% /mnt/data

 

خروجی به ما مقدار صحیح استفاده شده از حافظه بدون اطلاعات کاذب را نمایش می دهد.

 

پیدا کردن اطلاعاتی درمورد بلاک های دستگاه با دستور  lsblk

 

یک  block device یک کلمه عمومی برای ذخیره سازی با قابلیت نوشتن و خواندن در بلاک ها با حجم مشخصی در سیستم می باشد.

برای نمایش بلاک های حافظه از دستور lsblk  استفاده می شود. این دستور بدون هیچگونه ارگومان اضافی اطلاعات زیر را نماش می دهد.

نام دستگاه و حجم آن، چگونه خارج کردن این حافظه، اعدادminor , major  (که در کرنل لینوکس بصورت ردپا درایور ها و دستگاه ها ثبت می شود)، آیا این حافظه فقط بصورت قابل استفاده بصورت خواندنی می باشد یا قابلیت نوشتن هم دارد، نوع پارتیشن و…

$ sudo lsblk

Output

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda      8:0    0  100G  0 disk

vda    253:0    0   20G  0 disk

└─vda1 253:1    0   20G  0 part /

 

 

در خروجی میتوانیم ببینیم که یک دیسک (/dev/vda) با تنها یک پارتیشن (/dev/vda1) وجود دارد که پارتیشن روت (/) از آن استفاده میکند دیسک دیگر (/dev/sda)  می باشد که پارتیشن بندی نشده است.

برای بدست آوردن اطلاعات بیشتر مربوط به پارتیشن دیسک ها می شود در ادامه دستوراز –fs  استفاده کرد.

 

$ sudo lsblk --fs
Output
NAME   FSTYPE LABEL  UUID                                 MOUNTPOINT
sda                                                       
vda                                                       
└─vda1 ext4   DOROOT c154916c-06ea-4268-819d-c0e36750c1cd /

 

–fs   در برخی ورژن ها در دسترس نیست بجای آن میتوان از -o  برای بدست آوردن اطلاعات مشابه استفاده کرد.

برای بدست آوردن اطلاعاتی در مورد توپولوژی  دیسک دستور زیر را استفاده میکنیم.

 

$ sudo lsblk -t
Output
NAME   ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED    RQ-SIZE  RA WSAME
sda            0    512      0     512     512    1 deadline     128 128    2G
vda            0    512      0     512     512    1              128 128    0B
└─vda1         0    512      0     512     512    1              128 128    0B

 

دستورات متنوعی برای نمایش اطلاعات دیسک و پارتیشن ها وجود دارد برای نمایش همه اطلاعات می توانید از -o در ادامه دستورات استفاده کرد برای مشاهده اطلاعات در بصورت لیست میتوان از -h  استفاده کرد.

 

$ lsblk -h
Output
. . .

Available columns (for --output):
        NAME  device name
       KNAME  internal kernel device name

       . . .

  SUBSYSTEMS  de-duplicated chain of subsystems
         REV  device revision
      VENDOR  device vendor

For more details see lsblk(8).

 

کار کردن با دستورات مونت در سیستم فایل

قبل از اینکه از دیسک جدیدی استفاده کنید باید آن را پارتیشن بندی کنید و آن‌را با فایل سیستم مورد نظر فرمت نمایید و سپس درایو ها یا پارتیشن های مورد نظر را مونت کنید. معمولا پارتیشن بندی و فرمت کردن روند یکنواختی دارند و از ارائه توضیحات در این زمینه اجتناب می‌کنیم.

مونت کردن در واقع باعث می شود فایل های سیستمی در سرور در دسترس قرار گیرند، مونت کردن یک راه ساده ای است که فایل سیستم های جدید در دسترس قرار گیرند.

دو دستور اصلی که بصورت مکمل برای مونت کردن استفاده می شوند mount , umount می باشد.

دستور mount برای متصل کردن یک سیستم فایل به درخت فایل ها (file tree) می باشد. در سیستم عامل لینوکس یک فایل سلسه مراتبی (hierarchy ) بدون در نظر گرفتن اینکه از چند دستگاه فیزیکی مجزا تشکیل شده، در تمام سیستم بصورت یکپارچه در دسترس می باشد.

دستور umount (دقت کنید که با unmount اشتباه نشود) برای حذف کردن مونت یک سیستم فایل استفاده می شود، همچنین  میتوان از دستور findmnt  برای جمع اوری اطلاعات در مورد وضعیت مونت یک سیستم فایل، استفاده کرد.

 

استفاده از دستورات مونت

بیشترین استفاده از دستور mount  برای فرمت کردن یا پارتیشن بندی یک دستگاه می باشد.

$ sudo mount /dev/sda1 /mnt

 

هنگام استفاده از این دستور، معمولا شما می‌خواهید آپشن های دیگری هم مشخص کنید، گرچه دستور mount  می‌تواند سیستم فایل موجود را حدس بزند و شناسایی کند ولی بهتراست در سیستم فایل Ext4  در ادامه دستور از -t استفاده شود.

$ sudo mount -t ext4 /dev/sda1 /mnt

 

گزینه های مختلفی برای مونت کردن یک سیستم فایل وجود دارد، دستورات عمومی و آپشن های مستقل هنگام مونت کردن را می‌توانید با استفاده از دستور man mount مشاهده نمایید.

گزینه دیگری که به آن می‌پردازیم -o می‌باشد، برای مونت کردن یک پارتیشن با تنظیمات پیش فرض در ادامه دستور -o defaults را تایپ می‌کنیم. لازم به ذکر است تنظیمات پیش فرض برپایه rw,suid,dev,exec,auto,nouser,async می باشد .

اگر می‌خواهید دسترسی به خواندن و نوشتن محدود شود و بصورت فقط خواندنی (read only) مونت شود باید در ادامه دستور ro  نوشته شود که با اینکار قابلیت خواندن که بصورت پیش فرض فعال می باشد غیرفعال می شود.

$ sudo mount -t ext4 -o defaults,ro /dev/sda1 /mnt

 

برای مونت کردن همه سیستم  فایل های مشخص شده در مسیر /etc/fstab باید در ادامه دستور -a نوشته شود .

$ sudo mount -a

 

لیست گزینه های موجود در مونت کردن سیستم فایل:

 

برای نمایش گزینه موجود برای یک مونت کردن بصورت ویژه از دستور findmnt  استفاده می‌کنیم، بعنوان مثال ما میخواهیم فقط مونت هایی که بصورت فقط خواندنی (read only) ایجاد شده اند را مشاهده کنیم، بدین منظور  از دستور زیر استفاده می‌کنیم:

$ findmnt /mnt
Output
TARGET SOURCE    FSTYPE OPTIONS
/mnt   /dev/sda1 ext4   ro,relatime,data=ordered

 

اگر تجربه استفاده از از مونت های چندگانه را داشته باشید متوجه خواهید شد این دستور میتواند بصورت باورنکردنی مفید باشد.

 

آنمونت کردن یک سیستم فایل

برای آنمونت کردن یک سیستم فایل بطور کلی از دستور umount  استفاده می‌کنیم باز هم تاکید می شود که دقت کنیدumount  با unmount  تفاوت دارد.

زمانی که می‌خواهید سیستم فایلی را آنمونت کنید، حتما مطمئن شوید فایل هایی که در آن سیستم فایل قرار دارند به آن ها نیازی ندارید یا توسط اپلیکیشن ها مورد استفاده قرار نمی‌گیرند.

$ cd ~
$ sudo umount /mnt

برای اغلب کاربران آنمونت کردن با تنظیمات پیش فرض کافی است و نیازی به تغییر دیگری نمی باشد.

نتیجه گیری:

توضیحاتی که در این مقاله ارائه گردید بصورت کامل نمی باشد و همانطور که در ابتدای مقاله نیز ذکر شده است، موارد ذکر شده رایج ترین دستوراتی هستند که معمولا مدیر سرور ها بصورت روزانه از آن ها استفاده می‌کنند و  فراگیری این دستورات در مدیریت بهتر سرور مفید خواهد بود.

 

برگرفته از [digitalocean.com]

امتیاز شما

مایلید هر دو هفته یک ایمیل مفید دریافت کنید؟

ما را در شبکه‌های اجتماعی دنبال کنید

همچنین شاید دوست داشته باشید!

راهنمای قدم به قدم نصب ماتومو (Matomo)

0
ماتومو «Matomo» یکی از ابزارهای قدرتمند و متن‌باز در حوزه تجزیه‌وتحلیل وب است که به کاربران امکان می‌دهد تا اطلاعات دقیق و ارزشمندی از عملکرد…
SDK چیست

SDK چیست و چه کاربردی دارد؟

0
در دنیای توسعه نرم‌افزارها، ابزارها و تکنولوژی‌های بسیاری برای تسهیل فرآیند ساخت و پیاده‌سازی اپلیکیشن‌ها وجود دارد. یکی از مهم‌ترین این ابزارها، SDK یا Software…

نظرات کاربران

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.
شما برای ادامه باید با شرایط موافقت کنید

فهرست