[ubuntu-cr] Copiar archivo en todos los usuarios

Luis Diego Fernandez profediego en gmail.com
Vie Mar 13 19:10:46 GMT 2009


Se me ocurre que podria ir mao menos asi el script....


#!/bin/sh

for i in $(awk -F: '{print $1}' /etc/passwd); do
       cd /home/$i 2> /dev/null
        if [ "$?" = "0" ]; then
                Todo lo referente a la copia del archivo....

        fi
done

Explico,

for i in $(awk -F: '{print $1}' /etc/passwd); do

Lista el contenido de la primer columna del archivo passwd que corresponde a
los usuarios del sistema, y hace un siglo por cada usuario listado, mao
menos...

cd /home/$i 2> /dev/null

por cada usuario en el archivo trata de ir al home, obviamente como en ese
archivo hay un monton de usuario y no todos son de carne y hueso, pues
algunos no tienen home, por ende va dar error, y es aqui

if [ "$?" = "0" ]; then

que si el cd fue exitoso tons, ya sabemos que el usuario si tiene un home y
por ende empezariamos con todo el enredo de la copua del archivo y el cambio
de permisos...

algo que seme ocurrio en un rato libre, se que sepuede mejorr un monton,
pero ya es algo p empezar digo no..

saludos...

pd:  Importante que la ejecucion del script la haga root, por los permisos a
la hora de hacer la copia en un home ajeno.




2009/3/13 Jimmy Latouche <jimmy.lc en gmail.com>

> Hola Claudio
>
> Yo lo haría con SCP (Y no con CP que es mas complicado), lo único que
> necesitas es una lista (un array de dos dimensiones) con las direcciones
> de las máquinas y los usuarios respectivos de cada una, luego aplicas lo
> que aparece en este documento para que SCP no te pida password en cada
> máquina y efectivamente se pueda usar en un script:
>
> http://www.linuxjournal.com/article/8600
>
> Por último le dices al programa que avance por el array mandando el
> archivo a cada PC, sacando el rato un podría hacer que el script reciba
> como parámetro el archivo que quieres copiar y al final te saque un
> listado de los logros y problemas que tuvo (nada mas copiar el Output a
> un archivo de texto)
>
> Con respecto a los permisos, pues no hay problema porque queda con los
> permisos de ejecución que tenía originalmente el archivo pero con
> propiedad del usuario que recibe la copia
>
> Pruebalo y nos cuentas
>
>
> Claudio Ovares Gutiérrez wrote:
> > Hola
> > He colocado este mensaje en otros foros pero no he tenido una respuesta
> > que me ayude ¿podría alguien aquí?
> > Tengo 14 usuarios en cada una de las 20 PC de un aula de cómputo de una
> > escuela, con kubuntu 8.04 y debo remplazar, en todos los usuarios de
> > cada PC, un archivo que esta en /home/usuarios/.kde/Autostart/ica1; el
> > archivo en cuestión (ica1, un script en bash) ya lo tengo corregido en
> > un usuario.
> > La pregunta es ¿Cómo lo puedo copiar de forma automática, esto es sin
> > hacer un cp /home/usuario 1.../ica1 /home/usuario2/../ica1 para cada
> > usuario? Si lo tengo que hacer uno a uno sería repetir 14x20=240 veces
> > esa copia.
> > He leído por allí que con un script se podría automatiza el proceso de
> > copia, pero me queda la duda si al ejecutarlo, con su, cómo quedarían
> > las propiedades de ese archivo (ica1) en la carpeta de cada usuario, por
> > ejemplo ¿quien sería el dueño, grupo, permisos,etc?
> > Les agradezco cualquier ayuda que me evite hacer durante todo un día cp
> ....
> > ------------------------------------------------------------------------
> > Casi 50 razones para tener el nuevo Messenger. ¡Conócelas aquí y bájate
> > el nuevo! <http://www.nuevomessenger2009.com/>
> >
>
>
> --
> lista de correos ubuntu-cr
> ubuntu-cr en lists.ubuntu.com
> Cambie su configuración o sálgase de la lista en:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-cr
> Visítenos en http://www.crubuntu.org
>



-- 
My opinions may have changed, but not the fact that i am rigth!
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ubuntu.com/archives/ubuntu-cr/attachments/20090313/1bd95dc1/attachment.htm 


Más información sobre la lista de distribución ubuntu-cr