Android, chroot Linux a práva

mc

Android, chroot Linux a práva
« kdy: 04. 05. 2013, 13:35:58 »
Provozuji na Androidu Linux pod chrootem. Konkrétně jde o Debian nainstalovaný pomocí velmi dobré aplikace Linux Deploy.

Jsem nadšen možností provozovat offline webové aplikace v Perl (FastCGI) díky možnosti mít na stejném zařízení v chroot Linuxu například nginx, mysql a perl a v klasickém prostředí Androida rozjetý Firefox.

Žel občas narazím na nějaký problém související s právy. Někteří uživatelé v chroot prostředí nemohou provádět některé věci. Například zkoušel jsem resolvovat jméno serveru na IP adresu příkazem: "host JMENOSTROJE". Uživatel root (uid 0) a android (uid 5000) nemají problém, ale jiným uživatelům (s jiným uid to není umožněno) a končí to hláškou:
net.c:142: socket() failed: Permission denied
net.c:142: socket() failed: Permission denied
host: can't find either v4 or v6 networking

Má někdo zkušenosti co učinit aby u konkrétního uid, které budu chtít, výše uvedené problémy nebyly? Rád bych se dozvěděl více jak mohu (jako root) v chroot prostředí nastavovat práva pro různé uživatele, aby například měli přístup k síti.


mc

Re:Android, chroot Linux a práva
« Odpověď #1 kdy: 04. 05. 2013, 19:55:03 »
Podařilo se mi najít řešení. Je třeba přiřadit uživatele v chroot prostředí do skupiny aid_inet (gid 3003):
usermod -G -a aid_inet $YOUR-USER

Více zde:
https://blog.tuinslak.org/socket-permission-denied
nebo zde:
http://serverfault.com/questions/252261/network-access-issues-after-upgrading-to-squeeze

Nyní řeším jak ovlivnit práva pro /dev/ttyUSB0. Zařízení vznikne po zasunutí převodníku serial(RS232)->usb. Žel netuším jak tohle v Androidu ovlivnit - nevím co tu hraje roli udev. Pokud někdo ví nechť dá prosím vědět.