Principales Comando de Linux

publicado a la‎(s)‎ 14 oct. 2015 4:31 por Juan Jose Ramirez Lama

Introducción


Es un programa que trabaja sobre el sistema operativo (llegando a ser parte de el)

Permite al usuario interactuar de forma directa con el sistema.

Los primeros interpretes de comandos nacieron cuando aun no existian sistemas gráficos

Utilizan un ambiente de texto

También existen los shell gráficos (explorer.exe , nautilus, etc)

A pesar de que mayoritariamente se utilizan sistemas gráficos los shell de texto siguen utilizándose ampliamente sobre todo en sistemas Unix/Linux.


Algunos intérpretes de comandos


  • Texto

    • command.com



    • sh



    • bash



    • csh



  • Gráficos

    • explorer



    • nautilus



    • konqueror




BASH


  • Para ejecutar el interprete de comandos:

    • Ejecutar una consola virtual (CTRL-ALT F1) e ingresar al sistema



    • Ejecutar un Terminal (Boton derecho -> ejecutar terminal)



  • Por defecto en GNU/Linux se utiliza bash

    • Shell desarrollado por GNU, bajo GPL



    • Cuando se ejecuta aparece el símbolo $



    • Este simbolo nos indica que el intérprete está esperando por algún comando



    • Bash permite la ejecución de instrucciones dentro de un programa (shellscript)




Shorcuts de bash, permite un manejo más eficiente

CTRL + l: Limpia la pantalla, tiene el mismo efecto del comando clear

CTRL + d: Finaliza la Shell, tiene el mismo efecto que el comando exit

Flecha Arriba: retrocede en el historial de comandos.

Flecha Abajo: Avanza en el historial de comandos.

CTRL + r: Entra al modo Busqueda Historial, en este modo se autocompletan las ordenes que se encuentren en el historial de comandos.

SHIFT + RePag: Retrocede en una pagina la salida del shell, cumple la misma funcion de la barra scroll que tienen algunos terminales.

SHIFT + AvPag: Avanza en una pagina la salida del shell.

TAB: Autocompletar comandos.

Comandos básicos



  • Son los comandos para realizar diversas tareas (copiar, mover, borrar, renombrar, crear directorios, crear archivos, cambiar propiedades, etc).

  • Todo comando permite el uso de "opciones", estas modificaran el comportamiento del comando.

  • Es posible combinar estos comandos para realizar tareas complejas.

  • Como convención se utilizara "$" para indicar que el comando debe ejecutarse en bash.


Ejemplo: ejecutar el comando para listar archivos/directorios

$ ls -lar


El comando es "ls"

Las opciones son "lar"


ls (listar directorios y archivos)


Muestra el contenido de un directorio en particular


Opciones:




  • l: Escribe (en formato de una sola columna) los permisos del fichero, el numero de enlaces que tiene, el nombre del propietario, el grupo al que pertenece, el tamaño (en bytes), una marca de tiempo y el nombre del fichero. De forma predeterminada la marca de tiempo que se muestra es el de la ultima modificación.

  • a: Incluye en el listado archivos ocultos (cuyos nombres comienzan con ".").

  • h: Human-readable, indica una letra al lado del tamaño, pudiendo ser K: Kilobytes, M: Megabytes, G: Gigabytes.

  • F: Permite difereciar los tipos de archivos de los directorios, donde los directorios con un caracter "/" al final del nombre, los archivos ejecutables con un "*" y los enlaces simbolicos con una "@".

  • R: Realiza un listado recursivo dentro de cada directorio.


Al utilizar la opción "l" muestra:

|Permisos | Enlaces | Dueño | Grupo | Tamaño | Fecha | Nombre|


Descripción:


  • Permisos: El Primer carácter indica el tipo de archivo el que puede ser "-"(archivo), "d"(directorio) o "l"(enlace simbólico), las 9 letras restantes se dividen en tres conjuntos de tres caracteres cada uno (rwx donde r=lectura, w=escritura, x=ejecucion, -=sin permiso), donde el primer conjunto representa los permisos para el usuario, el segundo conjunto representa los permisos para el grupo y el tercer conjunto representa los permisos para el resto de los usuarios del sistema.

  • Enlaces: Numero de enlaces.

  • Dueño: Nombre del usuario propietario del archivo.

  • Grupo: grupo al que pertenece el archivo.

  • Tamaño: Tamaño del archivo en Bytes.

  • Fecha: fecha y hora de creacion del archivo o ultima modificacion.



cd (Cambiar de directorio)


Con este comando se puede navegar por el sistema de archivos


Para ingresar a un directorio:

$ cd nombre_directorio


Para retroceder al directorio padre

$ cd ..


Para ir a cualquier directorio (utilizando el nombre absoluto)

$ cd /dir1/subdir/dirfinal


Para ir al directorio /etc/apt/

$ cd /etc/apt


Para ir al directorio de la cuenta

$ cd /home/linux


$ cd


pwd (Mostrar directorio de trabajo)


¿Como saber en que lugar del árbol de directorio nos encontramos ?


Se debe usar el comando "pwd"

$ pwd


du (peso de un directorio)


Para ver el peso de un directorio (incluyendo sus subdirectorios) se utiliza "du"


¿Cuanto pesa el directorio /home/linux ?

$ du -sh /home/linux


Para ver el espacio disponible de disco se usa el comando "df"

$ df -h


mkdir (crear directorios)


El comando "mkdir" creará un/os directorio/s


Uso:

$ mkdir directorio1 directorio2 directorio3 ...


rmdir (borrar directorios)


Se puede indicar a "mkdir" para que crear una serie de subdirectorios


Para crear los siguientes directorios:  asignaturas/2005/informatica/codigos

$ mkdir -p asignaturas/2005/informatica/codigos


Para borrar un directorio se usa rmdir (el directorio debe estar vacio)

touch (crear archivos vacios)


El comando "touch" crear un/os archivo/s vacio/s


Uso:

$ touch arch1.txt arch2.c arch3.java ...


cp (copiar archivos y directorios)


El comando "cp" permite copiar archivos y directorios


Uso:

$ cp archivo_origen lugar_archivo_destino


Ejemplo: copiar /etc/apt/source.list en la cuenta

$ cp /etc/apt/source.list /home/linux


Tambien se le puede indicar como 2do parametro el directorio actual (donde se esta posicionado, para verificar use pwd), usando "."

$ cp /etc/apt/source.list .


Para copiar un directorio se debe utilizar la opción revursiva "r"

$ cp -r directorio_origen destino


mv (mover/renombrar archivos)


El comando "mv" permite el mover (corta, pegar) como renombrar un archivo o directorio


Uso:

$ mv origen destino


Si el destino es otro directorio "mueve"


Si el destino es el mismo directorio "renombra"

rm (borrar archivos y directorios)


El comando "rm" borra archivos y directorios; Puede borrar mas de un archivo

$ rm archivo1 archivo2 archivo3 ...


Para borrar un directorio incluyendo todo su contenido se debe usar la opción "r"

$ rm -r directorio


Si no queremos que confirme el eliminar se usa la opción "f" (usar con mucho cuidado)

$ rm -rf directorio


ln (Enlaces simbólicos)


El comando "ln" crea enlaces, utilizando la opción "s" se crean enlaces simbólicos


Uso:

$ ln -s archivo enlace_a_archivo


$ ln -s directorio enlace_a_directorio


Ejecutar aplicaciones


En la "Shell" no es posible asociar extensiones a programas.


Para abrir un archivo debe ejecutarse primero la aplicación.


Se debe utiliza la ruta absoluta.


P. E: ejecutar la calculadora "gcalctool" que se encuentra en /usr/bin

$ /usr/bin/gcalctool


Algunas veces es posible utilizar solo el nombre de la aplicacion

$ gcalctool


Para saber que comando ejecuta un icono del panel ver sus propiedades


Boton derecho -> propiedades -> Comando:...

Permisos


Para visualizar los permisos de un archivo/directorio "ls -l"


t p g o

d rwx rwx rwx


t=tipo, p=propietario, g=grupo, o=otros.


  • La información es la misma que entrega nautilus

  • Tipo de usuario:

    • propietario



    • grupo



    • otros



  • Permiso:

    • r: lectura



    • w: escritura



    • x: ejecución




chmod (cambia permisos)



  • Para facilitar el cambio de permisos se utiliza el sistema octal

  • Se utiliza un dígito para el tipo de usuario, por lo que se usan 3 

    • El primero para el "propietario" (el más significativo)



    • El segundo para el "grupo"



    • El tercero para "otros"



  • Cada digito se forma utilizando el siguiente código octal:


Tipo de Permiso: Codigo Octal:


  • Sin Permiso 0

  • Permiso de Ejecucion (x) 1

  • Permiso de Escritura (w) 2

  • Permiso de Lectura (r) 4



Ejemplo:


  • Al archivo "datos.txt" se le desea dar el siguiente permiso

    • Propietario: Lectura, escritura, ejecución



    • Grupo: Lectura, ejecución



    • Otros: Lectura




Propietario Grupo Otros


Lectura = 4 Lectura = 4 Lectura = 4

Escritura = 2 Escritura = 0 Escritura = 0

Ejecucion = 1 Ejecucion = 1 Ejecucion = 0

Total = 7 Total = 5 Total = 4




    • El comando a ejecutar:

      • $ chmod 754 datos.txt






Empaquetado



  • Cuando se distribuye un archivo en Unix/Linux se utilizanormalmente el formato tar.gz, (archivo.tar.gz)

  • El archivo se encuentra en dos formatos:

  • Empaquetado en la herramienta gnu tar, con la aplicación tar.

  • Comprimido en formato gz, con la aplicación gzip.

  • Se usa debido a que tar "recuerda" los permisos de archivos ydirectorios

  • El comando tar solo empaqueta (los reune en un solo archivo)

  • Se deben efectuar 2 pasos

    • Empaquetar



    • Comprimir




Para empaquetar se usa el comando

$ tar -cvf directorio.tar directorio_a_empaquetar





    • c : Empaquetar



    • v : Modo verbose (muestra lo que realiza el comando)



    • f : El lugar donde empaquetara (archivo.tar)




Para empaquetar el directorio ejemplos

$ tar -cvf ejemplos.tar ejemplos


Empaquetar/Comprimir


Para comprimir el archivo se suelen utilizar 2 programas distintos:


  • gzip (es el más extendido, su extensión es ".gz" )

  • bzip2 (más reciente, su extensión es "bz2")


gzip (generará ejemplos.tar.gz)

$ gzip ejemplos.tar


bzip2 (generará ejemplos.tar.bz2)

$ bzip2 ejemplos.tar


Empaquetar y Comprimir a la Vez

$ tar -zcvf archivo.tar.gz /directorio_destino
$ tar -jcvf archivo.tar.bz2 /directorio_destino


Desempaquetar/Descomprimir


Para volver a los archivos originales se debe


  • Descomprimir

  • Desempaquetar


Descomprimir/Desempaquetar


ejemplos.tar.gz

$ gunzip ejemplos.tar.gz
$ tar -xvf ejemplos.tar


ejemplos.tar.bz2

$ bunzip2 ejemplos.tar.bz2
$ tar -xvf ejemplos.tar


Se aprecia que la opción de tar "x"(desempaquetar) reemplaza a "c"


Desempaquetar y Descomprimir a la Vez

$ tar -zxvf archivo.tar.gz
$ tar -jxvf archivo.tar.bz2


Acceso Remoto



  • Mediante Internet podemos conectarnos a un equipo en cualquier lugar

  • Se utiliza la arquitectura cliente/servidor

  • Algunos de los protocolos

    • telnet

    • rsh

    • ssh



  • Actualmente por seguridad sólo se utiliza ssh

    • SSH :secure shell

      • Los datos viajan encriptados

      • Debe existir un Servidor de ssh en el destino

      • Para realizar la conexión debemos utilizar un cliente de ssh (ssh, putty, etc)






SSH


Nota: actualmente las direcciones aqui mostradas no existen.


Funciona en base a clave pública/privada,


Para ejecutar el cliente ssh en el terminal( consola, o shell)

$ ssh login@servidor


o

$ ssh -l login servidor


Para conectarse al servidor kalku con la cuenta juaramir

$ ssh juaramir@kalku.face.ubiobio.cl


o

$ ssh -l juaramir kalku.face.ubiobio.cl


Acceso remoto: Envio de archivos



  • Para enviar/recibir existen diversos protocolos , al igual que la conexión remota

    • ftp, sftp, scp (en realidad trabaja sobre ssh)



  • Por razones de seguridad se utiliza scp o sftp


La sintaxis en consola es la siguiente (es similar a cp)


Copiar un archivo

$ scp login@servidor:nombre_archivo .


Copiar un directorio

$ scp -r login@servidor:directorio .


Enviar un archivo

$ scp archivo login@servidor:


Enviar un directorio

$ scp -r directorio login@servidor:


Modo Grafico


Desde gnome 2.8 en adelante es posible enviar/recibir archivos por medio de nautilus


Se debe lanzar la conexión

Lugares -> Conectar con el servidor


Crear la conexión con los datos requeridos

protocolo, servidor, directorio, login, nombre conexión


Luego de haber creado la conexión, esta aparecerá en el escritorio o:

Lugares -> Servidores de red


Hacer doble click para conectarse (solicitará la clave)


Lo siguiente es utilizarlo como si fuera un directorio más del sistema

Comandos: cat, more, less



  • Estos comandos permiten visualizar un archivo de texto

    • cat: muestra todo el archivo

    • more: muestra el archivo línea por línea (enter) o página por página (barra espacio), para salir se debe presionar "q"

    • less: igual que more, pero permite retroceder




Editores de texto: vim, gedit


Para manipular un archivo de texto se debe utilizar un editor


Algunos de los disponibles en linux son:

vim


gedit


vim es un editor de textos, en modo consola


gedit es un editor de textos en modo gráfico


Bueno Aquí concluye este laaargo manual, espero les sea de utilidad.


Algunos Comandos:


Comandos básicos


(para mas información "man comando")

man páginas del manual (es un help muy potente)

ls listar (como dir)

rm borrar un fihero

cp copiar un fichero

pwd te dice el directorio en el que estás

cd directorio te sitúa en directorio

cd .. baja al directorio de nivel inferior

chownchgrpchmodtouch comandos para manejo de atributos de ficheros

find, locate buscar ficheros

catmorehead listar ficheros (como type)

split partir ficheros

grep buscar texto en ficheros (muy potente)


Comandos para comunicaciones y redes

who lista de usuarios conectados

finger información sobre usuario

mail sencillo programa de correo

write manda un mensaje a la pantalla de un usuario

mesg bloqueo de mensajes de write

wall mensaje a todos los usuarios

talk establecer una charla con otro usuario

banner saca letrero en pantalla con el texto que se le pase

cal saca el calendario en pantalla

clear limpia la pantalla

date saca fecha y hora actuales

passwd cambiar contraseña de un usuario


Entorno gráfico xwindow

Iniciar X  startx

Abrir nuevas sesiones  startx -- :2 , :3 , :4 , etc.

Configuración de XF86  /etc/X11/XF86Config

Configuración de servidor X /etc/X11/Xserver

Configurar X XF86Setup (entorno gráfico, tienes que instalar xserver_vga) /usr/sbin/xbase-configure (entorno línea de comandos)

Salir de las X  ctrl-alt-backspace

Fichero donde está el programa que arranca las X  /etc/X11/window-managers


Comprimir y descomprimir

Descomprimir un *.tar.gz tar -xvzf


Descomprimir un *.tar (el tar es un tar_gz al que se le ha pasado gunzip)  tar -xvf


Descomprimir un *.gz gzip -d

Empaquetar sin comprimir tar

Comprimir ficheros empaquetados  gzip


Manejo de las unidades de diskettes y Cd-Rom

Montar diskette  mount -t msdos /dev/floppy /mnt (/dev/floppy = /dev/fd0)

Montar Cd-Rom  mount -t iso9660 /dev/cdrom /mnt (/dev/cdrom = /dev/hdb)

Listar unidad montada  ls /mnt

Desmontar todo umount /mnt

Formatear floppy  superformat /dev/fd0 hd (msdos) (hay que tener instalado fdutils) superformat /dev/fd0 sect=21 cyl=83

mkfs.ext2 /dev/fd0 (crea sistema de ficheros ext2)


Manejo de ficheros

Enlace simbólico entre ficheros  ln -sf /dev/ttyS0 /dev/mouse (puerto serie 1)

ln -sf /dev/ttyS1 /dev/modem (puerto serie 2)


Número de inodo ls -i


Número de enlaces de un fichero  ls -l


Borrar enlaces  rm fichero (si no tiene enlaces borra el fichero)


Borrar directorios  rm -r


Ver espacio libre en disco  df (disco entero)

du -sh (directorios y ficheros)

Buscar un fichero find / -name mime.types (la / es la raiz donde quieres buscar)


Instalación y manejo de paquetes en Debian

dpkg -i Instalar paquete

dpkg --info Información del paquete

dpkg -c Muestra la lista de ficheros contenidos

dpkg --contents Lista todos los ficheros contenidos con sus directorios

dpkg -f Muestra información de versión del paquete

dpkg --unpack Desempaqueta

dpkg --purge Borra un paquete incluidos los ficheros de configuración

dpkg -r Borra un paquete pero no borra los ficheros de configuración

dpkg -L Lista el paquete si está instalado

dpkg -l Lista los paquetes instalados


Convertir paquetes de RedHat a Debian

alien -d fichero.rpm convierte fichero rpm a deb

alien -d fichero.tgz convierte fichero tgz a deb

alien -i fichero.rpm convierte fichero rpm a deb y lo instala

alien -i fichero.tgz convierte fichero tgz a deb y lo instala


Comando Para Privilegios.


sudo command # ejecuta command como raíz

sudo su # abrir shell raíz

sudo su user # abrir shell como usuario

sudo -k # olvidar tu contraseña sudo

gksudo command # visual sudo dialog (GNOME)

kdesudo command # visual sudo dialog (KDE)

sudo visudo # editar /etc/sudoers

gksudo nautilus # gestor ficheros raíz (GNOME)

kdesudo konqueror # gestor ficheros raíz (KDE)

passwd # cambiar tu contraseña


Comandos Network


ifconfig # muestra información de red

iwconfig # muestra información de wireless

sudo iwlist scan # escanea redes inalámbricas

sudo /etc/init.d/networking restart # resetear la red

(file) /etc/network/interfaces # configuración manual

ifup interface # traer interface online

ifdown interface # deshabilitar interface


Comandos de Display


sudo /etc/init.d/gdm restart # resetear X (Gnome)

sudo /etc/init.d/kdm restart # resetear X (kDE)

(file) /etc/X11/xorg.conf # mostrar Configuracion

sudo dpkg-reconfigure -phigh xserver-xorg # resetear configuración X

Ctrl+Alt+Bksp # resetear X display si congelado

Ctrl+Alt+FN # cambiar a tty N

Ctrl+Alt+F7 # cambiar de nuevo a X display


Comandos de Servicio del Sistema.


start service # iniciar trabajo service (Upstart)

stop service # parar trabajo service (Upstart)

status service # comprobar si service está ejecutando (Upstart)

/etc/init.d/service start #iniciar service (SysV)

/etc/init.d/service stop # parar service(SysV)

/etc/init.d/service status # comprobar service(SysV)

/etc/init.d/service restart # resetear service(SysV)

runlevel # obtener runlevel actual


Comandos para Cortafuegos.


ufw enable # encender el cortafuegos

ufw disable # apagar el cortafuegos

ufw default allow # permitir todas las conexiones por defecto

ufw default deny # drop all connections by default

ufw status # reglas y estado actual

ufw allow port # permitir tráfico en port

ufw deny port # bloquear port

ufw deny from ip # bloquear dirección ip


Comandos de Sistema.


Recovery # Escribir “REISUB” mientras se

mantiene Alt y SysRq (PrintScrn) con aprox. 1

segundo entre cada letra. Tu sistema reiniciará

lsb_release -a # obtener la versión de Ubuntu

uname -r # obtener versión del kernel

uname -a # obtener toda la información del kernel


Comandos para Gestor de Paquetes.


apt-get update # refrescar actualizaciones disponibles

apt-get upgrade #actualizar todos los paquetes

apt-get dist-upgrade # actualizar versión

apt-get install pkg # instalar pkg

apt-get remove pkg # desinstalar pkg

apt-get autoremove # eliminar paquetes obsotletos

apt-get -f install # intentar arreglar paquetes

dpkg –configure -a # intentar arreglar paquetes rotos

dpkg -i pkg.deb # instalar archivo pkg.deb

(file) /etc/apt/sources.list # lista de repositorios APT


Comandos Para Paquetes Especiales.


ubuntu-desktop # Entorno Ubuntu estándar

kubuntu-desktop # escritorio KDE

xubuntu-desktop # escritorio XFCE

ubuntu-minimal # núcleo utilidades Ubuntu

ubuntu-standard utilidades estándar Ubuntu

ubuntu-restricted-extras # no libres, pero utiles

kubuntu-restricted-extras # ídem KDE

xubuntu-restricted-extras # ídem XFCE

build-ess
ential #
 paquetes usados para compilar

linux-image-generic # última imagen genérica del kernel

linux-headers-generic #últimas cabeceras


Comandos de Aplicaciones.


nautilus # gestor de ficheros (GNOME)

dolphin # gestor de ficheros (KDE)

konqueror # Navegador web (KDE)

kate #editor de texto (KDE)

gedit # editor de texto (GNOME)




Comments