device or resource busy问题处理

DEVICE OR RESOURCE BUSY
1、umount -lf  挂载点
2、fuser -m 挂载磁盘,找到进程后杀死
3、lsof   挂载磁盘
4、dmsetup remove 挂载磁盘(尽量不要用dmsetup remove_all)
5、已经umount并且没有找到相应的进程
通过dmsetup  ls或者dmsetup info 查找挂载磁盘的 主设备号码和副设备号码
lsof | grep
6、如果有监控主机对此主机添加的监控,需要监控方面停止或删除对此主机的监控

注释:
使用dmsetup remove_al后,如果包含裸设备需执行下列操作
执行udevadm trigger,ls /dev查看时候生成设备名
启动裸设备rcraw start

CRM-Book:~ # dmsetup ls
[2020-03-17 12:14:48]
vg1-lv_tsm (254:2)
vg1-lv_home (254:1)
vg_data-lv_data (254:3)
vg1-lv_root (254:0)
CRM-Book:~ # dmsetup info
Name:              vg_data-lv_data
State:             ACTIVE
Read Ahead:        1024
Tables present:    LIVE
Open count:        1
Event number:      0
Major, minor:      254, 3
Number of targets: 2
UUID: LVM-XAMINeFPYbAKAUi3FAN3BWTigFAeVRfwvrzfFI9otme1snC6S0mBbd4ANBKNqmT1
---------------------------------------------------
注释:
Major, minor  主设备号码和副设备号码
----------------------------------------------------
CRM-Book:~ # cat /proc/mounts |grep data
CRM-Book:~ # lsof |grep "254,3"
netserver  45113  root  txt  REG  254,3  319118  12884902406  /install_check/net_test/netserver
CRM-Book:~ # ls -l /proc/45113
dr-xr-xr-x 2 root root 0 Mar 17 14:27 attr
-r-------- 1 root root 0 Mar 17 14:27 auxv
-r--r--r-- 1 root root 0 Mar 17 14:27 cgroup
--w------- 1 root root 0 Mar 17 14:27 clear_refs
-r--r--r-- 1 root root 0 Mar 14 16:47 cmdline
-rw-r--r-- 1 root root 0 Mar 17 14:27 comm
-rw-r--r-- 1 root root 0 Mar 17 14:27 coredump_filter
-r--r--r-- 1 root root 0 Mar 17 14:27 cpuset
lrwxrwxrwx 1 root root 0 Mar 14 17:46 cwd -> /tmp
-r-------- 1 root root 0 Mar 17 14:27 environ
lrwxrwxrwx 1 root root 0 Mar 14 16:54 exe -> /install_check/net_test/netserver
dr-x------ 2 root root 0 Mar 14 17:46 fd
dr-x------ 2 root root 0 Mar 14 17:46 fdinfo
-rw-r--r-- 1 root root 0 Mar 17 14:27 gid_map
-r-------- 1 root root 0 Mar 17 14:27 io
-r--r--r-- 1 root root 0 Mar 17 14:27 latency
-r--r--r-- 1 root root 0 Mar 17 14:27 limits
-rw-r--r-- 1 root root 0 Mar 17 14:27 loginuid
-rw-r--r-- 1 root root 0 Mar 17 14:27 make-it-fail
dr-x------ 2 root root 0 Mar 17 14:27 map_files
-r--r--r-- 1 root root 0 Mar 14 17:46 maps
-rw------- 1 root root 0 Mar 17 14:27 mem
-r--r--r-- 1 root root 0 Mar 17 14:27 mountinfo
-r--r--r-- 1 root root 0 Mar 17 14:27 mounts
-r-------- 1 root root 0 Mar 17 14:27 mountstats
dr-xr-xr-x 6 root root 0 Mar 17 14:27 net
dr-x--x--x 2 root root 0 Mar 17 14:27 ns
-r--r--r-- 1 root root 0 Mar 17 14:27 numa_maps
-rw-r--r-- 1 root root 0 Mar 17 14:27 oom_adj
-r--r--r-- 1 root root 0 Mar 17 14:27 oom_score
-rw-r--r-- 1 root root 0 Mar 17 14:27 oom_score_adj
-r-------- 1 root root 0 Mar 17 14:27 pagemap
-r-------- 1 root root 0 Mar 17 14:27 patch_state
-r-------- 1 root root 0 Mar 17 14:27 personality
-rw-r--r-- 1 root root 0 Mar 17 14:27 projid_map
lrwxrwxrwx 1 root root 0 Mar 14 17:46 root -> /
-rw-r--r-- 1 root root 0 Mar 17 14:27 sched
-r--r--r-- 1 root root 0 Mar 17 14:27 schedstat
-r--r--r-- 1 root root 0 Mar 17 14:27 sessionid
-rw-r--r-- 1 root root 0 Mar 17 14:27 setgroups
-r--r--r-- 1 root root 0 Mar 17 14:27 smaps
-r-------- 1 root root 0 Mar 17 14:27 stack
-r--r--r-- 1 root root 0 Mar 14 11:07 stat
-r--r--r-- 1 root root 0 Mar 14 17:15 statm
-r--r--r-- 1 root root 0 Mar 14 16:47 status
-r-------- 1 root root 0 Mar 17 14:27 syscall
dr-xr-xr-x 3 root root 0 Mar 17 09:59 task
-r--r--r-- 1 root root 0 Mar 17 14:27 timers
-rw-rw-rw- 1 root root 0 Mar 17 14:27 timerslack_ns
-rw-r--r-- 1 root root 0 Mar 17 14:27 uid_map
-r--r--r-- 1 root root 0 Mar 17 14:27 wchan
CRM-Book:~ # ls -l /proc/45113/fd/
[2020-03-17 14:28:17]
total 0
lr-x------ 1 root root 64 Mar 14 17:46 0 -> /dev/null
l-wx------ 1 root root 64 Mar 14 17:46 1 -> /tmp/netserver.debug_45113
l-wx------ 1 root root 64 Mar 14 17:46 2 -> /tmp/netserver.debug_45113
lrwx------ 1 root root 64 Mar 14 17:46 3 -> socket:[348307]
l-wx------ 1 root root 64 Mar 14 17:46 4 -> /tmp/netserver.debug_45113
lr-x------ 1 root root 64 Mar 14 17:46 5 -> /dev/null
CRM-Book:~ # kill -9 45113
[2020-03-17 14:30:29]
CRM-Book:~ # lvs
[2020-03-17 14:30:38]
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_home vg1 -wi-ao---- 60.00g 
lv_root vg1 -wi-ao---- 144.52g 
lv_tsm vg1 -wi-ao---- 10.00g 
lv_data vg_data -wi-ao---- 21.83t 
CRM-Book:~ # lsof |grep "254,3"
[2020-03-17 14:30:55]


 

当遇到“Device or resource busy”(设备或资源忙)这个错误时,通常表示某个系统资源正被其他进程占用。以下是一些常见的解决办法: ### 步骤一:确定是哪个资源导致的问题 1. **查看具体的报错信息**:很多时候,“device or resource busy”的提示会伴随着受影响的具体文件、目录或者设备名称。 - 如果涉及的是磁盘分区,可能是`umount`命令失败; - 如果涉及的是端口,则说明该端口正在被某些服务监听。 2. **检查是否有程序占用了目标资源** 使用工具如 `lsof`, `ps aux | grep <resource>` 或者直接通过 `/proc/<pid>/fd/` 查看当前打开的文件描述符等手段定位到冲突源头所在位置。 --- ### 解决方案 #### 对于挂载点 (Mount Point) 如果是在尝试卸载存储介质(硬盘/U盘)时出现问题: ```bash sudo umount /dev/sdXn # sdX代表具体驱动器编号,n为分区数字序号 ``` 若依旧无法成功解除绑定关系的话可以考虑强制操作: ```bash sudo umount -l /path/to/mountpoint # 延迟式卸除(lazy unmount),允许仍在使用的文件继续读取直到完成为止再彻底断开连接 sudo umount -f /path/to/mountpoint # 强制卸载(forcefully unmount),可能会造成数据丢失风险需谨慎对待 ``` #### 针对网络端口号(busy port scenario) 先查询哪些应用绑定了指定端口: ```bash netstat -tulnp |grep :80 # OR use lsof alternative on some systems instead of netstat utility above. lsof -i:<port_number> ``` 然后杀死不需要的服务实例释放端口使用权: ```bash kill [PID] #(正常关闭对应的应用程序即可停止对该端口的所有访问活动) pkill processname #(按照名字终止所有关联此名下的线程任务组别) ``` --- ### 注意事项 - 在执行上述指令前最好确认清楚状况以免误删重要资料。 - 系统核心组件所依赖的重要路径不应该随意修改状态例如根目录(/root/)之类的敏感部位更不应轻易动手脚除非确切知道自己在做什么并且有备份恢复计划以防万一发生意外情况也能迅速挽回损失减少麻烦程度。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

工具人01

仗剑天涯,从你的打赏开始

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值