Domingo, 20 de octubre de 2019
Algunos comandos básicos en Linux
Escrito por: Rafael Quintana, martes 1 de diciembre de 2009 , 20:02 hs, en la categoría: Informática

Comandos básicos Linux

A continuación os mostramos algunos comandos básicos para Linux: cp, mv, df, ifconfig, tar, etc para copiar, eliminar, renombrar archivos y carpetas, tamaño en disco, memoria RAM, editar ficheros, mostrar procesos, comprimir/descomprimir ficheros, etc. Incluimos ejemplos de utilización de estos comandos.

 

tux.jpg

Consideraciones iniciales

  • Para ejecutar estos comandos del shell de GNU Linux será necesario abrir una ventana de Terminal (si estamos en modo gráfico).

  • Muchos de estos comandos requieren permisos de superusuario root, por lo que será necesario estar logeado con este usuario para que funcionen.

  • Es posible que algunos de estos comandos no aparezcan en determinadas distribuciones de GNU Linux. Algunos de los comandos aquí mostrados son específicos de una o varias distribuciones GNU Linux.

  • Algunas de las salidas de la ejecución de algunos comandos del shell de GNU Linux puede que no sean iguales en las diferentes distribuciones.

  • Hay algunos comandos que su ejecución puede ser "peligrosa", es conveniente que se ejecuten sabiendo lo que se está haciendo y las repercusiones que puedan tener. Por ejemplo, el comando rm -f -r -v nombre_carpeta, eliminará todas las carpetas y subcarpetas a partir de la carpeta "nombre_carpeta", sin pedir confirmación. Otro ejemplo: el comando halt apagará el equipo sin pedir confirmación, si es un equipo de un usuario normal no habrá problema, pero si se trata de un servidor de base de datos, web, etc. los servicios que éste prestaba dejarán de funcionar.

  • Los comandos han sido probados en sus respectivas distribuciones GNU Linux: Debian, Ubuntu, Knoppix, Fedora, Gentoo, Slackware, openSuSE, Mandriva, Red Hat, etc.

Algunos comandos del shell de GNU Linux, descripción, ejemplos de uso

COMANDO

DESCRIPCIÓN

EJEMPLO

su nombreusuario

Cambia el usuario actual a nombreusuario (pedirá la contraseña del usuario con el que queramos iniciar la sesión)

su root

who -u

Muestra los usuarios conectados al sistema

who -u

who -b

Muestra la fecha y hora del último reinicio del sistema

who -b

ps -A

Muestra todos los procesos en ejecución y el identificador de proceso (PID)

ps -A

ps -A | grep bash

Muestra todos los procesos que lleven la palabra "bash"

ps -A | grep bash

ps -fu oracle

Muestra los procesos y los usuarios que los ejecutan en formato UNIX

ps -fu oracle

ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS

Muestra los procesos ordenados por uso de memoria (los que más memoria usan al final)

ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS

pstree

Procesos activos del sistema jerarquizados en forma de árbol

pstree

kill -9 numeroproceso

Cierra el proceso especificado por el PID (numeroproceso)

kill -9 745

ls -l

Lista los ficheros y directorios de la ubicación actual

ls -l

ls -lSrh

Muestra una lista de los ficheros de una carpeta ordenados por tamaño (los más grandes al final)

ls -lSrh

sh nombreficherosh

Ejecuta el fichero de script especificado

sh prueba.sh

./nombrefichero

Ejecuta la aplicación especificada

./mysql

apt-get install nombreaplicacion

Instala la aplicación especificada (si se tiene conexión a Internet), sólo disponible en distribuciones Debian

apt-get install mysql-server

apt-get update

Actualiza 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 upgrade

Actualiza todos los paquetes instalados en el sistema a la última versión disponible

apt-get upgrade

apt-get install -f

Comprueba 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 descargado

apt-get install -f

apt-get clean

Elimina todos los paquetes (.deb) descargados (almacenados automáticamente en '/var/cache/apt/archives/')

apt-get clean

     

cp nombrefichero carpetadestino

Copia uno o varios (*) ficheros a la carpeta especificada

cp * /usr/bin

mv nombrecarpeta carpetadestino

Mueve una carpeta/fichero al destino especificado, también sirve para renombrar ficheros/directorios

mv /home/alonso /etc

apt-cache search datoabuscar

Busca una aplicación en la lista de aplicaciones a instalar (sólo distribuciones Debian)

ap-cache search mysql

whoami

Muestra el usuario con el que se ha iniciado la sesión de terminal

whoami

pwd

Muestra el directorio de trabajo actual

pwd

ifconfig

Muestra la IP del pc y la configuración de red

ifconfig

iwconfig

Muestra información de las tarjetas de red inalámbrica (wireless) que haya instaladas en el equipo

iwconfig wlan0

ping host

Realiza ping entre pcs

ping 192.168.1.5

ifconfig id_tarjeta down

Detiene los servicios de red de la tarjeta especificada (id_tarjeta)

ifconfig eth0 down

ifconfig id_tarjeta up

Inicia los servicios de red de la tarjeta especificada (id_tarjeta)

ifconfig eth0 up

route

Muestra información de la tabla de enrutación de la red

route

route add default gw ip_puerta_enlace id_tarjeta

Añade como puerta de enlace (gateway) por defecto la indicada en ip_puerta_enlace

route add default gw 192.168.1.1 eth0

passwd nombreusuario

Cambia la contraseña al usuario especificado

passwd alonso

cat nombrefichero

Muestra el contenido de un fichero (de texto)

cat /etc/mysql/my.cnf

vi nombrefichero

Utililidad que sirve para modificar ficheros de texto plano:

  • pulse "i" para editar el fichero.

  • pulse "ESCAPE", a continuación ":wq" e INTRO para guardar los cambios y cerrar el fichero.

vi /etc/mysql/my.cnf

sudo comando usuario

Ejecuta el comando especificado con los derechos del usuario especificado (pedirá la contraseña de este usuario)

sudo apt-get install mysql-server root

du nombredirectorio -h -s

Muestra el tamaño de todos los subdirectorios del directorio especificado y el tamaño total del mismo .

-h: Muestra el resultado en unidades entendibles por el usuario (Bytes, MB, GB, etc).

-s: no muestra el tamaño de los subdirectorios, sí lo tiene en cuenta para el tamaño total de la carpeta

du -sh /home

rm nombrefichero

Borra / elimina el fichero especificado

rm /home/alonso/hola.txt

rm -f -v

Elimina uno o varios ficheros sin pedir confirmación (-f), mostrando los ficheros que va eliminando (-v)

rm -f -v fernando*

shred -u nombre_fichero

Elimina un fichero de forma segura (ya no podrá ser recuperado). El comando "rm" no elimina ficheros completamente, podrían ser recuperados

shred -u "fernando alonso"

rm -f -r -v nombre_carpeta

Elimina 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

date

Muestra la hora y la fecha

date

cal mes año

Muestra un calendario del mes y año especificados

cal 12 2005

man comando

Muestra ayuda sobre el comando especificado

man ifconfig

cd nombredirectorio

Cambia del directorio actual al directorio especificado

cd /usr/bin

mkdir nombredirectorio

Crea un directorio

mkdir prueba

rmdir nombredirectorio

Elimina el directorio especificado (debe estar vacío)

rmdir prueba

rm -r nombredirectorio

Elimina el directorio especificado y todo su contenido

rm -r prueba

file nombrefichero

Muestra el tipo de archivo o directorio. Las posibles salidas:

  • ASCII English text

  • directory

  • symbolic link to 'enlace'

  • executable

  • ...

file cdrom

find expresionbusqueda

Busca ficheros coincidentes con la expresión de búsqueda

find . -name "*mysql*" -print

find -size +500000

Muestra los ficheros de tamaño superior a 500 MB

find -size +500000

cksum nombrefichero

Muestra el CRC del fichero y el tamaño en bytes

cksum isoinfo

grep MemTotal /proc/meminfo

Muestra la memoria RAM total del sistema

grep MemTotal /proc/meminfo

grep SwapTotal /proc/meminfo

Muestra la cantidad de espacio swap del sistema (memoria de intercambio)

grep SwapTotal /proc/meminfo

df -h

Muestra las unidades de disco, el tamaño y el espacio libre.

-h: muestra el resultado en unidades entendibles por el usuario (M= Megabytes, G=Gigabytes, etc).

df -h

df . -h

Muestra el espacio libre, ocupado y total del disco actual

df . -h

uname -a

Muestra información del sistema. uname -a es equivalente a uname -snrvmpio, donde:

  • -s: nombre del kernel.

  • -n: nombre del equipo en la red (host).

  • -r: release del kernel.

  • -v: versión del kernel.

  • -m: nombre hardware de la máquina.

  • -p: tipo de procesador.

  • -i: tipo de plataforma hardware.

  • -o: nombre sistema operativo.

uname -a

arp

Muestra y modifica las tablas de conversión de direcciones IP en direcciones físicas que usa el protocolo de resolución de direcciones (ARP ó Address Resolution Protocol)

arp -i eth0

chmod 777 nombrearchivo

Asigna al fichero nombrearchivo permisos del lectura, escritura y ejecución para el propietario, grupo e invitado

chmod 777 prueba

chown nombreusuario nombrearchivo

Cambia el propietario del archivo nombrearchivo a nombreusuario

chown alonso prueba

date --set=15:30

Cambia la hora del sistema a las 15:30

date --set=15:30

deluser nombreusuario

Elimina el usuario nombreusuario y todos sus archivos de configuración

deluser alonso

discover --xdriver video

Muestra el driver de la tarjeta de video

discover --xdriver video

discover ethernet

Muestra el driver de la tarjeta de red

discover ethernet

echo $NOMBREVARIABLE

Muestra el valor de la variable de entorno especificada (nombrevariable)

echo $HOSTNAME

env

Muestra las variables de entorno definidas para el usuario actual

env

fdisk -l

Muestra la estructura y tipo de particiones

fdisk -l

find / -name mysql* -exec rm {} ;

Busca todos los ficheros que comiencen por "mysql" y los ELIMINA

find / -name mysql* -exec rm {};

free

Muestra información sobre la memoria RAM y Swap (total, libre y ocupada)

free

fsck /dev/hda1

Comprueba el sistema de ficheros de la partición hda1

fsck /dev/hda1

gcc -o nombreprograma ficheroresultante.c

Compila "nombreprograma.c" y devuelve el ficheroresultante.c compilado

gcc -o prueba prueba.c

groups

Muestra los grupos de seguridad a los que pertenece el usuario actual

groups

groupadd nombregrupo

Añade un nuevo grupo de seguridad

groupadd leerayuda

gunzip fichero.tar.gz | tar -xvf fichero.tar

Descomprime y desempaqueta el archivo 'fichero.tar.gz'

gunzip mysql.tar.gz | tar -xvf mysql.tar

gzip fichero

Comprime el archivo "fichero", renomb?andolo a 'fichero.gz'

gzip mysql

tar xvf fichero.tar

Desempaqueta el archivo "fichero.tar"

tar xvf oracle.tar

tar -czvf fichero_tar ficheros_comprimir

Comprime/Empaqueta los ficheros especificados en "ficheros_comprimir" en el fichero "fichero_tar"

tar -czvf /tmp/prueba.tar /root/*

tar -tzvf fichero_tar

Muestra el contenido del fichero "fichero_tar" (comprimido con "tar")

tar -tzvf /tmp/prueba.tar

tar -tzvf /dev/st0

Muestra el contenido del dispositivo de copia de seguridad "/dev"st0"

tar -tzvf /dev/st0

tar -czvf /dev/st0

Descomprime el contenido del dispositivo de copia de seguridad "/dev/st0" en la ubicación donde se ejecute el comando

tar -czvf /dev/st0

head nombrefichero

Muestra las 10 primeras líneas del fichero nombrefichero

head mysql

history

Listado de los comandos utilizados por el usuario

history

nombreservicio -k restart

Reinicia el servicio nombreservicio

httpd -k restart

ifdown eth0

Para el servicio de red 'eth0'

ifdown eth0

ifup eth0

Arranca el servicio de red 'eth0'

ifup eth0

netstat -a

Muestra los puertos abiertos

netstat -a

netstat -atun | grep ESTAB

Muestra las conexiones establecidas a puertos determinados

netstat -atun | grep ESTAB

type comando

Muestra la ubicación del comando especificado

type ifconfig

mount -rt iso9660 /dev/hdc /cdrom

Monta 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 /floppy

Monta 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 /dispositivo

Desmonta el dispositivo especificado

umount /cdrom

umount  -a

Desmonta todas las unidades y dispositivos montados

umount -a

wc nombrefichero

Muestra las líneas, palabras y caracteres del fichero especificado

wc prueba

whois nombredominio

Muestra información del dominio especificado (fecha registro, fecha expiración, dns, ...)

whois ajpdsoft.com

xvncviewer ip

Realiza control remoto al equipo con la IP especificada (deberá tener instalado y en ejecución vncserver). Permite el control remoto tanto con PCs con Linux como con PCs con Windows

xvncviewer 192.168.1.3

which comando

Localiza la ubicación del comando especificado

which ls

wget direccionftp/nombrefichero

Descarga el fichero nombrefichero de la dirección ftp direccionftp. También sirve para conexión mediante http

wget ftp://ftp.ajpdsoft.com/j (en este caso el ftp debe soportar conexiones anónimas)

addgroup nombregrupo

Añade un nuevo grupo de seguridad

addgroup accesored

useradd -g nombregrupo nombreusuario

Añade un nuevo usuario con el nombre nombreusuario perteneciente al grupo nombregrupo

useradd -g root alonso

tr 'A-Z' 'a-z' < fichero.txt

Convierte a minúsculas todos los caracteres del archivo 'fichero.txt'

tr 'A-Z' 'a-z' < prueba

top

Muestra 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 espaciadora

top

tail nombrefichero

Muestra las últimas diez líneas del fichero nombrefichero

tail my.cnf

shutdown minutos 'mensaje'

Reinicia el sistema en los minutos especificados, previamente envía un mensaje a todos los usuarios conectados con el texto: mensaje

shutdown 15 'El sistema se reiniciará en 15 minutos, guarde su información'

shutdown -h now

Apaga el sistema instantáneamente (equivalente a halt o init 0)

shutdown -h now

shutdown -r now

Reiniciar el sistema instantáneamete (equivalente a reboot o init 6)

shutdown -r now

shutdown -r hh:mm

Reinicia el equipo a la hora y minuto indicada

shutdown -r 20:00

cat /dev/hda > /dev/hdb

Copia todo el disco duro 'hda' en el disco duro 'hdb'

cat /dev/hda > /dev/hdb

cat /dev/cdrom > /usr/fichero.iso

Crea la imagen ISO-9660 del CD-ROM introducido, con el nombre 'fichero.iso' en el directorio '/usr'

cat /dev/cdrom > /usr/fichero.iso

chgrp grupo archivo

Cambia el grupo del archivo especificado al grupo especificado

chgrp accesored mysql.cnf

hwbrowser&

Muestra el navegador de hardware (modo gráfico): discos duros, SCSI, CD-ROM, USB, Unidades de cinta, etc

hwbrowser&

watch "comando"

Ejecuta repetidamente el comando entre comillas y muestra el resultado en pantalla

watch "du -s -h"

whereis

Busca los archivos ejecutables, las fuentes y el manual de un comando

whereis ls

whereis man

ifdown eth0

Desactiva la tarjeta de red especificada (eth0)

ifdown eth0

ifup eth0

Activa la tarjeta de red especificada (eth0)

ifup eth0

chkconfig

Muestra/Modifica el estado de los servicios del sistema en cada nivel de arranque (runlevel)

chkconfig --list dbora

modprobe

Añade/Elimina módulos del Kernel de Linux

modprobe qla2300

vmstat

Muestra estadísticas de uso de la memoria, cpu, lectuas/escrituras en disco, etc

watch "vmstat -s -S: M"

free

Muestra estadísticas de uso de la memoria

watch "free -m"

lsmod

Muestra el estado de los módulos en el Kernel de Linux

lsmod

cd /etc/init.d

ls -l

En el directorio init.d se guardan todos los servicios instalados en el equipo, accediendo a este directorio y haciendo un ls -l se pueden ver

cd /etc/init.d

ls -l

service nombre_servicio status

Muestra el estado del servicio especificado "nombre_servicio": stopped, se está ejecutando, ...

service dsmserv status

service nombre_servicio start

Inicia el servicio especificado "nombre_servicio"

service dsmserv start

service nombre_servicio stop

Detiene el servicio especificado "nombre_servicio"

service dsmserv stop

service nombre_servicio restart

Reinicia el servicio especificado "nombre_servicio"

service dsmserv restart

export nombrevariable=valor

Cambia el valor de una variable de entorno

export $PATH=/home/oracle/bin

echo nombrevariable

Muestra el valor de la variable de entorno nombrevariable

echo $PATH

set

Muestra todas las variables de entorno shell y su valor

set

hostname -i

Muestra la IP de la interfaz de red actual del equipo (normalmente eth0)

hostname -i

ethtool eth0

Muestra el estado actual de la interfaz de red indicada "eth0"

ethtool eth0

ethtool --change eth0 autoneg off speed 100 duplex full

Permite cambiar de forma manual la velocidad del interfaz de red indicado, en este caso "eth0"

ethtool --change eth0 autoneg off speed 100 duplex full

ip addr add 192.168.1.100 brd + dev eth0

Añade una nueva IP al interfaz de red indicado, en este caso "eth0"

ip addr add 192.168.1.100 brd + dev eth0

ip addr show

Muestra todas las direcciones de todas las interfaces de red del equipo

ip addr show

cal -3

Muestra un calendario del mes anterior, el actual y el siguiente a la fecha actual del equipo

cal -3

last reboot

Muestra las veces que el equipo se ha reiniciado, la fecha, la hora y el tipo de reinicio

last reboot

head -n1 /etc/issue

Muestra el nombre y la versión de la distribución de GNU Linux instalada

head -n1 /etc/issue

grep "model name" /proc/cpuinfo

Muestra el fabricante, el modelo y la velocidad del procesador (CPU) del equipo

grep "model name" /proc/cpuinfo

hdparm -tT /dev/sda

Realiza un test para calcular la velocidad de transferencia del disco duro indicado

hdparm -tT /dev/sda

alias comando

Permite 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 -lah

alias listar='ls -lah'

lspci -tv

Muestra los dispositivos PCI (Peripheral Component Interconnect )

lspci -tv

lsusb -tv

Muestra los dispostivos USB, la ubicación, el bus, el puerto

lsusb -tv

visudo

Muestra 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 Puerto

Realiza una conexión mediante Telnet al equipo indicado "IP" utilizando el puerto indicado "Puerto"

telnet 192.168.1.100 4899

nano nombre_fichero

Editor en modo texto más intuitivo y fácil de usar que vi

nano /etc/sudoers

ftp

Realiza un conexión mediante el protocolo FTP a un servidor de FTP

ftp

usermod -a -G nombre_grupo nombre_usuario

Agrega el usuario "nombre_usuario" al grupo de seguridad "nombre_grupo"

usermod -a -G dba root

id nombre_usuario

Muestra el uid interno del usuario "nombre_usuario" y los grupos de seguridad a los que pertenece

id root

adduser -u 0 -o -g 0 -G 0,1,2,3,4,6,10 -M nombre_usuario

Añ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 -e

Edita el fichero "crontab" (equivalente al programador de tareas de Windows). Permite agregar nuevas tareas programadas, modificar o eliminar las actuales

crontab -e

init numero_nivel

Cambia 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

runlevel

Muestra el nivel de ejecución anterior y el actual. Si no ha cambiado, mostrará "N" en el anterior

runlevel

halt

Apaga 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 apaga

halt

poweroff

Apaga el equipo (equivalente a init 0, shutdown -h now, halt)

poweroff

reboot

Reinicia el equipo (equivalente a shutdown -r now, init 6)

reboot

 

Aquí tienes un enlace a más comandos "originales" en Linux: Pincha aquí.

 

Tutorial en Youtube:

Agregar comentario
Nombre:
Email:
Comentarios:
Código:
  Ingrese en el campo el número que se muestra en la imagen

Calendario
octubre 2019
lumamijuvido
 123456
78910111213
14151617181920
21222324252627
28293031   
 
Categoría
 
Los más comentados
 
Archivo
 
Reportes
Cantidad de posts: 73
Cantidad de comentarios: 115
 
Sindicación
 
Últimos comentarios
 
Etiquetas