BusyBoxを実行している組み込みデバイスがあります。overlayfs
でマウントされたディレクトリがいくつかあり、次のスタイルのコマンドを使用して、作業ディレクトリとデータディレクトリが別々のUBIパーティションにマウントされています。
メインのルートファイルシステムは、新しいバージョンで更新されたsquashfs
読み取り専用イメージです。 squashfs
への変更が行われるように、特定のファイルに加えられた変更を削除する必要があります。どうやってやるの?
mount -t overlay etc_overlay -o lowerdir=/etc,upperdir=/mnt/config/.data,workdir=/mnt/config/.work /etc
/mnt/config/.dataおよび/mnt/config/.workのフォルダーには、変更が含まれています。それらを邪魔にならない場所に移動して、新しいものを作成できます。オーバーレイをアンマウントし、クリーンな上位ディレクトリで再マウントします。
umount /etc
mv /mnt/config/.data /mnt/config/.data.old
mv /mnt/config/.work /mnt/config/.work.old
mkdir /mnt/config/.data
mkdir /mnt/config/.work
mount -t overlay etc_overlay -o lowerdir=/etc,upperdir=/mnt/config/.data,workdir=/mnt/config/.work /etc
古いオーバーレイへのすべての変更は、必要に応じて/mnt/config/.data.old
にあります。 /mnt/config/.work.old
は、正しくマウント解除されている場合、作業フォルダー以外は空にする必要があります。