Linux Comandos
Linux Comandos
Linux Comandos
DESCRIPCION
Archivos y Directorios
cd /home cd .. cd ../.. cd cd ~user1 cd pwd ls ls -F ls -l ls -a ls *[0-9]* tree lstree mkdir dir1 cambiar al directorio '/ home' regresar un nivel regresar dos niveles cambiar al directorio home cambiar al directorio home ir al directorio anterior mostrar la ruta del directorio de trabajo ver archivos del directorio ver archivos del directorio mostrar detalles de archivos y directorios mostrar archivos ocultos mostrar archivos y directorios cuyo nombre contenga numeros mostrar archivos y directorios en forma de arbol empezando desde root(1) mostrar archivos y directorios en forma de arbol empezando desde root(2) crear un directorio llamado 'dir1'
mkdir dir1 dir2 mkdir -p /tmp/dir1/dir2 rm -f file1 rmdir dir1 rm -rf dir1 rm -rf dir1 dir2 mv dir1 new_dir cp file1 file2 cp dir/* . cp -a /tmp/dir1 . cp -a dir1 dir2 ln -s file1 lnk1 ln file1 lnk1 touch -t 0712250000 file1 file file1 iconv -l
crear dos directorios simultaneamente crear un arbol de directorios borrar archivo con nombre 'file1' borrar directorio con nombre 'dir1' borrar el directorio con nombre 'dir1' y todos sus contenidos recursivamente borrar dos directorios y todos sus contenidos recursivamente renombrar o mover un archivo o directorio copiar un archivo copiar todos los archivos de un directorio dentro del directorio de trabajo actual copiar un directorio dentro del directorio de trabajo actual copiar un directorio crear un link simblico a un archivo o directorio crear un link fsico a un archivo o directorio modificar el timestamp de un archivo o directorio- (AAMMDDhhmm) muestra el tipo mime del archivo como texto muestra los tipo de codificacin conocidos
iconv -f fromEncoding -t toEncoding inputFile > genera un archivo nuevo a partir del archivo proporcionado asumiendo que estan codificado en outputFile fromEncoding y convirtiendolo a toEncoding. find . -maxdepth 1 -name *.jpg -print -exec convert "{}" - redimensiona el tamao de las imagenes en el directorio actual en modo batch batch y las manda al resize 80x60 "thumbs/{}" \; directorio thums (se requiere el programa convert de Imagemagick)
Bsqueda de Archivos
find / -name file1 find / -user user1 find /home/user1 -name \*.bin find /usr/bin -type f -atime +100 find /usr/bin -type f -mtime -10 find / -name \*.rpm -exec chmod 755 '{}' \; find / -xdev -name \*.rpm locate \*.ps whereis halt which halt buscar archivos y directorios con el nombre 'file1' en el filesystem root desde '/' buscar archivos y directorios que le pertenezcan a 'user1' buscar archivos con extensin '.bin' dentro del directorio '/ home/user1' buscar archivos binarios que no han sido usados en los ultimos 100 das buscar archivos binarios creados o modificados en los ultimos diez dias buscar archivos con extensin '.rpm' y modificar permisos buscar archivos con extensin '.rpm' ignorando particiones extraibles como cdrom, pen-drive, etc. mostrar archivos con la extensin '.ps' -primero ejecutar el comando 'updatedb' mostrar la ruta del archivo binario, fuente y pagina del manual(man) para un comando dado (halt en este caso) mostrar la ruta completa a un binario / ejecutable
Espacio en Disco
df -h ls -lSr |more du -sh dir1 du -sk * | sort -rn mostrar una lista de las particiones montadas mostrar el tamao de los archios y directorios ordenados por tamao mostrar el espacio ocupado estimado usado por el directorio 'dir1' mostrar el tamao de archivos y directorios ordenados por tamao
mostrar el espacio utilizado por los paquetes rpm instalados ordenados por tamao (fedora, redhat y similares) mostrar el espacio usado por los paquetes deb instalados ordenados por tamao(ubuntu, debian y similares)
Usuarios y Grupos
groupadd group_name groupdel group_name groupmod -n new_group_name old_group_name crear un grupo nuevo borrar un grupo renombrar un grupo
useradd -c "Name Surname " -g admin -d /home/user1 crear un nuevo usuario que pertenezca al grupo "admin" -s /bin/bash user1 useradd user1 userdel -r user1 usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 passwd passwd user1 chage -E 2005-12-31 user1 pwck grpck newgrp group_name crear un usuario nuevo borrar un usuario ( '-r' elimina el directorio home del usuario) cambiar los atributos del usuario cambiar el password cambiar el password de un usuario (solo lo puede hacer el usuario root) establecer la fecha limite en la que el password del usuario caduca verificar la integridad del archivo de contraseas '/etc/passwd' verificar la integridad del archivo base de datos de grupos '/etc/group' cambiarse a un grupo nuevo
Permisos en Archivos (usar "+" para asignar permiso y "-" para quitarlo)
ls -lh ls /tmp | pr -T5 -W$COLUMNS chmod ugo+rwx directory1 chmod go-rwx directory1 chown user1 file1 chown -R user1 directory1 chgrp group1 file1 chown user1:group1 file1 find / -perm -u+s chmod u+s /bin/file1 chmod u-s /bin/file1 chmod g+s /home/public chmod g-s /home/public chmod o+t /home/public chmod o-t /home/public mostrar permisos dividir la terminal en 5 columnas establecer permisos de lectura(r), escritura (w) y acceso(x) a usuarios propietarios(u) ,de grupo (g) y otros(o)set permissions reading (r), write (w) and (x) access to users owner (u) group (g) and others (o) quitar permisos de lectura(r), escritura (w) y acceso(x) a usuarios de grupo (g) y otros(o) cambiar el propietario(owner) de un archivo cambiar el propietario de un directorio y de todos los archivos y directorios contenidos en l cambiar el grupo a un archivo cambiar el usuario y grupo propietario de un archivo ver todos los archivos en el sistema que tengan configurado el bit SUID establecer el bit SUID de un archivo binario el usuario obtinene los mismos privilegios que el propietario sobre el archivo desactivar el bit SUID en un archivo binario establecer el bit SGID en un directorio - similar a SUID pero para un directorio desactivar el bit SGID en un directorio establece el STIKY bit en un directorio- permite borrado de archivos solo a propietarios legtimos desactivar el STIKY bit en un directorio
Atributos especiales de archivos (usar "+" para asignar permiso y "-" para quitarlo)
chattr +a file1 chattr +c file1 chattr +d file1 chattr +i file1 chattr +s file1 chattr +S file1 chattr +u file1 lsattr permitir abrir un arhchivo para escritura en modo append permitir que un archivo sea compimido/descomprimido automaticamente por el kernel no tomar en cuenta el archivo para backups con el programa Dump hacer el archivo inmutable, el cual no podra ser eliminado, alterado, renombreado o ligado le permite a un archivo ser borrado de forma segura, el archivo no podra ser recuperado de ninguna forma. escribir de forma sncrona todos loscambios echos a un archivo escribir de forma sncrona todos loscambios echos a un archivo mostrar atributos especiales
Compresin de Archivos
bunzip2 file1.bz2 bzip2 file1 gunzip file1.gz descomprimir un archivo llamado 'file1.bz2' comprimir un archivo llamado 'file1' descomprimir un archivo llamado 'file1.gz'
gzip file1 gzip -9 file1 rar a file1.rar test_file rar a file1.rar file1 file2 dir1 rar x file1.rar unrar x file1.rar tar -cvf archive.tar file1 tar -cvf archive.tar file1 file2 dir1 tar -tf archive.tar tar -xvf archive.tar tar -xvf archive.tar -C /tmp tar -cvfj archive.tar.bz2 dir1 tar -xvfj archive.tar.bz2 tar -cvfz archive.tar.gz dir1 tar -xvfz archive.tar.gz zip file1.zip file1 zip -r file1.zip file1 file2 dir1 unzip file1.zip
comprimir un archivo llamado 'file1' comprimir utilizando maxima compresion crear un archivo rar llamado 'file1.rar' comprimir 'file1', 'file2' y 'dir1' simultaneamente descomprimir un archivo rar descomprimir un archivo rar crear un tarball (archivo tar) sin compresin crear un archivo tar que contiene a los archivos 'file1', 'file2' y 'dir1' mostrar los contenidos de un archivo tar extraer un archivo tar extraer un archivo tar en / tmp crear un archivo tar comprimido en bzip2 descomprimir un archivo tar comprimido en bzip2 crear un archivo tar comprimido en gzip descomprimir un archivo tar comprimido en gzip crear un archivo tar comprimido en zip comprimir en formato zip varios archvos y directorios simultaneamente descomprimir un archivo zip
yum update package_name.rpm yum update package_name yum remove package_name yum list yum search package_name yum clean packages yum clean headers yum clean all
actualizar todos los paquetes rmp instalados en el sistema actualizar un paquete rpm quitar un paquete rpm mostrar todos los paquetes instalados en el sistema encontrar un paquete en un repositorio rmp limpiar el cache rpm borrando todos los paquetes descargados eliminar todos los archivos de encabezado que el sistema utiliza para resolver dependencias eliminar del sistema los tanto paquetes como archivos de encabezado
Manipulacin de textos
cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt cat file1 | command( sed, grep, awk, grep, etc...) > result.txt cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt grep Aug /var/log/messages grep ^Aug /var/log/messages grep [0-9] /var/log/messages grep Aug -R /var/log/* sed 's/stringa1/stringa2/g' example.txt sed '/^$/d' example.txt sed '/ *#/d; /^$/d' example.txt echo 'esempio' | tr '[:lower:]' '[:upper:]' sed -e '1d' result.txt sintaxis para manipulacin de texto usando PIPE, STDIN y STDOUT sintaxis para modificar el texto de un archivo y escribir el resultado en un archivo nuevo sintaxis para modificar el texto de un archivo y agregar el resultado a un archivo existente buscar la secuencia "Aug" en el archivo '/var/log/messages' buscar la palabras que comienzen con "Aug" en el archivo '/var/log/messages' seleccionar todas las lneas del archivo '/var/log/messages' que contengan numeros buscar la cadena "Aug" en el directorio '/var/log' incluyendo subdirectorios remplazar "string1"por "string2" en el archivo example.txt quitar todas las lneas en blanco del archivo example.txt quitar los comentarios y todas las lneas en blanco del archivo example.txt convert from lower case in upper caseconvertir de minusculas a mayusulas quitar la primera lnea de example.txt
sed -n '/stringa1/p' sed -e 's/ *$//' example.txt sed -e 's/stringa1//g' example.txt sed -n '1,5p;5q' example.txt sed -n '5p;5q' example.txt sed -e 's/00*/0/g' example.txt cat -n file1 cat example.txt | awk 'NR%2==1' echo a b c | awk '{print $1}' echo a b c | awk '{print $1,$3}' paste file1 file2 paste -d '+' file1 file2 sort file1 file2 sort file1 file2 | uniq sort file1 file2 | uniq -u sort file1 file2 | uniq -d comm -1 file1 file2 comm -2 file1 file2 comm -3 file1 file2
ver solo las lneas que contengan la palabra "string1" quitar caracteres vacos al final de cada lnea quitar solo la palabra "string1" del archivo de texto y dejar todo lo demas intacto ver del primero al quinto rengln ver el renglon numero cinco remplazar secuencias de ceros por un solo cero numerar los renglones de un archivo borrar todas las lneas pares del archivo example.txt ver la primera columna de una linea ver la primera y la terce columna de una linea mezclar los contenidos de dos archivos pr columna mezclar los contenidos de dos archivos con el delimitador '+' al centro ordenar los contenidos de dos archivos ordenar los contenidos de dos archivos omitiendo los elementos repetidos ordenar los contenidos de dos archivos mostrando solo los elementos nicos ordenar los contenidos de dos archivos mostrando solo los elementos duplicados comparar el contenido de dos archivos borrando las lneas que aparecen unicamente en 'file1' comparar el contenido de dos archivos borrando las lneas que aparecen unicamente en 'file2' comparar el contenido de dos archivos borrando las lneas que aparecen en ambos archivos
Formatear un Filesystem
mkfs /dev/hda1 mke2fs /dev/hda1 mke2fs -j /dev/hda1 mkfs -t vfat 32 -F /dev/hda1 fdformat -n /dev/fd0 mkswap /dev/hda3 crear un sistema de archivos tipo linux en la particin hda1 crear un sistema de archivos tipo linux ext2 en la particin hda1 crear un sistema de archivos tipo linux ext3 (journal) en la particin hda1 crear un sistema de archivos FAT32 formatear un disco floppy crear un sistema de archivos swap
Respaldos
dump -0aj -f /tmp/home0.bak /home dump -1aj -f /tmp/home0.bak /home restore -if /tmp/home0.bak hacer un respaldo completo del directorio '/home' hacer un respaldo incremental del directorio '/home' restaurar un respaldo interactivamente
rsync -rogpav --delete /home /tmp rsync -rogpav -e ssh --delete /home ip_address:/tmp rsync -az -e ssh --delete ip_addr:/home/public /home/local rsync -az -e ssh --delete /home/local ip_addr:/home/public dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' dd if=/dev/sda of=/tmp/file1 tar -Puf backup.tar /home/user ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' ( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' tar cf - . | (cd /tmp/backup ; tar xf - )
sincronizacin entre directorios sincronizacin a traves de un tunel SSH sincronizacin de un directorio local con uno remoto va ssh y compresin sincronizacin de un directorio remoto con uno loca va ssh y compresin hacer un respaldo de un disco duro local en un host remoto via ssh respaldar el contenido del disco duro a un archivo hacer un respaldo incremental del directorio '/home/user' copiar el contenido de un directorio a un directorio remoto via ssh copiar el contenido de un directorio local a un directorio remoto via ssh copia local, preservando permisos y ligas de un directorio a otro
find /home/user1 -name '*.txt' | xargs cp -av --targetencontrar y copiar todos los archivos con extensin .'txt' de un directorio a otro. directory=/home/backup/ --parents find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > encontrar todos los archivos con extensi[on '.log' y hacer un archivo bzip archive log.tar.bz2 dd if=/dev/hda of=/dev/fd0 bs=512 count=1 dd if=/dev/fd0 of=/dev/hda bs=512 count=1 hacer una copa del MBR (Master Boot Record) a un disco floppy restaurar el MBR desde un backup guardado en disco
CDROM
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force mkisofs /dev/cdrom > cd.iso mkisofs /dev/cdrom | gzip > cd_iso.gz mkisofs -J -allow-leading-dots -R -V "Label CD" -isolevel 4 -o ./cd.iso data_cd cdrecord -v dev=/dev/cdrom cd.iso gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom mount -o loop cd.iso /mnt/iso cd-paranoia -B cd-paranoia -- "-3" cdrecord --scanbus dd if=/dev/hdc | md5sum limpiar un cdrom reescribible crear una imagen ISO de un CdRom en el disco crear una imagen ISO comprimida de un CdRom en el disco crear una imagen ISO a partir de un directorio grabar a CD una imagen ISO grabar a CD una imagen ISO comprimida montar un imagen ISO ripear (extraccin digital de audio) tracks de audio de un CD a archivos wav ripear (extraccin digital de audio) los primeros tres tracks de audio de un CD a archivos wav. escanear el bus para identificar el canal scsi ejecutar un checksum md5 en un dispositivo como un CD
Redes(LAN y WiFi)
ifconfig eth0 ifup eth0 ifdown eth0 ifconfig eth0 192.168.1.1 netmask 255.255.255.0 ifconfig eth0 promisc dhclient eth0 route -n route add -net 0/0 gw IP_Gateway route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 route del 0/0 gw IP_gateway echo "1" > /proc/sys/net/ipv4/ip_forward hostname host www.example.com nslookup www.example.com ip link show mii-tool eth0 ethtool eth0 mostrar la configuracin de una tarjeta de red ethernet activar interfaz de red 'eth0' desactivar interfaz de red'eth0' configurar direccin IP configurar 'eth0' en modo promiscuo para captura de paquetes (sniffing) activar la interface 'eth0' en modo dhcp mostrar la tabla de ruteo configurar el gateway por default configurar ruta estatica para alcanzar la red '192.168.0.0/16' quitar ruta estatica activar ruteo por ip mostrar el nombre del equipo busquedas DNS del nombre proporciando para resolver de nombre a direccion ip y viceversa(1) busquedas DNS del nombre proporciando para resolver de nombre a direccion ip y viceversa(2) mostrar el estatus del enlace de todas las interfaces de red mostrar el estatus del enlace de la tarjeta de red 'eth0' mostrar estadisticas de la tarjeta de red 'eth0'
netstat -tup netstat -tupl tcpdump tcp port 80 iwlist scan iwconfig eth1 hostname host www.example.com nslookup www.example.com whois www.example.com
mostrar todas las conexiones de red activas y el PID del programa al cual le corresponde el socket mostrar todos los servicios que estan escuchando en el sistema y su PID correspondiente mostrar todo el trafico HTTP (puerto 80) mostrar redes inalambricas disponibles mostrar la configuracin de una tarjeta de red inalambrica Mostrar el nombre del equipo lookup hostname to resolve name to ip address and viceversa(1) lookup hostname to resolve name to ip address and viceversa(2) buscar en la base de datos de whois
IPTABLES (firewall)
iptables -t filter -L iptables -t nat -L iptables -t filter -F iptables -t nat -F iptables -t filter -X iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT mostrar todos los contenidos de la tabla de filtrado 'filter' mostrar todos los contenidos de la tabla 'nat' borrar todas las reglas de la tabla 'filter' borrar todas las reglas de la tabla nat' borrar todas las reglas creadas por el usuario permitir conecciones telnet de entrada
iptables -t filter -A OUTPUT -p tcp --dport http -j DROP bloquear conecciones HTTP de salida iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT iptables -t filter -A INPUT -j LOG --log-prefix "DROP INPUT" iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE permitir conecciones POP3 a la cadena forwardchain permitir login en la cadena de entrada configurar un PAT (Port Address Traslation) en eth0 enmascarando los paquetes de salida
iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp redireccionar los paquetes dirigos a un host a otro host distinto m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22
Monitoreo y Depuracin
top ps -eafw ps -e -o pid,args --forest pstree kill -9 ID_Processo kill -1 ID_Processo lsof -p $$ lsof /home/user1 strace -c ls >/dev/null strace -f -e open ls >/dev/null watch -n1 'cat /proc/interrupts' last reboot lsmod free -m smartctl -A /dev/hda smartctl -i /dev/hda mostrar los procesos que ocupan mas CPU mostar los proceso de linux mostrar los procesos en modo jerarquico mostrar los procesos que ese estan ejecutando en forma de arbol forzar el cierre y terminacin de un proceso forzar un proceso a re-cargar la configuracin mostrar una lista de los archios abiertos por un proceso mostrar una lista de los archivos abiertos en una ruta determindam mostrar las llamadas al sistema echas y recibidas por un proceso mostrar las llamadas a librerias mostrar las interrupciones en tiempo real mostrar informacin de la ultima vez que se reinicio el equipo mostrar que modulos del kernel estan cargados, esta misma informacin se encuentra en /proc/modules. mostrar el estatus de la RAM en megabytes monitorear la confiabilidad de un disco duro usando SMART verificar si SMART esta activo en un disco duro
mostrar los eventos inherentes al proceso de secuencia de arranque del kernel mostrar los eventos del sistema