
私は物理ボリュームがループバックデバイスであるLVMデバイスを作成したいと思います。
私は次のような多くのドキュメントとチュートリアルを読んだ。これ。残念ながら、これらすべては次のものに基づいています。設定が失われました。次の再起動時に構成が失われるコマンド。
一部のサービスが開始される前にLVMを実行するようにLVM設定に対してRC.LOCAL(おそらくlosstupスクリプトが作成された場所)の代わりにFSTABを使用しますが、FSTABで次のコマンドを再現する方法がわかりません。 "losstup / dev /loop0 /opt/my-data-file-0"など...
どうすればいいですか?
答え1
私はこれを行う便利な方法を見つけました。 2 つの 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
/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