archivemountにoverlayfsをマウントしようとしています(フォローアップとして)。Linuxの階層型または仮想ファイルシステム)。
私はこれをやっています:
mkdir -p {upper,work,mount}
tar zcf somefile upper/ work/ mount/
mkdir tmp
archivemount -o allow_root somefile tmp
sudo mount -t overlay -o lowerdir=/,upperdir=tmp/upper,workdir=tmp/work overlayfs tmp/mount
インストールされたアーカイブへのルートアクセスを許可しました(このために/etc/fuse.confを更新する必要がありました)。次のように失敗します。
mount: tmp/mount: wrong fs type, bad option, bad superblock on overlayfs, missing codepage or helper program, or other error.
元のフォルダで動作します。確認してみると、デフォルトではarchivemount
読み書きが基本インストールになっています。各フォルダにファイルを書き込むこともできます。アクセス権も確認してみたのに合うようです。ルートはマウントにアクセスして書き込むことができます。
私は何が間違っていましたか?
ベストアンサー1
unionfs
もっとよくしてくださいunionfs-fuse $(pwd)/tmp/upper:$(pwd) $(pwd)/mount
。ただし、マウントポイントはarchivemount
ファイルシステムの外部にある必要があるようです。
マウントポイントを入れ子にしても何の利点もなく、root権限(インストールを除く)が必要ないという利点があるので、これが可能かもしれません。
なぜ
マウントポイントがあるべき理由がわかりませんarchivemount
。それがエラーであれば、そう言える証拠はほとんどありません。私は、マウントポイントがUnionfsを使用するときにrootとして実行されたarchivemountへの唯一のファイルアクセスだと思います。他のファイルアクセスはあなたの方法で行うことができます。
mount -t overlay
親レイヤーとワークスペースが存在できない場合は、archivemount
ルートにこのマウントにアクセスする権限がないためです。努力する:
archivemount somefile tmp
ls tmp/
sudo ls tmp/ #gets permission denied