El 14/09/16 a les 15:25, Alex Muntada ha escrit: > Narcis Garcia: > >> You have too many files are open. Close some files or increase your >> per-process descriptor limit. >> >> Com que penso que el límit de 800.000 a nivell de sistema ja és gran, i >> no sé com modificar-ho per «lp»*, doncs intento que el programet es >> cridi a sí mateix com a un usuari normal: >> sudo -n -u UnUsuari "$0" > > Falta posar el cas trivial de la recursivitat i per tant el codi > es crida a si mateix infinitament fins que exhaureix el número > de fitxers oberts: > > 1. Epson és cridat per lp. > 2. Epson es crida a sí mateix amb sudo. > 3. Torna al punt 2. > > Falta una condició entre els passos 1 i 2 que comprovi si > l'usuari ja és UnUsuari. > > Per cert, m'he adonat del problema gràcies al comentari d'en Xavi > sobre la recursivitat. > > Salut, > Alex >
No és el cas, ja ho havia repassat. A cada instrucció la faig anunciar amb quelcom així: echo "\$ mkdir -p /mnt/remot/cua" >> "/tmp/Epson1.log" mkdir -p /mnt/remot/cua >> "/tmp/Epson1.log" 2>&1 Tot això per detectar el problema. En fer la crida a sí mateix, a la bitàcola (.log) es veu: $ sudo -n -u UnUsuari /etc/cups/interfaces/Epson1 FesRemot Result=1 Aquestes dues línies són: l'anotació abans d'executar sudo, i l'anotació que fa aquesta comanda posterior a sudo: echo "Result=$?" >> "/tmp/Epson1.log" Això significa que no s'atura amb el sudo, d'aquest no n'obtinc cap sortida textual, i el codi de sortida és 1. No aconsegueixo esbrinar res més.

