私はLinuxに初めて遭遇し、愚かな質問かもしれませんが、パーティションを読み取り専用に設定してから、そのパーティションのすべてのファイルを圧縮してtar.gzに入れる方法はありますか?このパーティションに?組み込みシステムでこれを行っているため、USBドライブにtar書き込みができません。
これはxyの問題かもしれません。コピー中にファイルを変更せずにプライマリパーティションを完全にコピーしようとしています。パーティションを読み取り専用で再マウントできましたが、もちろんパーティションにtarを書き込むことはできませんでした。
もっと良い方法がありますか?
答え1
いいえ、できません。読み取り専用としてマウントされたパーティションは読み取り専用なので、tar.gzファイルを書き込むことはできません。
つまり、この端末からウェブにアクセスできますか?私の考えでは、それらを別のコンピュータに同期させ、そこからtarを生成できる必要があると思います。
組み込みシステムでtarアーカイブを作成する必要があり、ネットワークに接続されている場合はnetcatを試すことができます。https://nakkaya.com/2009/04/15/using-netcat-for-file-transfers/
tarでは、コマンドに「O」または「--to-stdout」フラグを追加できます。出力をnetcatにパイプします。
受信側では以下を実行します。
nc -l -p 1234 > out.file
埋め込み側で次を実行します。
tar cvO /partition | nc -w 3 [receiving IP] 1234
netcatは暗号化されていないため、重要でない情報やローカルネットワークにのみお勧めします。
もう1つの可能性は、NFSやsshfsなどを使用してリモートドライブをマウントすることです。
内蔵コンピュータの場合:
sshfs [email protected]:/remote/computer/directory /mnt/remote
tar cvf /mnt/remote/files.tar /folder/to/tar
ルートパーティションを圧縮する場合は、アーカイブにジャンクファイルが蓄積されないように、リモートフォルダが空であることを確認してください。