歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 通過losetup虛擬出塊設備(文件系統)

通過losetup虛擬出塊設備(文件系統)

日期:2017/2/28 14:50:52   编辑:Linux教程
在Linux系統中,SCSI磁盤最多只支持15個分區(3個主分區sda1-sda3 + 1個擴展分區sda4 + 11個邏輯分區sda5-sda15),而IDE磁盤也只支持63個分區
  1. [root@rhel6 ~]# fdisk -l /dev/sda
  2. Disk /dev/sda: 6442 MB, 6442450944 bytes
  3. 16 heads, 63 sectors/track, 12483 cylinders
  4. Units = cylinders of 1008 * 512 = 516096 bytes
  5. Sector size (logical/physical): 512 bytes / 512 bytes
  6. I/O size (minimum/optimal): 512 bytes / 512 bytes
  7. Disk identifier: 0x00053d18
  8. Device Boot Start End Blocks Id System
  9. /dev/sda1 * 1 104 51200 83 Linux
  10. /dev/sda2 104 11076 5529600 8e Linux LVM
  11. /dev/sda3 11076 12116 524288 82 Linux swap / Solaris
  12. /dev/sda4 12116 12483 185320 5 Extended
  13. /dev/sda5 12116 12136 10400+ 83 Linux
  14. /dev/sda6 12137 12157 10552+ 83 Linux
  15. /dev/sda7 12158 12178 10552+ 83 Linux
  16. /dev/sda8 12179 12199 10552+ 83 Linux
  17. /dev/sda9 12200 12220 10552+ 83 Linux
  18. /dev/sda10 12221 12241 10552+ 83 Linux
  19. /dev/sda11 12242 12262 10552+ 83 Linux
  20. /dev/sda12 12263 12283 10552+ 83 Linux
  21. /dev/sda13 12284 12304 10552+ 83 Linux
  22. /dev/sda14 12305 12325 10552+ 83 Linux
  23. /dev/sda15 12326 12346 10552+ 83 Linux
  24. /dev/sda16 12347 12367 10552+ 83 Linux
  25. [root@rhel6 ~]# mkfs.ext4 /dev/sda16 //雖然可以劃出15個以上的分區,但無法格式化使用
  26. mke2fs 1.41.12 (17-May-2010)
  27. Could not stat /dev/sda16 --- No such file or directory
  28. The device apparently does not exist; did you specify it correctly?
  29. [root@rhel6 ~]# ls /dev/sda16
  30. ls: cannot access /dev/sda16: No such file or directory
回環設備可以把文件虛擬成塊設備(block device),以便模擬整個文件系統,這樣用戶可以將其看作是硬盤驅動器或者光驅等設備,並掛載當作文件系統來使用。 這樣系統還可以額外增加多個分區(默認只有loop0-loop7)
  1. losetup
  2. -a 顯示所有已經使用的回環設備狀態
  3. -d 卸除回環設備
  4. -f 尋找第一個未使用的回環設備
  5. -e <加密選項> 啟動加密編碼
  6. [root@rhel6 ~]# losetup -f //查找第一個未使用的回環設備
  7. /dev/loop0
  8. [root@rhel6 ~]# losetup -a //顯示所有已經使用的回環設備狀態
  9. [root@rhel6 ~]# dd if=/dev/zero of=loop.img bs=10M count=10
  10. 10+0 records in
  11. 10+0 records out
  12. 104857600 bytes (105 MB) copied, 0.794912 s, 132 MB/s
  13. [root@rhel6 ~]# losetup -f loop.img //將 loop.img 虛擬成第一個未使用的回環設備
  14. [root@rhel6 ~]# losetup -a
  15. /dev/loop0: [fd00]:26524 (/root/loop.img)
  16. [root@rhel6 ~]# losetup -f
  17. /dev/loop1
  18. [root@rhel6 ~]# mkfs.ext4 /dev/loop0
  19. [root@rhel6 ~]# mount /dev/loop0 /mnt/
  20. [root@rhel6 ~]# df -h
  21. Filesystem Size Used Avail Use% Mounted on
  22. /dev/mapper/Lrhel6-root
  23. 3.9G 2.4G 1.4G 64% /
  24. tmpfs 499M 0 499M 0% /dev/shm
  25. /dev/sda1 49M 27M 20M 59% /boot
  26. /dev/loop0 97M 5.6M 87M 7% /mnt
  27. [root@rhel6 ~]# umount /mnt/
  28. [root@rhel6 ~]# losetup -d /dev/loop0 //卸除回環設備
Copyright © Linux教程網 All Rights Reserved