web-dev-qa-db-fra.com

Comment définir l'heure système en tant qu'utilisateur régulier via la ligne de commande?

Je dois pouvoir régler l'heure système à l'aide de 'date' en tant qu'utilisateur régulier.

J'ai un ordinateur non connecté en réseau connecté à un récepteur GPS et je souhaite synchroniser l'heure sur l'heure GPS. Doit être fait à partir d'un script et ne peut pas exiger de mot de passe Invite.

En pensant que je peux changer les autorisations sur la date cmd pour permettre l'exécution par n'importe quel utilisateur. Est-ce possible et comment je le fais? D'autres suggestions?

UPDATE L'utilisation de Sudo est acceptable, vous ne pouvez pas demander d'invite de mot de passe. Sentance édité ci-dessus.

2
tcashin

Vous avez deux options. Pour les deux, vous devez disposer d’un accès root (Sudo).

  1. Utilisez Sudo pour autoriser un utilisateur spécifique à exécuter /bin/date en tant que root. man sudoers et man Sudo pour en savoir plus.

  2. Utilisez la capacité CAP_SYS_TIME de Linux pour laisser /bin/date définir l'heure sans racine. man capabilities et man setcap pour en savoir plus.

Le guide complet est disponible ici: (lisez les deux réponses) https://unix.stackexchange.com/questions/78299/allow-a-specific-user-or-group-root- access-without-password-to-bin-date

2
niry