Xen虚拟机Linux下的loop设备增加
默认情况下Linux的loop设备从loop0 - loop7, 总共8个虚拟设备,如果使用Xen安装虚拟机过多时,你会发现loop 设备不够用的问题;-- By default there are 7 devices available, named /dev/loop0 through to /dev/loop7 . INFORMATIONSYou can find the loo
默认情况下Linux的loop设备从loop0 - loop7, 总共8个虚拟设备,如果使用Xen安装虚拟机过多时,你会发现loop 设备不够用的问题;
-- By default there are 7 devices available, named /dev/loop0 through to /dev/loop7 .
INFORMATIONS
You can find the loop device like that :
# ls -al /dev/loop*
brw-r----- 1 root disk 7, 0 Mar 19 09:34 /dev/loop0
brw-r----- 1 root disk 7, 1 Mar 19 09:34 /dev/loop1
brw-r----- 1 root disk 7, 2 Mar 19 09:34 /dev/loop2
brw-r----- 1 root disk 7, 3 Mar 19 09:34 /dev/loop3
brw-r----- 1 root disk 7, 4 Mar 19 09:34 /dev/loop4
brw-r----- 1 root disk 7, 5 Mar 19 09:34 /dev/loop5
brw-r----- 1 root disk 7, 6 Mar 19 09:34 /dev/loop6
brw-r----- 1 root disk 7, 7 Mar 19 09:34 /dev/loop7
The creation of the loop device is very simple but you have 2 options for this creation one is without reboot and the other one is with a reboot.
HOT CREATION
Creation of loop8 :
# mknod -m640 /dev/loop8 b 7 8
-m640 define the permission of the device
/dev/loop8 define the name of the device
b for the creation of the special block device
7 8 the number 7 AND 8 define the MAJOR AND the MINOR
Check if the loop is created
# ls -l /dev/loop8
brw-r----- 1 root root 7, 8 Oct 3 14:54 /dev/loop8
Now you have the applied the good owner on this device
#chown root:disk /dev/loop8
Now you have to change the module limitation and reboot your system.
STANDARD CREATION
You have to modify this file /etc/udev/makedev.d/50-udev.nodes
#vim /etc/udev/makedev.d/50-udev.nodes
loop0
loop1
loop2
loop3
loop4
loop5
loop6
loop7
loop8
parport0
parport1
parport2
parport3
net/tun
ppp
console
null
zero
Now you have to change the module limitation and reboot your system.
MODULE LIMITATION
In the kernel, you have to allow more creation of loop device.
There is an absolute maximum of 256 devices limited in the kernel. The default limit is set to 8.
# modinfo loop
filename: /lib/modules/2.6.18-53.1.14.el5.centos.plusxen/kernel/drivers/block/loop.ko
alias: block-major-7-*
license: GPL
srcversion: 82DB6DB3DABF3B945D6394D
depends:
vermagic: 2.6.18-53.1.14.el5.centos.plusxen SMP mod_unload gcc-4.1
parm: max_loop:Maximum number of loop devices (1-256) (int)
module_sig: 883f35047d15787f0a982eee333b2d8112f51f09f68f09b79223a34983b3aef66820c08cc6e8cd3709f6d7c56171e5a579ee1ca2ca56349c56b983a7c46
Now you have to change this value with the modprobe.conf file.
#vim /etc/modprobe.conf
...
options loop max_loop=64
...
TIPS & COMMAND
The command line losetup is used for set up and control loop device.
# losetup
usage:
losetup loop_device # give info
losetup -d loop_device # delete
losetup -f # find unused
losetup -a # list all used
losetup -r # read-only loop
losetup [-e encryption] [-o offset] [-r] {-f|loop_device} file # setup
其实只要按照上面的
#vim /etc/modprobe.conf
...
options loop max_loop=64
步骤修改一下配置,重新启动机器就OK了。
更多推荐
所有评论(0)