GNU/Linux >> Linux Esercitazione >  >> Linux

Come concedere l'accesso utente non root ai file del dispositivo

Sì, puoi scrivere una regola udev.

In /etc/udev/rules.d creare un file 30-mydevice.rules (il numero deve essere compreso tra 0 e 99 e decide solo l'ordine di esecuzione dello script; il nome non ha molta importanza, deve solo essere descrittivo; .rules tuttavia è richiesta l'estensione)

In questo esempio presumo che il tuo dispositivo sia basato su USB e tu sappia che si tratta dell'ID del fornitore e del prodotto (può essere verificato utilizzando lsusb -v ), e stai usando mydevice gruppo a cui deve appartenere l'utente per utilizzare il dispositivo. Questo dovrebbe essere il contenuto del file in quel caso:

SUBSYSTEM=="usb", SYSFS{idVendor}=="0123", SYSFS{idProduct}=="4567", ACTION=="add", GROUP="mydevice", MODE="0664"

MODE uguale a 0664 consente la scrittura sul dispositivo da parte del suo proprietario (probabilmente root) e del gruppo definito.


Un modo consiste nell'aggiungere l'utente al "gruppo di dispositivi" corrispondente. Esiste un'intera gamma di gruppi per vari tipi di dispositivi (disco, floppy, tty, video, cdrom, ...) sotto Linux, quindi puoi aggiungere l'utente al gruppo corrispondente in /etc/group .

Un altro modo è creare uno "pseudo-utente" (ad es. l'utente del gioco). Aggiungi questo utente ai gruppi di dispositivi che dovrebbe avere. Infine, cambi il proprietario di alcuni programmi (come un programma per la scansione di immagini) in questo utente e imposti chmod u+s . Ciò farà sì che il programma venga eseguito come pseudo-utente, non come utente reale, avendo così accesso ai dispositivi. Puoi usare il gruppo dei programmi per limitare quale utente può eseguire il programma.

Infine, puoi impostare il gruppo di programmi che necessitano di un dispositivo specifico nel gruppo dispositivi e impostare chmod g+s . Ciò farà sì che il programma venga eseguito con i diritti del gruppo (oltre ai diritti del normale utente che lo esegue), consentendo così un accesso esteso al dispositivo.


Linux
  1. Come aggiungere o rimuovere un utente da un gruppo in Linux

  2. Come aggiungere un utente a un gruppo in Linux

  3. Come creare ed eliminare un gruppo di utenti in Linux

  4. Come ripristinare la proprietà predefinita del gruppo/utente di tutti i file in /var?

  5. Concedi all'utente l'accesso sudo (Aggiungi al file Sudoers o al gruppo di ruote)

Come aggiungere un utente al gruppo in Linux

Come consentire o negare l'accesso SSH a un particolare utente o gruppo in Linux

Come aggiungere un utente al gruppo in Linux

Come accedere a OneDrive su Linux grazie a OneDriver

Come aggiungere un utente al gruppo su Linux

Come aggiungere un utente a un gruppo Linux