centos 上的 Systemd 挂载单元配置 *.img 文件

centos 上的 Systemd 挂载单元配置 *.img 文件

需要创建一个虚拟文件samba.img,该文件将成为一个设备,并在系统启动时自动挂载它。

从文件创建虚拟磁盘

fallocate -l 2G /root/img/samba.img
mkfs.ext4       /root/img/samba.img

制作挂载点

sudo mkdir /srv/smb

我创建一个挂载文件以在系统启动时运行

vim /etc/systemd/system/mnt-driveone.mount

mnt-driveone.mount 包含

[Unit]
Description=Additional drive

[Mount]
What=/root/img/samba.img
Where=/srv/smb
Type=ext4
Options=defaults

[Install]
WantedBy=multi-user.target

接下来,添加到自动加载

systemctl enable mnt-driveone.mount

跑步

 systemctl start mnt-driveone.mount

我收到一个错误

mnt-driveone.mount: Where= setting doesn't match unit name. Refusing.

我看了一下,当路径写错或者有空格的时候就会出现这样的错误,但是我的目录存在并且没有空格。

答案1

好吧,错误告诉你出了什么问题!

阅读man systemd.mount以了解单元文件名要求:

挂载单元必须以其控制的挂载点目录命名。
示例:挂载点/home/lennart必须在单元文件中配置home-lennart.mount。有关用于将文件系统路径转换为单元名称的转义逻辑的详细信息,请参阅systemd.unit(5)。请注意,安装单元无法模板化,也无法通过创建附加符号链接来将多个名称添加到安装单元。

所以你的单元文件必须命名为srv-smb.mount.

相关内容