[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]El mar, 15-10-2002 a las 16:28, Sergio Bernal Calzada escribió:
> Puedes hacer algo así
>
>
>
> #/usr/bin/perl
> $pass="minuevopasswd";
> $user="usuarioX";
> system("echo $pass|passwd $user --stdin");
> exit;
>
Algo un poco mas robusto, que aprovecha las facilidades de perl para
capturar posibles errores, evita la dependencia con el shell, y se
ahorran un fork():
#!/usr/bin/perl
($> == 0) or die "Ejecutar como root.\n";
$pass="nvopass";
$user="usaurio";
open CHPASSWD, '|/usr/sbin/chpasswd'
or warn "No se puede asignar un password para el usuario $user: !$\n";
print CHPASSWD "$user:$pass\n";
close CHPASSWD;
En lo posible, eviten utilizar la funcion "system" en perl, a menos que
de verdad entiendan las sutiles diferencias entre las funciones C de la
familia exec (execl, execlp, execle, execv, execvp).
> Israel Pérez Zurita (Inri) wrote:
> > Hola lista.
> >
> > Estoy haciendo un programa que agregue usuarios a mi
> > sistema linux en perl los cuales puedan ser leidos desde
> > un fichero que contenga el usuario y su passwd.
> >
> > alguien sabe como se puede hacer que el comando
> > passwd no sea interactivo y que acepte el password
> > a travez de variables en perl ?
> >
> > O que se pueda ejecutar el comando
> > adduser usuario -p password, porque al parecer no
> > toma el password en texto plano si no que hay que
> > encriptarlo antes o algo asi.
> >
> > si alguien tiene alguna experiencia en este tipo de
> > problemas, favor de compartirlo se lo agradeceria mucho.
> >
> > Saludos.
> >
> > Israel Perez Zurita
> > http://www.prd.org.mx/~izurita/
> > ** Mensaje sin acentos **
Saludos
--
__(o< | Nombres/Names: Cristian Othón | cfuga en itam mx
\/|/ | Apellidos/Last Names: Martínez Vera | http://cfuga.net/
/_/_ | | http://linuxppp.com/
| "Pulchrum est paucorum hominum" - Horace
---------------------------------------------------------------------
Lista de soporte de LinuxPPP
Reglas de la lista en http://linuxppp.com/reglas.html