GNU/Linux >> Znalost Linux >  >> Linux

Jak udělit uživateli bez oprávnění root k souborům zařízení

Ano, můžete napsat pravidlo udev.

V /etc/udev/rules.d vytvořte soubor 30-mydevice.rules (číslo musí být od 0 do 99 a rozhoduje pouze o pořadí běhu skriptu; na názvu nezáleží, musí být pouze popisný; .rules rozšíření je však vyžadováno)

V tomto příkladu předpokládám, že vaše zařízení je založeno na USB a vy znáte jeho dodavatele a ID produktu (lze zkontrolovat pomocí lsusb -v ) a používáte mydevice skupina, ve které musí být váš uživatel, aby mohl zařízení používat. V tomto případě by to měl být obsah souboru:

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

MODE rovná 0664 umožňuje, aby do zařízení zapisoval jeho vlastník (pravděpodobně root) a definovaná skupina.


Jedním ze způsobů je přidat uživatele do odpovídající „skupiny zařízení“. V Linuxu existuje celá řada skupin pro různé druhy zařízení (disk, disketa, tty, video, cdrom, ...), takže uživatele můžete přidat do odpovídající skupiny v /etc/group .

Dalším způsobem je vytvořit "pseudo-uživatele" (např. herního uživatele). Tohoto uživatele přidáte do skupin zařízení, které by měl mít. Nakonec změníte vlastníka určitých programů (např. programu pro skenování obrázků) na tohoto uživatele a nastavíte chmod u+s . To způsobí, že program bude spuštěn jako pseudouživatel – nikoli skutečný uživatel, a bude tak mít přístup k zařízením. Pomocí skupiny programů můžete omezit, který uživatel může program spustit.

Nakonec můžete nastavit skupinu programů, které potřebují konkrétní zařízení, do skupiny zařízení a nastavit chmod g+s . To způsobí, že program poběží s právy skupiny (kromě práva běžného uživatele, který jej spouští), a umožní tak rozšířený přístup k zařízení.


Linux
  1. Jak přidat nebo odebrat uživatele ze skupiny v Linuxu

  2. Jak získat přístup k souborům Ubuntu 11.04 ve Windows 7?

  3. Jak zvýšit limit otevřených souborů v Ubuntu?

  1. Jak přidat nového uživatele MySQL a udělit přístupová oprávnění

  2. Přidat uživatele do skupiny v Linuxu, jak na to (s příklady)

  3. Udělit uživateli přístup Sudo (přidat do souboru Sudoers nebo skupiny Wheel)

  1. Jak přidat uživatele do skupiny v Linuxu

  2. Jak vytvořit a odstranit uživatelskou skupinu v Linuxu

  3. Jak obnovit výchozí skupinové/uživatelské vlastnictví všech souborů pod /var?