我喜欢创建一个 LVM 设备,其中物理卷是环回设备。
我已经阅读了很多文档和教程,就像这样。不幸的是,所有这些都基于lostup命令,该命令在下次重新启动时会丢失其配置。
我将使用 FSTAB 代替 RC.LOCAL(可能编写了 Lostup 脚本)进行 LVM 设置,以便在某些服务启动之前运行我的 LVM,但我不知道如何将命令复制到 FSTAB 中:“ Lostup /dev/loop0 /opt/my-data-file-0" 等等...
我怎么能做到这一点?
我找到了一个方便的方法来做到这一点:两个 SystemD 服务:
/mnt/systemd/system/loops-setup.service
[Unit]
Description=Setup loopback devices
DefaultDependencies=no
Conflicts=umount.target
Requires=lvm2-lvmetad.service mnt-host.mount
Before=local-fs.target umount.target
After=lvm2-lvmetad.service mnt-host.mount
[Service]
ExecStart=/sbin/losetup /dev/loop0 <LOOPBACK_FILE>
ExecStop=/sbin/losetup -d /dev/loop0
RemainAfterExit=yes
Type=oneshot
[Install]
WantedBy=local-fs-pre.target
Run Code Online (Sandbox Code Playgroud)
/mnt/systemd/system/loops-fsck.service
[Unit]
Description=Loopback devices filesystem check
DefaultDependencies=no
Conflicts=umount.target
Requires=loops-setup.service
Before=local-fs.target umount.target mnt-loops-loop0.mount
After=loops-setup.service
[Service]
ExecStart=/sbin/fsck -pfv /dev/loop0
Type=oneshot
[Install]
WantedBy=local-fs-pre.target
Run Code Online (Sandbox Code Playgroud)