小编Ger*_*der的帖子

使用 grub 调试 dpkg 配置失败

在我的一台机器上,dpkg 无法完成安装/配置 grub,只给出错误消息:

子进程安装后安装脚本返回错误退出状态 255

完整输出:

# dpkg --configure grub-pc
Setting up grub-pc (1.99-27+deb7u3) ...
device node not found
device node not found
device node not found
device node not found
Installation finished. No error reported.
Installation finished. No error reported.
dpkg: error processing grub-pc (--configure):
 subprocess installed post-installation script returned error exit status 255
Errors were encountered while processing:
 grub-pc
Run Code Online (Sandbox Code Playgroud)

日志文件中没有任何内容可以提供更多信息。

使用一些调试选项运行 dpkg 会显示更多信息:

# dpkg -D10113 --configure grub-pc
Setting up grub-pc (1.99-27+deb7u3) ...
D000002: fork/exec /var/lib/dpkg/info/grub-pc.postinst ( configure …
Run Code Online (Sandbox Code Playgroud)

dpkg grub2

6
推荐指数
1
解决办法
2678
查看次数

使用 udev 规则自动挂载 exfat

我正在尝试使用 udev 规则自动挂载各种 SD 卡。我从这些规则开始这个问题的帮助下解决了一个问题,现在我有以下情况:

ext4 和 vfat 格式的设备工作得很好,但是当我插入 exfat 或 NTFS 格式的磁盘时,我得到以下行mount

/dev/sda1 on /media/GoPro type fuseblk (rw,nosuid,nodev,noatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)
Run Code Online (Sandbox Code Playgroud)

目录列表如下所示:

$ ls -l /media/
ls: cannot access '/media/GoPro': Transport endpoint is not connected
total 0
d????????? ? ? ? ?            ? GoPro
Run Code Online (Sandbox Code Playgroud)

我不能在那个挂载点下做任何事情,即使是 root 也不能​​:

$ sudo ls -l /media/GoPro
ls: cannot access '/media/GoPro': Transport endpoint is not connected
Run Code Online (Sandbox Code Playgroud)

我从其他人那里找到的唯一问题Transport endpoint is not connected似乎是在未正确卸载磁盘后发生的。但是我在安装磁盘时遇到了问题。

我当前的 udev 规则如下所示:

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
ACTION=="add", …
Run Code Online (Sandbox Code Playgroud)

udev fuse exfat

6
推荐指数
1
解决办法
2088
查看次数

非交互运行时 bash 测试错误结果

当需要重新启动时,我尝试通过脚本重新启动一些 Ubuntu 服务器。

当我将测试作为非交互式命令执行 bash 时,我得到的结果是不需要重新启动,即使文件/var/run/reboot-required存在。

usera@client:~$ ssh server02 bash -c 'test -f /var/run/reboot-required && echo sudo reboot || echo "$(hostname): no reboot required"'
server02: no reboot required
Run Code Online (Sandbox Code Playgroud)

当我通过 SSH 登录到同一服务器并手动运行测试时,我得到了正确的结果sudo reboot

usera@client:~$ ssh server02
Last login: Tue Jun 14 08:03:00 2022 from 146.140.16.1
usera@server02:~$ test -f /var/run/reboot-required && echo sudo reboot || echo "$(hostname): no reboot required"
sudo reboot
usera@server02:~$ bash -c 'test -f /var/run/reboot-required && echo sudo reboot || echo "$(hostname): no reboot required"' …
Run Code Online (Sandbox Code Playgroud)

bash ssh ubuntu

3
推荐指数
1
解决办法
330
查看次数

标签 统计

bash ×1

dpkg ×1

exfat ×1

fuse ×1

grub2 ×1

ssh ×1

ubuntu ×1

udev ×1