Tu peux regarder la documentation sur les [doc]permissions[/doc] et les [doc]droits[/doc] pour comprendre (il est déconseillé et dangereux d'exécuter des commandes sans les comprendre, certaines [doc]commandes_dangereuses[/doc] peuvent tuer le système). Le manuel et l'aire de bash peuvent être utiles aussi (« man <commande> » ou « help <commande> » dans le terminal).
Le plus simple à expliquer, c'est avec le terminal (Ctrl + Alt + T). On va prendre pour exemple gedit. Il peut y avoir des différences pour certains programmes. Pour que ça marche, il faut le faire en étant administrateur.
- Premièrement, il faut trouver l'exécutable correspondant :
$ type gedit
gedit est /usr/bin/gedit
- On vérifie que c'est bien le fichier que l'on veut :
$ file /usr/bin/gedit
/usr/bin/gedit: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped
Le résultat peut changer, mais l'important est que se soit bien un exécutable. Si c'est un script, c'est plus compliqué, mais on peut considérer que c'est pareil tant que la sécurité n'est pas capitale. Si c'est un lien, il faut le faire sur la cible du lien :
$ file /usr/bin/firefox
/usr/bin/firefox: symbolic link to `../lib/firefox-3.6.20/firefox.sh'
$ file /usr/lib/firefox-3.6.20/firefox.sh
/usr/lib/firefox-3.6.20/firefox.sh: POSIX shell script text executable
- Vérifies les propriétés du fichier :
$ls -l /usr/bin/gedit
-rwxr-xr-x 1 root root 688064 2010-06-24 22:35 /usr/bin/gedit
« -rwxr-xr-x » signifie que le propriétaire (les 3 premières lettres) à le droit de lire (r), écrire (w) et exécuter (x) le fichier, les membres du groupe propriétaire de lire (r) et d'exécuter (x) mais pas d'écrire (-) (les 3 caractères suivants) et pareil pour les autres utilisateurs (les 3 derniers).
Le premier « - » signifie que c'est un fichier normal,
c'est-à-dire ni un lien, ni un dossier,…
« root root » signifie que le fichier appartient à l'utilisateur root (le « super administrateur » du système) et que le groupe propriétaire s'appelle aussi root (mais c'est pas la même chose).
- On donne l'exécutable au groupe de ton utilisateur administrateur via la commande
chown. Seul root peut le faire, il faut donc utiliser [doc]sudo[/doc]. Le groupe par défaut d'un utilisateur porte le même nom que l'utilisateur, on va dire « admin » dans ton cas. On veut donc que le fichier ait pour propriétaire « root » et pour groupe « admin » :
$ sudo chown root:admin /usr/bin/gedit
[sudo] password for admin:
Le mot de passe ne s'affiche pas, c'est normal. Il est quand même pris en compte.
- On interdit aux utilisateur qui ne sont pas dans le groupe d'accéder au programme (exécution et lecture) avec
chmod :
$ sudo chmod o-rx /usr/bin/gedit
[sudo] password for admin: