通常のユーザーとしてコマンド ライン経由でシステム時間を設定するにはどうすればよいですか?

通常のユーザーとしてコマンド ライン経由でシステム時間を設定するにはどうすればよいですか?

通常のユーザーとして「date」を使用してシステム時間を設定できるようにする必要があります。

GPS 受信機に接続されたネットワークに接続されていない PC があり、時間を GPS 時間に同期したいと考えています。スクリプトから実行する必要があり、パスワード プロンプトを要求することはできません。

date cmd の権限を変更して、どのユーザーでも実行できるようにできると思います。これは可能ですか? また、どのように実行すればよいですか? 他に何か提案はありますか?

アップデート sudo の使用は許容されますが、パスワードプロンプトを要求することはできません。上記の文は編集されました。

答え1

2 つのオプションがあり、どちらの場合もセットアップにはルート アクセス (sudo) が必要です。

  1. sudo特定のユーザーが/bin/dateroot として実行できるようにするには、これを使用します。詳細については、こちらをご覧くださいman sudoersman sudo

  2. Linux の機能 CAP_SYS_TIME を使用すると、/bin/dateルート権限なしで時間を設定できます。詳細については、こちらをご覧くださいman capabilitiesman setcap

完全なガイドはここにあります: (2 つの回答を読んでください)https://unix.stackexchange.com/questions/78299/allow-a-specific-user-or-group-root-access-without-password-to-bin-date

関連情報