Raspberry Pi 3,Ubuntu Core 18,安装 USB 磁盘失败

Raspberry Pi 3,Ubuntu Core 18,安装 USB 磁盘失败

我在 Raspberry 3 上运行 Ubuntu Core,并且尝试安装外部 USB 磁盘,并按照以下说明操作:安装说明

运行命令时

igor-lopez@localhost:~$ systemctl start home-igor-lopez-backup-vol1.mount

我遇到了失败:

无法启动 home-igor-lopez-backup-vol1.mount:单元 home-igor-lopez-backup-vol1.mount 未正确加载:参数无效。

我的挂载文件(/writable/system-data/etc/systemd/system/home-igor-lopez-backup-vol1.mount)如下所示:

[Unit]
Description=Mount for Backup Vol1

[Mount]
What=/dev/disk/by-uuid/eb48ffde-6fcd-48e4-a31b-316628728f4c
Where=/home/igor-lopez/backup/vol1
Type=ext4

[Install]
WantedBy=multi-user.target

并且挂载点确实存在:

igor-lopez@localhost:~/backup/vol1$ pwd
/home/igor-lopez/backup/vol1

磁盘也是如此:

/dev/磁盘/by-uuid/eb48ffde-6fcd-48e4-a31b-316628728f4c -> ../../sda1

由于用户是在安装期间创建的,并连接到我的启动板帐户,因此我的用户名中有一个破折号。挂载文件的名称应与挂载点匹配,但斜线被替换为破折号,但如果可以避免,我不想更改用户名。
使用 sudo 运行相同的命令会得到更多信息:

1 月 5 日 13:24:28 localhost.localdomain systemd1: home-igor-lopez-backup-vol1.mount: Where= 设置与单元名称不匹配。拒绝。

因此它看起来像挂载文件条目:

Where=/home/igor-lopez/backup/vol1  

是罪魁祸首,我不知道如何解决它。

尝试根据 Grawity 的回复将位置更改为:

Where=/home/igor\x2dlopez/backup/vol1  

但这并没有帮助。

答案1

由于单元文件名不能包含斜杠,因此用破折号代替。但为了避免歧义,起初必须用其他内容替换;systemd 使用 C 风格的\x##十六进制转义来替换。因此igor-lopez必须写为igor\x2dlopez

用于systemd-escape查找正确的名称:

$ systemd-escape --path /home/igor-lopez/backup/vol1
home-igor\x2dlopez-backup-vol1

相关内容