通常のユーザーとしてデバイスにファイルシステムを抽出しますが、正しいUIDとGIDを維持してください。

通常のユーザーとしてデバイスにファイルシステムを抽出しますが、正しいUIDとGIDを維持してください。

私は組み込みシステムのための多くの開発のためにYoctoを使用しています。

最終出力として、Yoctoはファイルシステムのタールボールを作成し、それを組み込みシステムのルートファイルシステムとなるSDカードのext4パーティションに抽出します。

SDカードのext4パーティションに対するすべての権限を適切に設定するために、現在sudoを使用してファイルを解凍しています。つまり、root権限を使用してファイルの削除などの操作を繰り返し実行することを意味します。バグやその他の理由文書が原因で、システムから何かを削除します。

明らかに、私のコンピュータではなく、組み込みファイルシステムへのルートアクセスのみが必要です。

一般ユーザーとしてファイルを解凍し、結果ファイルシステムから正しいUIDを取得する方法はありますか?問題が解決したら、デバイスのインストール方法を変更するだけです。それともchrootトリックを使用しますか?

答え1

たぶんあなたが探している tarオプションではないでしょうか?-p

からman 1 tar

-p, --preserve-permissions, --same-permissions
ファイル権限に関する情報を抽出する(スーパーユーザーの場合はデフォルト)

--numeric-ownerまた、--xattrs次に興味があるかもしれません。

--numeric-owner
ユーザー/グループ名には常に数値を使用します。

--xattrsは
拡張属性サポートを有効にします。

関連情報