Tabla de Contenidos

Comandos Linux Básicos

Ejemplos de comandos de Linux básicos para realizar tareas en una consola (terminal o SSH):

Ayudas varias en línea:

Para entender la organización del sistema de archivos en entornos Linux, ejemplos buenos de documentación:

cd

cd.

Cambiar de directorio.

cd ${ruta}.

Poner ojo al usar un punto al inicio de un componente de una ruta:

dirname

Indica quién es el directorio padre de una ruta. Ver también pwd.

ls

ls.

Listar archivos, listar directorios. Más o menos equivalente a dir en DOS.

ls:

pwd

Saber dónde estoy parado (directorio). Ver también cd y dirname.

Ver y Editar Archivos

Para ver y editar archivos se recurre a dos tipos de programas: un paginador es un programa que muestra la información de un archivo en pantalla y un editor es un programa que presenta una interface para editar un archivo.

Crear un Archivo

touch archivo.txt crea un archivo vacío llamado “archivo.txt”.

Otra opción es simplemente invocar un editor con el nombre del archivo como se muestra abajo.

Ver y Editar

usuario $ less archivo  # paginador para ver un archivo de texto; ''q'' para salir.
usuario $ nano archivo  # editor para modificar un archivo de texto; ''CTRL-X'' para salir / grabar.

Ejemplos de paginadores son: less que funciona con las teclas de ↑↓, AvPág, RePág, / (buscar), q (salir); more que presenta el contenido de a un pantallazo por vez y acepta Enter y espacio para avanzar, y cat que muestra de golpe todo el contenido de un archivo.

Ejemplos de editores son nano, emacs y vi.

cp

cp.

Copia archivos.

Forma 1: Copia un archivo o directorio ${origen} a la ubicación (carpeta) ${/ruta/dirdestino/} (notar el / al final):

usuario $ cp origen /ruta/dirdestino/.

Forma 2: Copia una ruta o directorio ${/ruta/dirorigen}, y sus hijos, a la ubicación (carpeta) ${/ruta/dirdestino/} (notar el / al final):

usuario $ cp -R /ruta/dirorigen /ruta/dirdestino/.

Forma 3: Copiar al directorio de destino ${dirdestino} varios archivos:

usuario $ cp -t /ruta/dirdestino/. archivo1 archivo2 archivo3 ...
Notar que el punto es un marcador importante al referirse a las rutas en Linux: las siguientes instrucciones son diferentes.
cp -R /ruta/directorio/elemento    /ruta/destino/     #<-- 1
cp -R /ruta/directorio/elemento/.  /ruta/destino/     #<-- 2
  1. Copia el archivo o carpeta elemento a la ruta /ruta/destino/. El resultado es /ruta/destino/elemento.
  2. Copia las rutas en elemento a la ruta /ruta/destino/. El resultado es /ruta/destino/hijos....

mv

mv.

Forma 1: Mueve (no copia) archivos y rutas. Tomar ojo de la misma nota anterior.

usuario $ mv /ruta/origen /ruta/destino/   # el resultado es /ruta/destino/origen
usuario $ mv /ruta/origen /ruta/destino    # el resultado es /ruta/destino (que se sobreescribe con origen)

Forma 2: Cambiar el nombre de un archivo.

usuario $ mv helpcom.txt Helpcom.txt   # Ojo: si Helpcom.txt ya existe lo va a sobreescribir.

chmod

chmod.

Cambia los permisos de acceso y ejecución de un archivo. Sólo superusuarios y el propietario de un archivo (o de su ruta) pueden cambiar los permisos de un archivo.

En general se categorizan tres tipos de permisos para un archivo: rwx donde r = leer, w = escribir, x = ejecutar (si es un programa, por ejemplo). Estos tres tipos de permisos pueden estar asociados a las tres categorías de usuarios ugo donde u = user (el usuario propietario del archivo), g = group (cualquier usuario que pertenezca al grupo del archivo), o = otros.

Por ejemplo, se pueden describir algunos permisos de archivo como sigue:

Propietario:Grupo Permisos Efecto
ccisterna:helpcom rwxrwxr-- ccisterna puede leer, escribir y ejecutar (rwx); cualquier usuario del grupo helpcom también puede hacerlo; otros usuarios sólo pueden leer (r–).
usuario:www-data rw-r----- Sólo el usuario puede leer y escribir; el servicio web (Apache, etc) sólo puede leer; otros usuarios sólo pueden ver que el archivo existe pero no ver su contenido. Estos son permisos para p.ej.: una página web estática.
administrador:administrador rw-rw-r-- El usuario administrador y cualquier usuario de su grupo pueden modificar los archivos; el resto sólo puede leer. Estos son permisos para p.ej.: los archivos de DTE dentro de una carpeta de Facturación Electrónica.

Para dar o quitar permisos el propietario ejecuta uno de los siguientes comandos:

chmod [-R] [ugo][+][rwx] archivos...  # agregar
chmod [-R] [ugo][-][rwx] archivos...  # quitar

Donde se escoge una o más categorías de usuarios y uno o más permisos. Por ejemplo “go+r” da al grupo y al resto del mundo derecho de leer el archivo; “ugo-x” quita a todos (incluso al propietario) el derecho de ejecutar el archivo.

Información del Sistema

Sistema Operativo:

# Información general de la distribución
usuario@host $ lsb_release -a
 
Distributor ID:	Debian
Description:	Debian GNU/Linux testing
Release:	testing
Codename:	buster
 
# Versión del Kernel
usuario@host $ uname -a
 
Linux host 4.14.0-1-amd64 #1 Debian 4.14.0-1

Actividad del Equipo:

Red:

Otras Cosas Varias

#Cómo obtener mi IP pública
wget -O - checkip.dyndns.org
#Examinar la resolución de un dominio: 
usuario@host $ dig www.helpcom.cl
 
; <<>> DiG 9.11.4-4-Debian <<>> centaurus.helpcom.cl
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2478
 
;; QUESTION SECTION:
;centaurus.helpcom.cl.		IN	A
 
;; ANSWER SECTION:
centaurus.helpcom.cl.	14400	IN	A	190.13.136.236
 
;; Query time: 17 msec
;; SERVER: 208.67.222.222#53
#En las instalaciones de servidores hechas por Helpcom,
# buscar un paquete para instalar
usuario@host $ apt search openjdk
 
openjdk-8-demo/testing 8u171-b11-2 amd64
  Java runtime based on OpenJDK (demos and examples)
 
openjdk-8-doc/testing,testing 8u171-b11-2 all
  OpenJDK Development Kit (JDK) documentation
 
openjdk-8-jdk/testing 8u171-b11-2 amd64
  Conjunto de desarrollo de OpenJDK (JDK)
 
openjdk-8-jdk-headless/testing 8u171-b11-2 amd64
  OpenJDK Development Kit (JDK) (headless)
 
openjdk-8-jre/testing 8u171-b11-2 i386
  OpenJDK Java runtime, using Hotspot JIT
 
openjdk-8-jre-headless/testing 8u171-b11-2 i386
  OpenJDK Java runtime, using Hotspot JIT (headless)
 
openjdk-8-jre-zero/testing 8u171-b11-2 amd64
  Alternative JVM for OpenJDK, using Zero/Shark
 
openjdk-9-jre/now 9.0.4+12-4 amd64 [instalado, local]
  OpenJDK Java runtime, using Hotspot JIT
 
openjdk-9-jre-headless/now 9.0.4+12-4 amd64 [instalado, local]
  OpenJDK Java runtime, using Hotspot JIT (headless)
 
# El paquete deseado se puede instalar con "apt" o "aptitude" como superusuario
# Reiniciar el equipo
[usuario@host] $ su
# Contraseña de superusuario...
[root@host] $ reboot