24 特定のユーザーのファイルの有効なアクセス許可をテストすることはできますか? 私は通常これをしてsu userからファイルにアクセスしますが、今はシェルを持たないユーザー(つまりシステムユーザー)でこれをテストしたいです permissions — dtech ソース
23 このsudoコマンドは、-uオプションを使用して特定のユーザーとして何でも実行できます。シェルを心配する代わりにcat、ターゲットユーザーとしてファイルを実行(または実行)するだけです。 $ sudo -u apache cat .ssh/authorized_keys cat: .ssh/authorized_keys: Permission denied — ckhan ソース catそれはあなたが大規模なファイルやバイナリファイルをテストしているのに...最良の選択は...おそらくではありません — アレクシス・ヴィルケ
24 次のようなスクリプトで使用すると便利だと思いました sudo -u <user> test -r <file-to-test> && ... — user72025 ソース 1 実際にファイルを変更/作成することなく、読み取り可能(-r)、書き込み可能(-w)、実行可能(-x)をテストできるため、ベストアンサーです。man test詳細は — トーマス
12 sudo -u <user> test -r <file-to-test>; echo $? echo $?一部の意志出力試験の終了ステータス。 0操作が成功した場合に出力されることをここで覚えておいてください!または、ゼロ以外、たとえば1そうでない場合。 同様トーマスさんのコメント@ @ user72025の答えに、使用man testのように、より多くの動作試験を取得するにはtest -x、テスト実行可能にtest -wな筆記用など — タイラー・コリアー ソース 1 私にとって、これは最も役立つ答えです。user72025のものは近いものでしたが、結果が何であるかわかりませんでした。あなたはそれを明らかにしました。ありがとう。投票。 — インスピレーション
6 su -s <shellname> <username>特定のユーザーとして特定のシェルを入力するために使用できることがわかりました。その後、通常どおりファイルのアクセス許可をテストできます。 例えば: su -s /bin/bash Debian-exim touch /etc/exim4/exim4.conf.template — dtech ソース 非常に興味深いオプション。 — アレックス
cat
それはあなたが大規模なファイルやバイナリファイルをテストしているのに...最良の選択は...おそらくではありません