dd error: resource busy

# 执行dd命令

sudo dd if=CentOS7.dmg of=/dev/disk2s4 bs=1m

# PROBLEM dd: /dev/disk2s4: Resource busy

# 查看磁盘

df -h

# 有一行类似 /dev/disk2s4 30408672 11016960 19391712 37% 0 0 100% /Volumes/CentOS


# SOLUTION

# osx用disk1、disk2来标识不同的物理磁盘,用disk2s1、disk2s2…表示disk1的第一和第二分区
# linux下用sda、sdb来标识不同的物理磁盘,用sda1、sda2…来表示同一磁盘不同的分区

# umount /dev/disk2

sudo diskutil umount /dev/disk2s2

# 再次执行

sudo dd if=CentOS7.dmg of=/dev/disk2 bs=1m

# 查看写入状态

iostat -w 2

# 遗留问题,在MAC上写盘,总是写不成功,一直写到溢出
# 估计是应该把/dev/disk2改成/dev/disk2c1,未尝试,已写坏两个U盘

经常卡住Current MAC: 00:1a:2b:ce:85:d1 (Ayecom Technology Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:1a:2b:61:6a:31 (Ayecom Technology Co., Ltd.) Current MAC: 00:1a:2b:61:6a:31 (Ayecom Technology Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:22:68:fc:82:c9 (Hon Hai Precision Ind. Co., Ltd.) Current MAC: 00:22:68:fc:82:c9 (Hon Hai Precision Ind. Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:22:68:78:f3:28 (Hon Hai Precision Ind. Co., Ltd.) Current MAC: 00:22:68:78:f3:28 (Hon Hai Precision Ind. Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:22:68:e0:89:01 (Hon Hai Precision Ind. Co., Ltd.) Current MAC: 00:22:68:e0:89:01 (Hon Hai Precision Ind. Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.)Current MAC: 00:22:68:e0:89:01 (Hon Hai Precision Ind. Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:1a:2b:40:73:11 (Ayecom Technology Co., Ltd.) Network driver didn't actually change to the new MAC!! New MAC: 00:14:bf:98:b8:6e (Cisco-Linksys LLC) Current MAC: 00:14:bf:98:b8:6e (Cisco-Linksys LLC) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:1a:2b:a7:54:6f (Ayecom Technology Co., Ltd.) ❌ MAC 地址更改失败: Command '['sudo', 'macchanger', '-m', '00:1A:2B:40:73:11', 'wlan0mon']' returned non-zero exit status 1. Current MAC: 00:1a:2b:a7:54:6f (Ayecom Technology Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:16:3e:f1:cd:42 (Xensource, Inc.) Current MAC: 00:1a:2b:a7:54:6f (Ayecom Technology Co., Ltd.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) New MAC: 00:1a:2b:0d:95:d8 (Ayecom Technology Co., Ltd.) Current MAC: 00:16:3e:f1:cd:42 (Xensource, Inc.) Permanent MAC: 7c:dd:90:23:33:28 (Shenzhen Ogemray Technology Co., Ltd.) ✅ MAC 地址更改成功: 00:1A:2B:61:6A:31 [ERROR] Could not change MAC: interface up or insufficient permissions: Device or resource busyMAC 地址更改失败: Command '['sudo', 'macchanger', '-m', '00:22:68:6F:ED:10', 'wlan0mon']' returned non-zero exit status 1. ✅ MAC 地址更改成功: 00:22:68:FC:82:C9 ✅ MAC 地址更改成功: 00:22:68:78:F3:28 ✅ MAC 地址更改成功: 00:22:68:E0:89:01 ✅ MAC 地址更改成功: 00:1A:2B:A7:54:6F ✅ MAC 地址更改成功: 00:16:3E:F1:CD:42 ✅ MAC 地址更改成功: 00:14:BF:98:B8:6E ✅ MAC 地址更改成功: 00:1A:2B:0D:95:D8
03-26
### JavaScript 中 `dd` 对象的错误处理方法 在 JavaScript 中,如果要为某个对象(例如假设的对象 `dd`)定义一个错误处理函数并通过 `alert` 弹窗显示错误信息,则可以通过以下方式实现: #### 使用默认参数与箭头函数简化逻辑 可以利用 ES6 的默认参数功能来增强代码可读性和简洁性。以下是具体实现方案: ```javascript // 定义 dd 对象及其 error 方法 const dd = { error: (errMessage = "An unknown error occurred") => { alert(errMessage); // 显示错误消息 } }; // 调用 error 方法并传递自定义错误信息 dd.error("Custom error message"); // 如果未提供任何参数,默认会显示预设的消息 dd.error(); ``` 上述代码中,通过为 `error` 函数设置了一个默认参数 `errMessage`[^1],从而实现了即使不传入参数也能正常运行的功能。 #### 处理复杂场景下的动态错误信息 对于更复杂的场景,可能需要根据不同的条件生成动态的错误信息。此时可以结合三元运算符或其他控制结构完成此操作: ```javascript // 动态生成错误信息的例子 const generateErrorMessage = (code) => { switch (code) { case 404: return "Resource not found"; case 500: return "Internal server error"; default: return "Unknown error code"; } }; const dd = { error: (errorCode, customMsg) => { const msg = customMsg || generateErrorMessage(errorCode); alert(msg); } }; // 测试不同情况下的调用 dd.error(404); // 输出 "Resource not found" dd.error(500, "Server down"); // 输出 "Server down" dd.error(); // 默认输出 "Unknown error code" ``` 这里引入了辅助函数 `generateErrorMessage` 来根据不同状态码返回对应的描述文字,并允许用户覆盖这些默认值。 #### 结合正则表达式提取特定模式中的错误详情 假如接收到的是字符串形式的数据包,其中包含了潜在的错误提示部分,那么就可以借助 LuaJIT 风格的正则匹配工具库如 OpenResty 的 Nginx 模块来进行解析[^2]: ```lua local subject = [[Error details: Invalid input detected at offset 7]] local regex = [=[Error details:\s*(.+)\sat\s*offset\s+(\d+)]]=] -- 执行查找操作 local from, to, errDetails, offset = ngx.re.find(subject, regex) if errDetails then -- 将捕获组转换成 JSON 字符串以便后续传输给前端展示 local errorMessage = string.format('"%s" near position %d', errDetails, tonumber(offset)) ngx.say(errorMessage) else ngx.log(ngx.ERR, "Failed to parse the given text!") end ``` 尽管这是基于 NGINX-Lua API 编写的脚本片段,但它展示了如何高效地定位和抽取嵌套于较大数据流内的关键字段的技术思路。将其移植到纯 JS 实现也并不困难。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值