Re: (deb-cat) sudo as lp
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.
Reply to: