Hace mucho tiempo que no trabajaba con sistemas Linux y tenía olvidado por completo la sintaxis de comandos.

Es momento de refrescar conocimientos olvidados. Por un lado el procedimiento de instalación en un entorno virtualizado.

http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=416

Y por otro los comandos más importantes:

http://www.ajpdsoft.com/modules.php?name=news&file=article&sid=155

  • Manejo de ficheros y carpetas: cd, pwd, ls, cp, mv, rm, mkdir
  • Gestión de usuarios: adduser, passwd, addgroup
  • Gestión de permisos: chmod, chownd
  • Gestión del cliente de red (IP, DNS, DHCP): ifconfig,
  • Para gestión de archivos comprimidos: tar, gzip, gunzip
  • Para edición de ficheros: vi, nano
  • Para gestión de procesos y sistema: dmesg, vmstat, ps
  • Información de sistema: top, ifconfig
  • Para elevación de privilegios: sudo
  • Para ejecución de ShellScripts: sh
  • Otros: halt, clear,
    Si deseas aprender en detalle estos y otros comandos de importancia para PaaSOS y Velneo continua leyendo.

Extraídos desde http://www.ajpdsoft.com/modules.php?name=news&file=article&sid=155:

COMANDODESCRIPCIÓNEJEMPLO
su nombre_usuarioCambia el usuario actual a nombre_usuario (pedirá la contraseña del usuario con el que queramos iniciar la sesión)su root
ps -AMuestra todos los procesos en ejecución y el identificador de proceso (PID)ps -A
ps -A | grep bashMuestra todos los procesos que lleven la palabra «bash«ps -A | grep bash
kill -9 numero_procesoCierra el proceso especificado por el PID (numero_proceso)kill -9 745
ls -lLista los ficheros y directorios de la ubicación actualls -l
ls -lSrhMuestra una lista de los ficheros de una carpeta ordenados por tamaño (los más grandes al final)ls -lSrh
sh nombre_fichero_shEjecuta el fichero de script especificadosh prueba.sh
./nombreficheroEjecuta la aplicación especificada./mysql
apt-get install nombre_aplicacionInstala la aplicación especificada (si se tiene conexión a Internet), sólo disponible en distribuciones Debianapt-get install mysql-server
apt-get updateActualiza la base de datos de paquetes a actualizar o instalar a partir del fichero ‘/etc/apt/sources.list’. La base de datos la constituyen un conjunto de ficheros ubicados en ‘/var/lib/apt/lists/’apt-get update
apt-get upgradeActualiza todos los paquetes instalados en el sistema a la última versión disponibleapt-get upgrade
apt-get install -fComprueba la correcta instalación de los paquetes descargados en ‘/var/cache/apt/archives/’, repitiendo la instalación si fuese necesario o bajando algún paquete dependiente que no se haya descargadoapt-get install -f
apt-get cleanElimina todos los paquetes (.deb) descargados (almacenados automáticamente en ‘/var/cache/apt/archives/’)apt-get clean
cp nombre_fichero carpeta_destinoCopia uno o varios (*) ficheros a la carpeta especificadacp * /usr/bin
mv nombre_carpeta carpeta_destinoMueve una carpeta/fichero al destino especificado, también sirve para renombrar ficheros/directoriosmv /home/alonso /etc
apt-cache search dato_a_buscarBusca una aplicación en la lista de aplicaciones a instalar (sólo distribuciones Debian)ap-cache search mysql
whoamiMuestra el usuario con el que se ha iniciado la sesión de terminalwhoami
pwdMuestra el directorio de trabajo actualpwd
ifconfigMuestra la IP del pc y la configuración de redifconfig
iwconfigMuestra información de las tarjetas de red inalámbrica (wireless) que haya instaladas en el equipoiwconfig wlan0
ping hostRealiza ping entre pcsping 192.168.1.5
ifconfig id_tarjeta downDetiene los servicios de red de la tarjeta especificada (id_tarjeta)ifconfig eth0 down
ifconfig id_tarjeta upInicia los servicios de red de la tarjeta especificada (id_tarjeta)ifconfig eth0 up
routeMuestra información de la tabla de enrutación de la redroute
route add default gw ip_puerta_enlace id_tarjetaAñade como puerta de enlace (gateway) por defecto la indicada en ip_puerta_enlaceroute add default gw 192.168.1.1 eth0
passwd nombre_usuarioCambia la contraseña al usuario especificadopasswd alonso
cat nombre_ficheroMuestra el contenido de un fichero (de texto)cat /etc/mysql/my.cnf
vi nombre_ficheroo nano nombre_ficheroUtilidad que sirve para modificar ficheros de texto planovi /etc/mysql/my.cnfonano/etc/mysql/my.cnf
sudo comando usuarioEjecuta el comando especificado con los derechos del usuario especificado (pedirá la contraseña de este usuario)sudo apt-get install mysql-server root
rm nombre_ficheroBorra / elimina el fichero especificadorm /home/alonso/hola.txt
rm -f -vElimina uno o varios ficheros sin pedir confirmación (-f), mostrando los ficheros que va eliminando (-v)rm -f -v fernando*
rm -f -r -v nombre_carpetaElimina una carpeta completa y todas sus subcarpetas:-f: no pide confirmación al eliminar.-r: elimina recursivamente carpetas y subcarpetas y su contenido.-v: muestra el nombre de los ficheros y carpetas que va eliminando.rm -f -r -v /home/alonso
dateMuestra la hora y la fechadate
man comandoMuestra ayuda sobre el comando especificadoman ifconfig
cd nombre_directorioCambia del directorio actual al directorio especificadocd /usr/bin
mkdir nombre_directorioCrea un directoriomkdir prueba
rmdir nombre_directorioElimina el directorio especificado (debe estar vacío)rmdir prueba
rm -r nombre_directorioElimina el directorio especificado y todo su contenidorm -r prueba
find expresion_busquedaBusca ficheros coincidentes con la expresión de búsquedafind . -name «*mysql*» -print
find -size +500000Muestra los ficheros de tamaño superior a 500 MBfind -size +500000
grep MemTotal /proc/meminfoMuestra la memoria RAM total del sistemagrep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfoMuestra la cantidad de espacio swap del sistema (memoria de intercambio)grep SwapTotal /proc/meminfo
chmod 777 nombre_archivoAsigna al fichero nombre_archivo permisos del lectura, escritura y ejecución para el propietario, grupo e invitadochmod 777 prueba
chown nombre_usuario nombre_archivoCambia el propietario del archivo nombre_archivo a nombre_usuariochown alonso prueba
date –set=15:30Cambia la hora del sistema a las 15:30date –set=15:30
deluser nombre_usuarioElimina el usuario nombre_usuario y todos sus archivos de configuracióndeluser alonso
echo $NOMBRE_VARIABLEMuestra el valor de la variable de entorno especificada (nombre_variable)echo $HOSTNAME
envMuestra las variables de entorno definidas para el usuario actualenv
fdisk -lMuestra la estructura y tipo de particionesfdisk -l
find / -name nombre_a_buscar* -exec rm {} ;Busca todos los ficheros que comiencen por «nombre_a_buscar» y los ELIMINAfind / -name mysql* -exec rm {};
freeMuestra información sobre la memoria RAM y Swap (total, libre y ocupada)free
groupsMuestra los grupos de seguridad a los que pertenece el usuario actualgroups
groupadd nombre_grupoAñade un nuevo grupo de seguridadgroupadd leerayuda
gunzip fichero.tar.gz | tar -xvf fichero.tarDescomprime y desempaqueta el archivo ‘fichero.tar.gz’gunzip mysql.tar.gz | tar -xvf mysql.tar
gzip ficheroComprime el archivo «fichero», renombrándolo a ‘fichero.gz’gzip mysql
tar xvf fichero.tarDesempaqueta el archivo «fichero.tar»tar xvf oracle.tar
tar -czvf fichero_tar ficheros_comprimirComprime/Empaqueta los ficheros especificados en «ficheros_comprimir» en el fichero «fichero_tar»tar -czvf /tmp/prueba.tar /root/*
tar -tzvf fichero_tarMuestra el contenido del fichero «fichero_tar» (comprimido con «tar»)tar -tzvf /tmp/prueba.tar
head nombre_ficheroMuestra las 10 primeras líneas del fichero nombre_ficherohead mysql
historyListado de los comandos utilizados por el usuariohistory
nombre_servicio -k restartReinicia el servicio nombre_serviciohttpd -k restart
   
   
netstat -aMuestra los puertos abiertosnetstat -a
netstat -atun | grep ESTABMuestra las conexiones establecidas a puertos determinadosnetstat -atun | grep ESTAB
type comandoMuestra la ubicación del comando especificadotype ifconfig
mount -rt iso9660 /dev/hdc /cdromMonta la unidad de cdrom en modo sólo lectura (r), con sistema de ficheros (t) ‘iso9660’, en el dispositivo ‘/dev/hdc’, disponible en el directorio ‘/cdrom’mount -rt iso9660 /dev/hdc /cdrom
mount -t msdos /dev/fd0 /floppyMonta la unidad de disquete, con sistema de ficheros ‘MS-DOS’, en el dispositivo ‘/dev/fd0’, disponible en el directorio ‘/floppy’mount -t msdos /dev/fd0 /floppy
umount /dispositivoDesmonta el dispositivo especificadoumount /cdrom
umount  -aDesmonta todas las unidades y dispositivos montadosumount -a
whois nombre_dominioMuestra información del dominio especificado (fecha registro, fecha expiración, dns, …)whois ajpdsoft.com
wget direccion_ftp/nombre_ficheroDescarga el fichero nombre_fichero de la dirección ftp direccion_ftp. También sirve para conexión mediante httpwget ftp://ftp.ajpdsoft.com/j (en este caso el ftp debe soportar conexiones anónimas)
addgroup nombre_grupoAñade un nuevo grupo de seguridadaddgroup accesored
useradd -g nombre_grupo nombre_usuarioAñade un nuevo usuario con el nombre nombreusuario perteneciente al grupo nombregrupouseradd -g root alonso
tr ‘A-Z’ ‘a-z’ < fichero.txtConvierte a minúsculas todos los caracteres del archivo ‘fichero.txt’tr ‘A-Z’ ‘a-z’ < prueba
topMuestra información de los procesos que se están ejecutando, uso de CPU, memoria, PID, … con la característica de que se va actualizando cada 5 segundos o tras pulsar la barra espaciadoratop
shutdown minutos ‘mensaje’Reinicia el sistema en los minutos especificados, previamente envía un mensaje a todos los usuarios conectados con el texto: mensajeshutdown 15 ‘El sistema se reiniciará en 15 minutos, guarde su información’
shutdown -h nowApaga el sistema instantáneamente (equivalente a halt o init 0)shutdown -h now
shutdown -r nowReiniciar el sistema instantáneamete (equivalente a reboot o init 6)shutdown -r now
shutdown -r hh:mmReinicia el equipo a la hora y minuto indicadashutdown -r 20:00
chgrp grupo archivoCambia el grupo del archivo especificado al grupo especificadochgrp accesored mysql.cnf
ifdown id_interfaceDesactiva la tarjeta de red ‘id_interface’ifdown eth0
ifup id_interfaceDesactiva la tarjeta de red ’id_interfaceifup eth0
chkconfigMuestra/Modifica el estado de los servicios del sistema en cada nivel de arranque (runlevel)chkconfig –list dbora
vmstatMuestra estadísticas de uso de la memoria, cpu, lectuas/escrituras en disco, etcwatch «vmstat -s -S: M»
freeMuestra estadísticas de uso de la memoriawatch «free -m»
cd /etc/init.dls -lEn el directorio init.d se guardan todos los servicios instalados en el equipo, accediendo a este directorio y haciendo un ls -l se pueden vercd /etc/init.dls -l
service nombre_servicio statusMuestra el estado del servicio especificado «nombre_servicio«: stopped, se está ejecutando, …service dsmserv status
service nombre_serviciostart/stop/restartInicia/para/reinicia el servicio especificado «nombre_servicio«service dsmserv start
export nombre_variable=valorCambia el valor de una variable de entornoexport $PATH=/home/oracle/bin
echo nombre_variableMuestra el valor de la variable de entorno nombre_variableecho $PATH
setMuestra todas las variables de entorno shell y su valorset
hostname -iMuestra la IP de la interfaz de red actual del equipo (normalmente eth0)hostname -i
ethtool id_interfaceMuestra el estado actual de la interfaz de red indicada»id_interface«ethtool eth0
ip addr add dir_ip brd + dev id_interfaceAñade una nueva IP al interfaz de red indicado, en este caso «id_interface«ip addr add 192.168.1.100 brd + dev eth0
ip addr showMuestra todas las direcciones de todas las interfaces de red del equipoip addr show
head -n1 /etc/issueMuestra el nombre y la versión de la distribución de GNU Linux instaladahead -n1 /etc/issue
grep «model name» /proc/cpuinfoMuestra el fabricante, el modelo y la velocidad del procesador (CPU) del equipogrep «model name» /proc/cpuinfo
hdparm -tT /dev/sdaRealiza un test para calcular la velocidad de transferencia del disco duro indicadohdparm -tT /dev/sda
alias comandoPermite asignar a un comando creado por nosotros mismos con el nombre que queramos la ejecución de otro comando Linux, por ejemplo, el siguiente comando Linux: alias listar=’ls -lah’ creará un nuevo «comando» llamado «listar» que cada vez que se ejecute será igual que si ejecutásemos el comando ls -lahalias listar=’ls -lah’
visudoMuestra y permite editar (como si de vi se tratase) el fichero /etc/sudoers, donde se le indica a Linux qué usuarios podrán ejecutar comandos como si fuesen el superusuario root utilizando el comando «sudo»visudo
telnet IP PuertoRealiza una conexión mediante Telnet al equipo indicado «IP» utilizando el puerto indicado «Puerto»telnet 192.168.1.100 4899
nano nombre_ficheroEditor en modo texto más intuitivo y fácil de usar que vinano /etc/sudoers
ftpRealiza un conexión mediante el protocolo FTP a un servidor de FTPftp
usermod -a -G nombre_grupo nombre_usuarioAgrega el usuario «nombre_usuario» al grupo de seguridad «nombre_grupo»usermod -a -G dba root
id nombre_usuarioMuestra el uid interno del usuario «nombre_usuario» y los grupos de seguridad a los que perteneceid root
adduser -u 0 -o -g 0 -G 0,1,2,3,4,6,10 -M nombre_usuarioAñade un nuevo usuario al sistema operativo como si se tratase del superusuario root (con los mismos permisos)adduser -u 0 -o -g 0 -G 0,1,2,3,4,6,10 -M fernando
crontab -eEdita el fichero «crontab» (equivalente al programador de tareas de Windows). Permite agregar nuevas tareas programadas, modificar o eliminar las actualescrontab -e
init numero_nivelCambia el nivel de ejecución al indicado:

  • 0 – halt (apagar equipo).
  • 1 – Single user mode (modo monousuario).
  • 2 – Multiuser, without NFS (multiusuario, sin funciones de red).
  • 3 – Full multiuser mode (multiusuario, con funciones de red).
  • 4 – unused (no utilizado).
  • 5 – X11 (multiusuario, red, modo gráfico).
  • 6 – reboot (reinicio del sistema).
init 5
runlevelMuestra el nivel de ejecución anterior y el actual. Si no ha cambiado, mostrará «N» en el anteriorrunlevel
haltApaga el equipo. Comando equivalente a ejecutar: init 0 (más o menos). En realidad, lo que hace halt es comprobar si el sistema se está deteniendo (reiniciando o apagando) consultado el fichero /var/log/wtmp. Si no se está deteniendo ya lo apagahalt
poweroffApaga el equipo (equivalente a init 0, shutdown -h now, halt)poweroff
rebootReinicia el equipo (equivalente a shutdown -r now, init 6)reboot

 

Espero os sea de utilidad… Si creéis que falta alguno no dudes en comentarlo.

2 Comments

Responder a Jorge Hontoria Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *