Is it a fake website?

Mostrando entradas con la etiqueta comandos linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta comandos linux. Mostrar todas las entradas

12 abril 2010

Conectar al terminal de un usuario para ver su consola

En ocasiones, si trabajais en equipo y estáis distribuidos en diferentes sitios físicos. Una herramienta útil para trabajar con consola y ver lo que está haciendo un usuario, para intentar detectar problemas entre varios, por ejemplo, es usar "screen". Otro uso útil es si quieres acceder a la sesión de tu trabajo desde casa.

En Ubuntu lucid viene por defecto, si no es así, lo instalamos.

  1. #sudo apt-get install screen
  2. Configuramos el binario como setuid de root. Por defecto screen se instala con el bit de setuid a off. #sudo chmod +x /usr/bin/screen
  3. Le damos un nombre identificativo a la sesión, por ejemplo: #screen -s screen-test
  4. El usuario remoto se conecta al servidor con ssh
  5. Permitimos el acceso multiusuario en la sesión. #CTRL-A :multiuser on
  6. Le damos permiso al usuario remoto. #CTRL-A :acladd usuario_remoto
  7. Ahora el usuario remoto ya podrá ver lo que hacemos en nuestra consola con: #screen -x usuario_local/screen-test
A partir de ahora, todo lo que teclees en esa consola, lo verá el otro usuario remoto.

NOTA: CTRL-A es la forma de entrar al modo comando de screen. usuario_local es el usuario con el que hemos configurado el entorno.




03 octubre 2008

Chuleta: operadores y comandos unix. Ejemplos prácticos

Buen recurso donde con claros ejemplos se explica gran parte de los entresijos para manejarse en una consola linux.Observad gráficamente como funciona una serie de comandos encadenados operando cada uno con el resultado del anterior. Parece más complicado de lo que en realidad es.

logadmin

24 marzo 2008

Cómo quitar comentarios de un archivo de configuración

Si queremos observar únicamente las opciones que tenemos disponibles en algún archivo de configuración, existen cientos de maneras de hacerlo:

Como eliminar comentarios de un archivo de configuración:
con perl
#perl -nle 'next if /^$|^\s*#/;print' /etc/squid.conf

con la shell
#cat /etc/httpd.conf | grep -v ^# | grep -v ^$

con la utilidad sed
#sed '/^$/d;/^\s*#/d' squid.conf

con la utilidad grep
#grep ^[A-Za-z] /etc/squid/squid.conf
y para quitar las líneas con espacios
#grep ^[A-Za-z\ ] /etc/squid/squid.conf


20 marzo 2008

El digg de los comandos shell

¿Has utilizado comandos en la shell que a la hora de la verdad no recuerdas como eran?, a propósito de un consejo que dí hace tiempo, [shell-fu]$ aglutina gran cantidad de esos comandos que os sacarán de más de un apuro en muchas ocasiones.


#mknod backpipe p; while nc -l -p 80 0<backpipe | tee -a inflow | \
nc localhost 81 | tee -a outflow 1>backpipe; do echo \"restarting\"; done

04 enero 2008

Mes de las herramientas unix

Para empezar fuerte, voy a crear una serie de artículos cubriendo información práctica de algunas de las herramientas a menudo olvidadas pero de un gran valor para un administrador de sistemas.

El objetivo de estos artículos será mostrar ejemplos realmente prácticos de esas herramientas, con las que algunos duran 5 segundos leyendo las man pages.

Herramientas unix que exploraremos:

Admito sugerencias para explorar otras herramientas.


Idea basada del blog de Jordan. Un sysadmin de Google.

31 julio 2007

Tip: Grepea en colores

Puede parecer muy sencillo, pero las cosas más sencillas a veces de tan obvias las pasamos por alto, y este tip es uno de esos, el usuario o administrador de sistemas que suela utilizar la poderorsa y simple utilidad grep, lo agradecerá.

La salida del grep se puede poner en color, útil para observar a primera vista la cadena que buscamos de toda la secuencia que nos muestra o para ver que nos falta en esa expresión regular que no es lo que creíamos.

Simplemente añade --color a la línea de comandos cuando realices la búsqueda.

#grep -i --color nel /var/log/messages
/var/log/messages:Jul 30 20:49:56 logadmin kernel: tg3: eth0: Link is up at 100 Mbps, full duplex.
/var/log/messages:Jul 30 20:49:56 logadmin kernel: tg3: eth0: Flow control is off for TX and off for RX.
/var/log/messages:Jul 30 11:38:16 logadmin squid[11477]: urlParse: Illegal character in hostname 'www.chanel%20cuatro'

Hazte la vida más fácil.
alias grep='grep --color=tty -d skip'

15 marzo 2007

Resuelve problemas comunes en tu sistema gnu/linux con la ayuda de find y xargs

El poder de Find.

Si anteriormente hable de el comando lsof, hoy le toca a find.
find, es uno de esas poderosas herramientas de Unix/Linux de las que sólo aprovechamos una ínfima parte de su extraordinario poder.

Gran parte de preguntas sobre linux, podrían resolverse con este comando. .
Para sacar provecho de estas herramientas, simplemente es necesario familiarizarse con sus opciones.


Vamos a adentrarnos en las profundidades de este comando de una manera progresiva.


Recordad que el primer argumento que le pasamos a find es donde buscar.

Encuentra archivos de una determinada extensión.
#find . -name *.jpg

Encuentra archivos que pertenezcan a cierto usuario.
#find . -user squid

Busca sólo directorios (si lo combinamos con lo anterior, sólo mostrará el tipo especificado -directorio), tambien podría buscar archivos (f), links (l), o sockets (s).
#find . -user squid -type d

Busca archivos mayores de 1G.
#find /home/movies -size +1048576k
o según sistema.
#find /home/movies -size +1024M

Podemos combinar argumentos. (usuario y tamaño)
#find . -user squid -size +1024M

Excluimos un archivo que sabemos cumplirá esa condición.
#find . -user squid -size +1024M ! -name access.log*


Opciones para análisis forense.

Encuentra todos los archivos de /etc propiedad de root que han sido modificados en las últimas 24 horas.
#find /etc -user root -mtime 1

(si no nos sale ninguno, probar a añadir o borrar un usuario del sistema, y ejecutarlo después).

Muestrame todos los archivos de /etc propiedad de root que han sido modificados en los 2 últimos minutos.
#find /etc -user root -amin -2

Muestrame todos los archivos de /etc con demasiados permisos
#find /etc -perm 777


COMBINA FIND CON XARGS

Con esta combinación podremos ejecutar una acción determinada para cada archivo que nos muestre find.
Hasta ahora habíamos visto algunas opciones con find del tipo "muestrame este tipo de archivos", pero más interesante es poder decirle al sistema, "Coge cada archivo propiedad de John que no haya sido accedido en los últimos 60 días y muevelo a la carpeta Backup".

Busca archivos en esta ruta que sean propiedad de el usuario john y bórralos.
#find /usr/local -user john -type f | xargs rm

Corrige los permisos de tu directorio web.
find /usr/local/apache/htdocs/tuweb -type d | xargs chmod 755

Y mi favorito para aplicar una cuota a los usuarios de una partición entera.

Imagina una partición de un servidor que contiene 1000 usuarios, aplica la cuota especificada a todos ellos con este simple comando.
#find /home/users -type d -maxdepth 1 -mindepth 1 | awk -F "/" '{print $3}' | xargs -i edquota -F vfsv0 -u {}


Más datos en find, xargs y dmiessler.