[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: