Chinaunix首页 | 论坛 | 博客
  • 博客访问: 281611
  • 博文数量: 56
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 642
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-16 15:11
文章分类

全部博文(56)

文章存档

2017年(6)

2015年(3)

2014年(41)

2013年(6)

我的朋友

分类: LINUX

2014-02-17 18:53:37

ISSUE:
[root@yangyangtest ~]# virsh -c lxc:/// start lxc
error: Failed to start domain lxc
error: internal error: guest failed to start: internal error: Unable to find a free loop device in /dev

表示loop Device以已经用完。最简单有效的方法是释放一些被占用的loop device,可以用如下命令:
losetup -d /dev/loop7 
(当然这里的loop7根据自己的情况来选择释放哪个loop device)

ll /dev/loop*   #查看有哪些loop deive
losetup -a   #show status of all loop devices
losetup /dev/loop0   #如果该设备loop已被使用,则会得到如下的提示
/dev/loop0: [0801]:266646 (/share/xvs/var/tmp-img_VTD_ASS_04_131), offset 16384
losetup /dev/loop6   #如果该设备loop未被使用,则会得到如下的提示
loop: can’t get info on device /dev/loop6: No such device or address
losetup -d /dev/loop7     #detach the file or device associated with the specified loop device(s)

It is possible to increase the number of available loop devices. Free all loop devices, and add a line with the following to /etc/modprobe.conf(有的系统中是:/etc/modprobe.d/modprobe.conf):
options loop max_loop=64

或者直接运行命令(重启后将失效):
rmmod loop; modprobe loop max_loop=64

或者再grub中添加:
max_loop=64  #在kernel的启动行

和loop device相关的重要源代码文件为loop.c,里面有关于max_loop等的具体设置和实现:
drivers/block/loop.c
阅读(4182) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~