問題ID : 4904, 5134 : /etc/cron.allow, /etc/cron.deny が両方ない場合
- フォーラムは新サイトへ移行しました。
- このフォーラムではゲスト投稿が禁止されています
tnishita2
投稿数: 123
主に問題ID : 4904, 5134についてですが、4597, 4875, 4876, 4877, 4878, 4905, 5058の「参考」にも関係します。なお手元の確認環境はUbuntu 20.04です。解説に
> 1. 「/etc/cron.allow」ファイルがあれば、記述のあるユーザのみが利用可能
> 2. 「/etc/cron.allow」ファイルがなければ、「/etc/cron.deny」を参照し、そこに記述のないユーザが利用可能
> 3. 両方のファイルがなければ、rootユーザのみが利用可能
とあります。at, at.allow, at.deny に対してなら(問題ID : 4905)、man at.allow にも
> If neither exists, only the superuser is allowed to use at.
と書かれており、正しいです。しかしcron ではman crontab に
> If neither of these files exists, then depending on site-dependent configuration parameters, only the super
user will be allowed to use this command, or all users will be able to use this command.
とあり、「rootユーザのみが利用できる」「全てのユーザが利用できる」のどちらか一方を正解とすることはできません。実際、ping-t の参考にも
> なお、UbuntuなどのDebian系では「どちらも存在しない場合は全てのユーザーが利用可能」となります。
とあります。なお参考URL の
http://www.ibm.com/developerworks/jp/linux/library/l-job-scheduling.html#d
はリンク切れですが、
https://web.archive.org/web/20200131234327/http://www.ibm.com/developerworks/jp/linux/library/l-job-scheduling.html
には「もしどちらのファイルも存在しない場合には、このコマンドを使えるのはスーパー・ユーザーのみです。」とあります。しかしこれはこの記事が誤っていると思います。
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Automating_System_Tasks.html#s2-autotasks-cron-access
にはcron.allow, cron.deny 両方が存在しない場合の動作は言及がありません。
まとめると、(ディストリビューション/設定依存の動作を出題すること自体はともかくとするなら、)正解の選択肢は「ディストリビューション/設定により異なる」や「rootユーザのみが利用できるか、全てのユーザが利用できる」になると思います。
> 1. 「/etc/cron.allow」ファイルがあれば、記述のあるユーザのみが利用可能
> 2. 「/etc/cron.allow」ファイルがなければ、「/etc/cron.deny」を参照し、そこに記述のないユーザが利用可能
> 3. 両方のファイルがなければ、rootユーザのみが利用可能
とあります。at, at.allow, at.deny に対してなら(問題ID : 4905)、man at.allow にも
> If neither exists, only the superuser is allowed to use at.
と書かれており、正しいです。しかしcron ではman crontab に
> If neither of these files exists, then depending on site-dependent configuration parameters, only the super
user will be allowed to use this command, or all users will be able to use this command.
とあり、「rootユーザのみが利用できる」「全てのユーザが利用できる」のどちらか一方を正解とすることはできません。実際、ping-t の参考にも
> なお、UbuntuなどのDebian系では「どちらも存在しない場合は全てのユーザーが利用可能」となります。
とあります。なお参考URL の
http://www.ibm.com/developerworks/jp/linux/library/l-job-scheduling.html#d
はリンク切れですが、
https://web.archive.org/web/20200131234327/http://www.ibm.com/developerworks/jp/linux/library/l-job-scheduling.html
には「もしどちらのファイルも存在しない場合には、このコマンドを使えるのはスーパー・ユーザーのみです。」とあります。しかしこれはこの記事が誤っていると思います。
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Automating_System_Tasks.html#s2-autotasks-cron-access
にはcron.allow, cron.deny 両方が存在しない場合の動作は言及がありません。
まとめると、(ディストリビューション/設定依存の動作を出題すること自体はともかくとするなら、)正解の選択肢は「ディストリビューション/設定により異なる」や「rootユーザのみが利用できるか、全てのユーザが利用できる」になると思います。
hanajiro
投稿数: 49
・Ubuntu20.04での"man 1 crontab"の抜粋:
If neither of these files exists, then depending on site-dependent configuration parameters, only the super user will be allowed to use this command, or all users will be able to use this command.
・CentOS7での"man 1 crontab"の抜粋:
If neither of these files exists, only the super user is allowed to use cron.
・LPIのLearning Materialsの抜粋
(https://learning.lpi.org/en/learning-materials/102-500/107/107.2/107.2_01/):
If neither of these files exist, the user’s access to cron job scheduling depends on the distribution used.
出題者的には「ディストリビューションにより異なる」を正解とするのではないのでしょうか? もしくは 全てのユーザー/rootのみ どちらも正解とするか(複数選択解答にする)。
または明確に"Debian系では…""RedHat系では…"と添えた上で単一選択解答の出題にするかと思います。
しかし受験したわけではないのですが、もし本番でこの問題文の通り/この選択肢/単一選択で出題されたら、どう答えるかですね…後で正解不正解が判るわけではないですので…こういうどっちつかずな問題は出ないことを祈ります…
#あずき本には(atと違って)どちらも無い場合の挙動が書かれていないのは、この辺考慮しているのかな…
If neither of these files exists, then depending on site-dependent configuration parameters, only the super user will be allowed to use this command, or all users will be able to use this command.
・CentOS7での"man 1 crontab"の抜粋:
If neither of these files exists, only the super user is allowed to use cron.
・LPIのLearning Materialsの抜粋
(https://learning.lpi.org/en/learning-materials/102-500/107/107.2/107.2_01/):
If neither of these files exist, the user’s access to cron job scheduling depends on the distribution used.
出題者的には「ディストリビューションにより異なる」を正解とするのではないのでしょうか? もしくは 全てのユーザー/rootのみ どちらも正解とするか(複数選択解答にする)。
または明確に"Debian系では…""RedHat系では…"と添えた上で単一選択解答の出題にするかと思います。
しかし受験したわけではないのですが、もし本番でこの問題文の通り/この選択肢/単一選択で出題されたら、どう答えるかですね…後で正解不正解が判るわけではないですので…こういうどっちつかずな問題は出ないことを祈ります…
#あずき本には(atと違って)どちらも無い場合の挙動が書かれていないのは、この辺考慮しているのかな…
tnishita2
投稿数: 123
LPI Learning Materials というのがあるんですね。知りませんでした。(現在、無料なのはEssentials, 101, 102のようです。)
https://learning.lpi.org/en/learning-materials/102-500/107/107.2/107.2_01/#_configure_access_to_job_scheduling
に「ディストリビューション依存」と書いてある以上、LPIC で出題されるときにはちゃんと「ディストリビューション依存」が答えとして選べる問題になっていると信じたいですね。(LinuC はわかりませんが。)
https://learning.lpi.org/en/learning-materials/102-500/107/107.2/107.2_01/#_configure_access_to_job_scheduling
に「ディストリビューション依存」と書いてある以上、LPIC で出題されるときにはちゃんと「ディストリビューション依存」が答えとして選べる問題になっていると信じたいですね。(LinuC はわかりませんが。)