yocto ビルドとアプリケーション ペイロードを含む squashfs ファイルを操作しようとしていますが、操作するたびsudo
にその後の実行に失敗します。root ユーザーが無効になっているため、他に選択肢はありません。
私のアプローチは、ファイルシステムを解凍し、解凍したファイルを再パッケージ化することです。そのプロセスでは、所有者がローカル ユーザーに設定されます (これは問題ありません。修正できます)。また、sudo から setuid が削除されるようです。
答え1
を使用してunsquashfs
ファイルを解凍すると、あなたが所有し、setuid ビットのないファイルのセットが取得されます。ただし、任意のファイルに setuid ビットを手動で戻すことができます ( を使用chmod u+s
)。もちろん、それらのファイルはあなたの ID に setuid されます。ただし、mksquashfs
オプションを追加してファイルを再パッケージ化すると-all-root
、ファイルシステム内のすべてのファイルはあなたではなく root によって所有され、setuid ビットは保持されます。