meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
linux:comandos [282019/01/ 20:47] – [monitorización del estado] lclinux:comandos [182023/01/ 13:10] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 +===== Comandos en Linux  =====
 +{{tag>comandos linux }}
 +==== Comandos de Paquetes ====
 +=== Gestión de Paquetes en Centos  ===
 +== paquetes instalados ==
 +<sxh> rpm -qa </sxh> o también con <sxh>yum list installed</sxh>
  
 +== Para ver los ficheros que tiene instalado un determinado paquete ==
 +<sxh> rpm -ql <nombre_paquete_instalado> </sxh>
 +
 +=== Comandos de Paquete en Debian y derivados ===
 +  * instala un paquete determinado <sxh>apt-get install <nombrepaquete> </sxh>
 +  * elimina un paquete<sxh>apt-get remove <nombrepaquete> </sxh>
 +<note>Hay una opción para remover el paquete que elimina los ficheros de configuración, que normalmente resultan innecesarios una vez que hemos decidido no usar el paquete y sólo acaban por acumularse inútilmente <sxh>apt-get --purge remove nombredepaquete </sxh></note>
 +  * Búscar un paquete <sxh>apt-cache search <nombrepaquete></sxh>
 +  * descarga la lista de paquetes para actualizar el sistema<sxh>apt-get update </sxh>
 +  * descarga los paquetes marcados para actualizar<sxh>apt-get dist-upgrade </sxh>
 +  * Poner en proxy en consola <sxh>export http_proxy=http://10.140.136.2:3128</sxh>
 +<note>para dejarlo fijo ponerlo en /etc/profile </note>
 +
 +=== dpkg ===
 +
 +  * Listar paquetes instalados  <sxh>dpkg –l</sxh>
 +  * Buscar un paquete determinado<sxh>dpkg –l | grep  <nombre_paquete></sxh>
 +  * instalar un paquete <sxh>dpkg --install nombredelpaquete.deb</sxh>
 +  * muestra todo el contenido de un paquete que ya esté instalado.<sxh>dpkg -L <nombrepaquete></sxh>
 +
 +<note>También puede ocurrir que quieras saber si existe algún paquete con un contenido determinado, por ejemplo porque un programa de instalación requiera una librería, o porque quieres descubrir en que paquete venía el programa "prog"; en ese caso usas <sxh>dpkg -S prog</sxh></note>
 +===== Comandos de Fecha Hora =====
 +Poner la fecha/hora en Centos 
 +<sxh>date mmddhhmiaaaa </sxh>
 +  * mm -> mes
 +  * dd -> día
 +  * hh -> hora
 +  * mi -> minutos
 +  * aaaa -> año
 +
 +====== Comandos de Usuario ======
 +== Crear un usuario==
 +
 +<sxh>useradd -g nombre-del-grupo -m -d /home/nombre-de-usuario/ -k /directorio-archivos-por-defecto/ -p password-encriptado -s /bin/sh nombre-de-usuario</sxh>
 +
 +== Borrar usuario ==
 +<sxh>userdel -r nombre_del_usuario</sxh>
 +
 +== Cambiar la password ==
 +<sxh>passwd usuario </sxh>
 +
 +== Añadir un usuario a varios grupos ==
 +<sxh bash>
 +usermod -a -G lista_de_grupos_separados_por_comas usuario
 +</sxh>
 +
 +== Cambiar el grupo por defecto ==
 +<sxh bash>
 +usermod -g grupo
 +</sxh>
 +
 +== Quitar de un grupo ==
 +<sxh>sudo deluser <USUARIO> <GRUPO></sxh> lo quita pero no borra ni  el usuario ni al grupo
 +<sxh>sudo deluser <USUARIO> </sxh> lo quita de todos los grupos
 +
 +== lista de usuarios ==
 +<sxh>cat /etc/passwd </sxh> o <sxh> getent passwd</sxh>
 +
 +== Alias ==
 +Con los alias podemos definir unos macros para ejecutar comandos repetitivos o grandes. Por ejemplo vamos a definir un alias para editar el fichero **hosts**
 +<sxh>alias s='vi /etc/hosts/</sxh>
 +Ahora cada vez que pulsemos **s** y le demos a la tecla **INTRO** nos ejecutara el alias que hemos definido
 +
 +====== Comandos de Grupo ======
 +^Descripción^Comando^
 +|Crear un grupo|**groupadd nombre grupo**|
 +|Borrar un grupo|**groupdel nombre grupo**|
 +|añadir un usuario a un grupo|**usermod -a -G grupo usuario**|
 +|listado grupos|**cat /etc/group o getent group**|
 +
 +
 +
 +====== comandos de carpetas ======
 +
 +^Descripción ^Comando^
 +|Muestra el espacio libre del disco.|<sxh bash>df</sxh>|
 +|Muestra el espacio libre del sistema de ficheros |<sxh>df -T -h </sxh>|
 +|Muestra el total que ocupan los ficheros.|<sxh>du -c files </sxh>|
 +|Muestra el espacio que ocupa el directorio.|<sxh>du -sh carpeta </sxh>|
 +| Muestra el espacio total del directorio|<sxh>du -ch | grep total</sxh> |
 +|Ordena por tamaño Incluye archivos y directorios ocultos|<sxh>du --max-depth=1 /home/ | sort -n -r</sxh>|
 +|ordena por tamaño|<sxh>du -s /home/* | sort -n -r</sxh>|
 +
 +==== comandos de búsqueda =====
 +
 +<sxh>locate <nombre archivo></sxh>
 +
 +si son archivos recientes hay que actualizar el la base de datos de indice con updatedb
 +
 +=== Buscar ficheros según su tamaño ===
 +<sxh bash> sudo find / -type f -size +100M -print</sxh>
 +
 +Si queremos filtrar por varias condiciones usamos la opción prune
 +<sxh bash>sudo find / -path /data1/ -prune -or -size +900M -print</sxh>
 +===== monitorización del estado =====
 +=== Top ===
 +El comando **top** tiene varias hot keys
 +  * t -> on/off información de resumen
 +  * A -> ordena por consumo de recursos
 +  * f -> entra en un modo interactivo de configuración
 +  * z ->color on/off
 +
 +=== Vmstat ===
 +Muestra un resumen acerca de los procesos, memoria, paginación,  IO, system, cpu
 +=== w ===
 +muestra información de los usuarios actualmente conectados y sus procesos
 +
 +=== uptime ===
 +hora, tiempo que lleva el equipo encendido, usuarios conectados, carga del sistema hace 1, 5 y 15 minutos
 +=== tiempo de arranque del sistema ===
 +<sxh>systemd-analyze time</sxh>
 +=== ps ===
 +ver los procesos en ejecución en el sistema
 +  * ps -Al ->muestra información extra
 +=== free ===
 +Muestra la cantidad de memoria libre y usada
 +
 +Si queremos ver en Linux información sobre el tipo de procesador, la cantidad de memoria etc 
 +<sxh> cat /proc/cpuinfo </sxh>
 +<sxh> cat /proc/meminfo</sxh>
 +<sxh>cat /proc/zoneinfo</sxh>
 +<sxh>cat /proc/mounts</sxh>
 +==== Editar y visualizar ficheros ====
 +=== cat ===
 +<sxh>cat >  <fichero> </sxh> mete lo que escribamos en consola en un fichero. Útil para copiar cadenas largas con el ratón. Para salir CTRL+d, mientras todo lo que se escriba se guarda en ese fichero.
 +<sxh>cat >>  <fichero> </sxh>añade lo que escribamos en consola en ese fichero
 +
 +==== Comandos de disco ====
 +=== Mount ===
 +Montar un disco <sxh>mount /dev/hda1 /mnt/hda1 </sxh> (el directorio donde se va a montar tiene que estar creado)
 +
 +<sxh>mount –a </sxh>monta lo que no este montado del fichero etc/fstab
 +
 +=== Formatear ===
 +mkfs.ext3 /dev/hda1 formatea el disco con el sistema ext3
 +
 +
 +====== comandos linux ======
 +
 +
 +
 +^Comando ^Descripción^
 +| /usr/bin/gpasswd -a user group |Asigna cierto usuario a ese grupo.|
 +|chmod mode file | Cambia los permisos del fichero.|
 +|chown user:group file| Cambia el propietario del fichero y el grupo al cual pertenece.|
 +|gpasswd -d user group | Para quitar usuarios de un grupo. Lo mismo es editar /etc/group|
 +|groups username | Muestra los grupos a los cuales pertenece el usuario|
 +|id username | Muestra identificación del usuario i los grupos en los que está.|
 +|su | Te conviertes en root hasta que escribas exit.|
 +|su - | Pasas a ser root y ademas lee las variables de entorno de root|
 +| usermod -G group1,group2 user| Asigna grupos a un usuario.|
 +
 +
 +
 +psaux se ven todos los procesos arrancados.
 +
 +netstat –pant se ven los puertos y el nivel de escucha
 +
 +fuser –v directorio_chroot. Si hay un root que apunta al directorio del chroot es que hay un chroot lanzado
 +otra forma de saber si hay un chroot lanzado es ls /proc/self/ -l(estando dentro del chroot)
 +
 +ifconfig eth0 down apaga la red
 +
 +ifconfig eth0 up la arranca
 +
 +sh –v te muestra el debug
 +
 +
 +
 +
 +
 +
 +
 +^Comando ^Descripción^
 +|Kill -9 PIDnumber |Mata el proceso numberPID |
 +|Kill -STOP numberPID |Para hasta nueva orden el proceso numberPID.|
 +|Kill -CONT NumberPID |Continua el proceso numberPID parado anteriormente|
 +|killall processname |Mata el proceso con ese nombre. |
 +|ps aux | Lista de los programas que se estan ejecutando actualmente con su PID (Process IDentifier). |
 +|top | Muestra los procesos en ejecución|
 +|xkill |Mata en X-windows al proceso que señalemos con el raton. Es lo mismo que kill pero para entono gráfico. Hotkey: Ctrl+Alt+ESC|
 +|alias ls='ls --color=tty' |Hace que al hacer ls se vea en color solo si la salida va a la consola (no si va a un fichero) se puede meter en ~/.bash_profile para que lo haga siempre.|
 +|dd if=/dev/fd0 of=diskimagename |Crea una imagen del disco con el nombre imagendedisco.|
 +|dd if=diskimagename of=/dev/fd0 |Graba el archivo imagen a un disco.|
 +|echo $PATH|Muestra el path actual.|
 +|emacs filename|Edita el fichero Ctrl+X Ctrl+S (guarda), Ctrl+X Ctrl+C (sale).|
 +|find /directory -name 'filename'|Busca a partir de directorio el fichero especificado.|
 +|for x in $(ls /directory) do echo $x done |Para hacer un bucle en un script bash de los ficheros de un directorio.|
 +|grep|Busca una cadena en un fichero. |
 +|cat fichero.txt | grep textoabuscar|
 +|joe filename|Editor de texto.|
 +|less fichero |Como more pero mejor, permite ir hacia arriba tambien y no carga el fichero de golpe.|
 +|ln -s /mnt/cdrom/Mame/roms /usr/games/lib/xmame|Crea un enlace blando al directorio roms del cdrom como si fuera /usr/games/lib/xmame (xmame no debe existir)|
 +|mke2fs /dev/hda2|Formatea la segunda partición del primer disco duro en formato Linux (ext2).|
 +|more filename|Muestra el fichero por pantalla |
 +|mount /dev/hda1 /mnt/c -t vfat|Monta una partición fat32|
 +|pico filename|Editor muy sencillo de texto que ocupa poca memoria.|
 +|rm -rf directory|Borra el directorio con todo lo que tenga dentro sin preguntar.|
 +|sed|Cambia una cadena por otra en un fichero (se suele usar en redirecciones.|
 +|sed 's/stringA/StringB/' filename > newfilename|Cambia la primera ocurrencia de cadena en el fichero por otra cadena y lo mete en nuevofichero.|
 +|sed 's/stringA/stringB/g' filename > newfilename|Cambia todas las ocurrencias de cadena en el fichero por otra cadena y lo mete en nuevofichero.|
 +|tail -f filename|Muestra las últimas lineas del fichero (ideal para ver en tiempo real modificaciones en ficheros log).|
 +|tar -zcvf filename.tar.gz directory|Comprime en un tarball el directorio y todos los subdirectorios en filename.tar.gz|
 +|tar -zxvf filename.tar.gz|Desempaquetar un archivo .tar.gz|
 +|wc filename|Cuenta las lineas, palabras, bytes del fichero.|
 +|whereis filename|Busca un archivo y te dice donde está usando la base de datos interna, que debe estar actualizada. updatedb la actualiza.|
 +|zip -r targetfilename directory|Comprime en ficherodestino.zip el directorio y todas sus carpetas.|
 +|zip -r zipfilenameyouwant.zip desiredirectoryname|Comprime usando zip el directorio desiredirectoryname y todos los subdirectorios.|
 +|convert -resize 640x480 original.jpg modified.jpg|Convierte la imagen a 640x480|
 +|mplayer videoyouwant.avi -vo aa|Reproduce el video en arte ascii.|
 +|/etc/network/interfaces|Edita este fichero para cambiar la IP en Debian|
 +|ifconfig|Te dice tu dirección IP aunque sirve tambien para configurar la tarjeta de red.|
 +|ncftp|Un cliente de ftp mejorado para la consola|
 +|netstat -lnp --ip|Si lo tecleas siendo root, mostrará los demonios que se estan ejecutando ahora.|
 +|scp root@192.168.0.201:/boot/vmlinux .|Copia el fichero vmlinux remotamente desde el host 192.168.0.201 via ssh al diretorio actual|
 +|wget -c --passive-ftp ftp://filename|Baja el archivo o lo continua bajando usando el modo pasivo del FTP.|
 +|wget -c http://filename|Baja el archivo solicitado o lo continua si se ha cortado la conexión.|
 +|wget -rl 4 http://domainname|Baja toda la web y los ficheros que contenga hasta un nivel 4.|
 +|mpg123 -q /directory/*.mp3 &|Toca en background desde la consola la musica en .mp3 del directorio.|
 +|/sbin/hdparm -d 1 /dev/hda|Activa el bit using_dma poniendolo a 1 para activar el acceso Ultra-DMA al disco duro.|
 +|/sbin/hdparm -tT /dev/hda|Hace un test en la lectura del dispositivo.|
 +|/sbin/hdparm /dev/hda|Muestra los parametros de configuracion del disco duro.|
 +|bash|Extension del sh.|
 +|bc|Es una calculadora en modo texto.|
 +|chs|C shell.|
 +|dpkg -i package.deb|Instala un paquete .deb (Debian).|
 +|if [ -x /path/to/dnetc ]; then echo "Starting Distributed.net Client..." /path/to/dnetc -quiet fi |El fichero /etc/rc.d/rc.local es similar al autoexec.bat de ms-dos y por ejemplo podemos poner estas lineas. Si no se está ejecutando arranca dnetc.|
 +|ksh|Korn shell, combina sh y csh.|
 +|last|Lista el historial de accessos al sistema (lee /var/log/wtmp).|
 +|trace elfexecutable|para ver un ejecutable elf (buena herramienta para hackear)|
 +|nohup scriptname &|Ejecuta scriptname en segundo plano y sigue ejecutandose incluso si cierras la ventana del interprete de comandos.|
 +|pdksh|Extensión de ksh.|
 +|rpm -e rpmname | Desinstala el paquete rpm instalado previamente (el rpmname debe ser obtenido de rpm -qa y van sin el .rpm) |
 +|rpm -qpl package.rpm | Para ver lo que hay en el paquete.|
 +|rpm -Uvh package.rpm | Actualiza un paquete ya instalado o lo instala.|
 +|setterm -blank 0 | Desactiva el salvapantallas negro ( que esta activado por defecto), puedes añadirlo en /etc/rc.local|
 +|sh | Cambia al bash shell (estandar de Unix).|
 +|shutdown -h now |Apaga el equipo. Es lo mismo que halt.|
 +|shutdown -r now |Reinicia el equipo. Es lo mismo que reboot.|
 +|strace -s 200 executable |Intercepta las llamadas al sistema que son recibidas por un proceso -s 200 es para cadenas de tamaño 200 (buena herramienta para hackear)|
 +|rpm -qi rpmname 1Consulta sobre la versión, descripción completa y más información del paquete. |
 +|at 7:00 cdplayd | Programa el computador para hacer sonar el cd a las 7:00. |
 +|atq | Lista las tareas automáticas programadas.|
 +|atrm 8 |Elimina la tarea número 8. |
 +|date | Muestra la fecha y hora del sistema.|
 +|date -s "04/25/05" +"%D" | Cambia la fecha del sistema al 25 de Abril del 2005 .|
 +|date -s "15:00:00" +"%T" | Cambia la hora del sistema a las 15:00.|
 +|Edit this file to memorize a job: etc/crontab | Ej: 00 00 20 10 * echo 'Ha llegado el invierno' >/dev/null (esto ùltimo es para que no se envie por mail al root). Los siguientes directorios son para meter programas a ejecutar cada cierto tiempo (copiarlos dentro) /etc/cron.hourly/ /etc/cron.daily/ |
 +|rdate -p ntp.nasa.gov | Muestra la hora de ese servidor.|
 +|rdate -s ntp.nasa.gov | Sincroniza nuestra hora con la del servidor.|
 +|time application | Ejecuta el programa y al finalizar muestra el tiempo que ha estado en ejecución.|
 +|uptime |Muestra el tiempo que lleva el ordenador en marcha.|
 +| setxkbmap | Por si no funcionan las teclas con AltGr en modo X.|
 +|switchdesk desktoptype | Cambia el escritorio por defecto al tipo que sea (gnome, kde, wmaker, etc...).|
 +|man | da ayuda sobre los comandos|
 +|ls | como el dir del DOS |
 +|cd |para cambiar de directorio|
 +|cat |para visualizar ficheros|
 +|cp origen destino | copia ficheros|
 +|mv origen destino |mueve ficheros |
 +|pwd | indica el directorio donde te encuentras|
 +|rm fichero | borra un fichero |
 +|mkdir directorio | crea un directorio|
 +|history |muestra el historial de comandos utilizados |
 +|passwd |cambia la paswword |
 +|dmesg |muestra los mensajes desde que arranca linux |
 +|tar xjfv archivo.bz2 |para descomprimir ficheros bz2 |
 +|tar xzfv archivo.bz | descomprimir ficheros bz|
 +|tar -cjvf archdestino.bz2 archorigen:  |comprimir el fichero origen |
 +|less  |permite ver un fichero |
 +|su usuario |para cambiar de usuario|
 +|ln -s ORIGEN DESTINO  |Crea enlaces simbólicos |
 +|startx |Inicia el entorno X |
 +| twm | Lanza las X sin aceleración en el modo framebuffer |
 +|find  -name \archivo | Busca el archivo|
 +|lsmod |Lista los modulos cargados |
 +|mount  |Monta dispositivos |
 +|umount |Desmonta dispositivos|
 +|kudzu | Detecta y configura los dispositivos del equipo |
 +|lspci | Listado de todo los instalado en el equipo|
 +|xkill |Igual que el kill pero para las X |
 +|tail -f fichero | Muestra las últimas líneas de un fichero |
 +
 +=== Rsync ===
 +<sxh>rsync –av</sxh> la a es copia recursiva y la v muestra lo que esta haciendo 
 +<note>–exlude=<directorios a excluir> <directorios a copiar> <directorio destino></note>
 +<sxh>rsync –delete </sxh>borra los ficheros que ya no están en el original
 +
 +=== Variables ===
 +Para preguntar por una variable de entorno <sxh>echo $nombre_variable</sxh>
 +Para definir variables <sxh>export <nombre de variable></sxh>
 +
 +
 +
 +
 +
 +==== Listado gráfico ====
 +ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/  /' -e 's/-/|/'
 +
 +
 +
 +
 +==== Búsqueda en los mensajes del sistema====
 +<sxh>dmesg | grep cadenaabuscar  </sxh>
 +
 +
 +===== Referencias =====
 +  * http://www.linuxcentro.net/linux/staticpages/index.php?page=UsuariosGruposLinux
 +  * http://rm-rf.es/categoria/comandos-unix/
 +  * Bulma selección de trucos y ayudas de Linux para Novatos
 +  * http://www.sorgonet.com/linux/commands/
 +  * http://www.debianuniverse.com/index.php
 +  * http://yoseman.blogspot.com/2006/10/establecer-prioridades-entre.html
 +  * http://www.thegeekstuff.com/2010/10/dmesg-command-examples/
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +===== Solución Problemas =====
 +si un linux no arranca para instalarlo ejecutar el instalador con la opción nommconf
 +
 +En las placas intel pulsar CTRL+I para el munu Raid
 +
 +{{tag>comandos linux paquetes rpm apt}}