pub:linux

Basic Linux

A modo de (muy) breve resumen del Sistema Operativo UNIX (o Linux) se describen aquí un pequeño subconjunto de los comandos disponibles bajo los intérpretes de comandos (shells) sh (o su versión de Linux, bash) y csh (o tcsh, una versión extendida de csh). Estos shells permiten ejecutar comandos de forma interactiva con una sintaxis flexible y potente, sobre todo a la hora de crear secuencias/guiones (scripts) eficientes.

En UNIX (y Linux), los discos físicos se dividen en particiones lógicas (bloques de tamaño específico) con el comando format. Un sistema de archivos se dispone entonces sobre estas particiones, lo que permite una estructura de directorios o carpetas que pueden contener archivos de distintos tipos.
Algunos comandos que permiten al usuario manipular archivos son:

pwd

muestra el nombre del directorio actual (“.”)

ls

enumera/lista los archivos en el directorio actual

ls dir

enumera/lista los archivos en el directorio “dir”

ls -opciones

además de mostrar el contenido del directorio actual permite múltiples opciones, p.ej. ls -lF es una extensión útil que proporciona información adicional acerca de los archivos

cp archivo1 archivo2

copia archivo1 a archivo2

cd /dir1/dir2

ir al directorio especificado; cd .. significa ir al directorio por encima del directorio actual; cd ../dir3 significa subir un nivel, luego hacia abajo en el directorio dir3. El directorio actual está siempre asociado a “.”

mv archivo1 archivo2

cambiar el nombre archivo1 como archivo2, en el mismo directorio (cambiando el nombre del archivo), o mover archivo1 en algún otro directorio

cat archivo

muestra el archivo en la salida estándar (la pantalla, por lo general)

more archivo

muestra el archivo en la salida estándar (pantalla), una pantalla completa a la vez. No se saben las razones en Unix, pero el comando less hace lo mismo …

>

>>

redirige la salida a un archivo; p.ej., cat archivo1 > archivo2 copia el archivo archivo1 en archivo2, y cat archivo1 » archivo2 añade archivo1 al final de archivo2

|

“tubo” de conexión de salida estándar a la entrada estándar, p.ej. cmd1 | cmd2 envía la salida del comando cmd1 en la entrada de cmd2

touch archivo

actualiza el “sello” (stamp) de fecha y hora de un archivo, haciendo que parezca recién modificado

rm archivo

elimina un archivo

?

*

UNIX también es compatible con “comodines” en los nombres de archivo/directorio, p.ej. una ? será reemplazada por cualquier carácter individual, mientras que un * será reemplazado por cualquier número de caracteres coincidentes. Por ejemplo, ls abc*.c listará todos los archivos cuyo nombre comienza con “abc” y termina en “.c”

completar línea de comandos

En cualquiera de los intérpretes de comandos se permite completar o al menos sugerir el nombre completo de archivo/directorio/ruta sin tener que acabar de teclear exactamente todo el camino. En el caso de csh y tcsh hay que activarlo con el comando set filec y después utilizar la tecla ESC en csh o TAB en tcsh y bash

UNIX proporciona un entorno de computación multi-usuario. Esto significa que comparte sus recursos entre muchos usuarios, así como las diversas tareas que cada usuario podría estar realizando. También implica que UNIX debe proporcionar un mecanismo de seguridad contra los usuarios que buscan en directorios “home” de otrosusuarios del sistema.

Para obtener acceso a un sistema UNIX, un usuario primero debe identificar su cuenta en respuesta a la solicitud de inicio de sesión (login prompt)

    Login:     username
    Password:  password

a continuación, dar una contraseña única. Un usuario puede cambiar su contraseña con el comando passwd seguido de la vieja y nueva contraseñas.
El usuario puede salir del sistema con el comando de cierre de sesión logout. En el inicio de sesión, UNIX inicia un nuevo intérprete de comandos (shell), p.ej. csh o bash, y configura el entorno de usuario mediante la interpretación/ejecución de archivos “ocultos” (su nombre empieza por . y no aparecen con un simple ls) de configuración, .login y .cshrc ( .profile y .bashrc en bash).
El archivo .cshrc también se ejecuta cada vez que una nueva “tarea” (p.ej. una nueva ventana) se pone en marcha. Estos archivos ocultos son la forma de personalizar por parte del usuario su entorno informático a partir de comandos y reglas del intérprete, p.ej.:

alias nombre definición (csh)
alias nombre=definición (bash)

para definir “nombre” (por lo general algo corto) como “definición” (a menudo largo y/o complicado).
Cada archivo está marcado como propiedad de un usuario y como perteneciente a un grupo de usuarios. Cada archivo también está marcado con permisos de “lectura”, “escritura” y “ejecución” para su propietario, los miembros de su grupo, y para “otros”.
El comando directorio ls -l lista estos permisos como r, w y x si se les permite. Por ejemplo, el siguiente diálogo:

    > ls -l
    total 6
    -rw-rw-r--  1 sergio     4322 Jan 10 12:30 archivo1
    drwxrwxr-x  2 sergio      512 Jan 10 12:29 archivo2
    >

muestra que archivo1 se puede leer y escribir por el propietario y todos los miembros del grupo, y leído por todos, mientras que archivo2 está sin protección, salvo que no se puede escribir por “otros”. Además, archivo2 es un directorio (nombre de un sub-directorio dentro del actual indicado por un d en la primera columna). Para una descripción completa de ls y sus opciones, utilizar man ls

Las protecciones de un archivo o grupo de archivos se pueden modificar mediante el comando chmod. Por ejemplo, para hacer todos los archivos cuyos nombres comiencen por “abc” ejecutable por su grupo y es legible por los demás, se pondría:

	> ls -l abc*
        -rw-r--r--  1 sergio  staff   123 Mar 31 10:38 abc1
        -rw-r--r--  1 sergio  staff  2331 Mar 31 10:38 abc2
        -rw-r--r--  1 sergio  staff     2 Mar 31 10:38 abc34
	> chmod g+x,o-r abc*
	> ls -l abc*
        -rw-r-x---  1 sergio  staff   123 Mar 31 10:38 abc1
        -rw-r-x---  1 sergio  staff  2331 Mar 31 10:38 abc2
        -rw-r-x---  1 sergio  staff     2 Mar 31 10:38 abc34


Para cambiar los permisos de archivo por defecto, es decir, los permisos aplicados a cada nuevo archivo creado, utilice el comando umask :

	> umask 022
        > touch xyz
        > ls -l xyz
        -rw-r--r--  1 sergio  staff  0 Mar 31 10:57 xyz
	> umask 026
        > touch pqr
        > ls -l pqr
        -rw-r-----  1 sergio  staff  0 Mar 31 10:58 pqr


El algoritmo es un poco oscuro: toma el siguiente número del comando umask, restar desde 666, y el resultado es el de los permisos de usuario / grupo / otros, en octal! En la práctica, 022 da a todos el permiso de lectura, 026 niega el acceso de lectura a los demás (fuera de su grupo), y 066 significa que nadie más puede leer o ejecutar archivos. El umask comando se coloca normalmente en el archivo .login o .profile, por lo que se ejecuta cada vez que se inicia sesión en el sistema.
La posesión de un archivo puede ser modificada por el comando chown; este es un comando restringido, sin embargo puede ser ejecutado por el “superusuario” (root) del sistema.
Hay muchos otros comandos que facilitan la interacción de los usuarios con la máquina en cuestiones simples; por ejemplo:

date

muestra/cambia la fecha y hora del sistema

time

ejecuta programas y obtiene información de los recursos y tiempos empleados

hostname

muestra/cambia el nombre del sistema

finger

obtiene una lista de usuarios y lo que están haciendo

ps

muestra las tareas en ejecución en sesión/sistema; p.ej. ps -aux

history

muestra los comandos más recientes

!!

reinvoca el último comando

!cadena

reinvoca la última orden empezando por cadena === !n === reinvoca el n-ésimo comando

ayuda sobre comandos

Se puede obtener ayuda de cualquier comando UNIX a través del comandos man. El comando man cmd imprime en la salida estándar el contenido de las páginas de manual concerniente al comando UNIX cmd. También puedes buscar por el contexto con man -k cmd

Un archivo puede ser del “tipo especial” 'ejecutable' (p.ej., como resultado de una compilación de código C seguido de un enlazado con las bibliotecas adecuadas), lo que significa que contiene instrucciones para ejecutar en la máquina. Por ejemplo, cada comando UNIX es en sí mismo un “ejecutable” que reside en el disco en un directorio accesible por todos. Estos archivos son ejecutados por indicación de su nombre, seguido de cualquier argumento necesario. Por ejemplo, ls -lFg archivo ejecutará el comando ls, con argumentos -lFfg (un modificador) y archivo, lo que resulta es un listado de directorio muy completo para el archivo archivo.

Cualquier conjunto de comandos UNIX se puede poner en un “script” para ser ejecutado a la vez como un solo comando. El lenguaje es muy completo, incluyendo estructuras de control y bucle. Como ejemplo, considere la siguiente secuencia de comandos:

#!/bin/csh
#
#          example of a C-shell script
#          --------------------------- 
#
#		store the wordlist resulting from
#		the ls command in variable files
#		
set files = `ls`
#
#		foreach is a loop; files takes on the
#		value of each entry in files
#
#		$variable_name is the content of
#		that variable
#
foreach file ( $files )
      echo 'File name:' $file
end


El guión llama explícitamente al intérprete C-shell; el comando set transfiere el resultado del comando ls en la variable files como una lista de palabras. A continuación, el bucle foreach … end sobre la lista de palabras, asigna cada miembro a la variable file. El comando 'echo escribe un mensaje en la salida estándar. La sintaxis $ variable significa el “contenido” de la variable; $var[i] significa el contenido de la posición i en la variable.
A nivel de scripts las diferencias entre bash y csh se hacen más evidentes. Una versión de bash del script anterior podría ser:

#!/bin/bash
#
#          example of a bash script
#          ------------------------
#
#        store the wordlist resulting from
#        the ls command in variable files
#
files=`ls`
#
#        for is a loop; files takes on the
#        value of each entry in files
#
#        $variable_name is the content of
#        that variable
#
for file in $files; do
      echo 'File name:' $file
done

Si existe el archivo /etc/inittab editar el runlevel por defecto en la línea:

  id:N:initdefault:

N es el runlevel por defecto.

En algunos casos habrá que editar el archivo /etc/init/rc-sysinit.conf y cambiar la línea:

  env DEFAULT_RUNLEVEL=2

El resto de líneas del inittab tendrán el siguiente formato:

  
  id:niveles_ejecución:acción:proceso

Antiguo estándar Unix:

  0 - shutdown
  1 - single user mode
  3 - multiuser text mode
  5 - multiuser graphical mode
  6 - reboot

Ubuntu usa:

  0 - shutdown
  1 - single user mode
  2 - multiuser graphical mode
  6 - reboot

Para conocer el runlevel:

  who -r
  runlevel

Para cambiar el runlevel:

  telinit 

Ubuntu usa upstart en lugar de inittab para iniciar servicios y terminales del sistema, en cualquier caso también se parsea el archivo /etc/inittab si existe o se crea a propósito

# Auto Login for Ubuntu how?
# 1. apt-get install mingetty
# 2. vim /etc/init/tty1.conf

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
#exec /sbin/getty -8 38400 tty1
exec /sbin/mingetty --autologin <PUTYOUR_USERNAME_HERE> tty1
^
|____ edited only this line, seems to be working 

HOWTO: Autologin as root or as any other user in Linux in console mode

  • /etc/modules
  • /etc/modprobe.conf
  • /etc/modprobe.d/*

Teclado español en consola (Ubuntu):

  • Hay que instalar:
~$ sudo apt-get install console-common

y aparece asistente para configurar

  • Después para reconfigurar:
~$ sudo dpkg-reconfigure console-data
  • Cambio temporar del idioma de teclado (Ubuntu):
~$ loadkeys es
~$ loadkeys pt
~$ loadkeys us

Cambio de editor por defecto (/usr/bin/editor) en Ubuntu

~$ sudo update-alternatives –config editor

Cambio de intérprete de comandos (shell) por defecto (/bin/sh) en Ubuntu, por defecto dash, recomendable bash

~$ ls -l /bin/sh
~$ sudo dpkg-reconfigure dash

Comprobación

~$ ls -l /bin/sh

Prolific PL-2303/2303X/2303HX serial adapters

~$ dmesg | grep tty
~$ ls -al /dev/ttyUSB*
~$ sudo lsusb -v
~$ sudo usermod -a -G dialout <username>
~$ sudo chmod 666 /dev/ttyUSB0
~$ sudo rm /dev/ttyS40
~$ sudo ln /dev/ttyUSB0 /dev/ttyS40 
~$ sudo minicom -s

Minicom Ubuntu

#!/bin/bash
sudo chmod 666 /dev/ttyUSB0
putty

Visualizacion de líneas de estado de puertos serie

~$ sudo apt-get install statserial
~$ statserial /dev/ttyUSB0

Serial Programming HOWTO

~$ sudo apt-get source statserial

statserial.c

  • Listado:
$ ifconfig -a
  • Habilitar/desabilitar interfaces:
$ ifconfig eth0 down 
$ ifconfig eth0 up
  • Archivo de configuración (/etc/network/interfaces)
# Configuración de dirección IP estática en interfaz eth0
auto eth0
iface eth0 inet static
address 192.168.1.50
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

# Configuración de dirección IP dinámica en interfaz eth0
auto eth0
iface eth0 inet dhcp

# Configuración DNS
dns-nameservers 8.8.8.8 8.8.4.4
  • Archivo de DNS (/etc/resolv.conf)
nameserver 8.8.8.8
nameserver 8.8.4.4
  • Reiniciar interfaces:
$ /etc/init.d/networking restart
  • Obtener información DNSs:
$ nm-tool | grep DNS

Los valores estándar de entrada, salida y error para un programa: STDIN, STDOUT y STDERR pueden ser sustituidos por 0, 1 y 2 respectivamente, por tanto, podemos redireccionarlos al dispositivo nulo o agujero negro /dev/null o un archivo:

~$ cat pruebas 2>/dev/null
~$ cat prueba 1>resultado_de_salida  2>err.log
~$ dd if=/dev/sdc of=sdimage.img bs=4M
~$ dd if=sdimage.img of=/dev/sdc bs=4M
~$ dd if=/dev/sdb of=/dev/sdc bs=4096 conv=notrunc,noerror
~$ cat /dev/sdc/ > ~/backup.iso
~$ cat ~/backup.iso > /dev/sdc
sudo vi /etc/default/console-setup
sudo mv tty4.conf tty4.conf.bck
sudo mv tty5.conf tty5.conf.bck
sudo mv tty6.conf tty6.conf.bck 

Arranque rápido

/etc/init.d/rc

 CONCURRENCY=none -> CONCURRENCY=makefile

HW/SW

Fabricante del equipo:
sudo dmidecode -s system-manufacturer

Nombre del producto:

sudo dmidecode -s system-product-name

Versión del producto:

sudo dmidecode -s system-version

Número de serie del equipo:

sudo dmidecode -s system-serial-number

SKU (Stock Keeping Unit) ó P/N (Part Number) del producto:

sudo dmidecode | grep -i sku

Más información detallada:

sudo dmidecode

Mostrar el nombre del fabricante, modelo, y velocidad:

grep 'vendor_id' /proc/cpuinfo ; grep 'model name' /proc/cpuinfo ; grep 'cpu MHz' /proc/cpuinfo

Mostrar la arquitectura (32 o 64 bits):

sudo lshw -C CPU | grep width

Nota: El paquete lshw no está instalado de manera predeterminada, por lo que antes de usarlo es necesaria su instalación.

Mostrar el tipo de máquina:

uname -m

Mostrar si el procesador soporta “Extensiones de Virtualización” (Intel-VT ó AMD-V), las cuales se activan desde la configuración de BIOS del equipo:

Si el procesador es Intel, se necesita saber si aparece el valor “vmx”:

grep -i vmx /proc/cpuinfo

Si el procesador es AMD, se necesita saber si aparece el valor “svm”:

grep -i svm /proc/cpuinfo
acpi -bi

ó

acpitool -B

Nota: el comando acpitool no se encuentra instalado de forma predeterminada.

Mostrar el total de memoria RAM y la partición swap (cambiar el último parámetro por: -b = Bytes, -k = Kilobytes, -m = Megabytes, -g = Gigabytes, según convenga):

free -o -m

y otra forma de hacerlo es así:

grep 'MemTotal' /proc/meminfo; grep 'SwapTotal' /proc/meminfo

Para mostrar en qué partición (y el tamaño) está el swap:

sudo swapon -s

Mostrar el nombre y versión del kernel:

uname -sr

Mostrar el shell en uso:

echo $SHELL

Mostrar el nombre, versión y nombre clave de la distribución:

lsb_release -idc

Nombre del usuario actual:

echo $USER

Nombre del equipo:

echo $HOSTNAME

Directorio base del usuario actual:

echo $HOME

Directorio de trabajo actual:

echo $PWD

o

pwd

Listar los dispositivos PCI / PCIe

lspci

Listar todos los dispositivos PCMCIA

/sbin/lspcmcia

Listar todos los dispositivos USB:

lsusb

Listar todos los dispositivos detectados como SCSI:

lsscsi

Nota: El paquete anterior no está instalado de manera predeterminada, por lo que antes de usarlo es necesaria su instalación.

Módulos que se han indicado al kernel que cargue durante el arranque:

cat /etc/modules

Listar todos los módulos que cargó el sistema:

lsmod | less

Listar el hardware (información resumida):

sudo lshw -short

Listar el hardware (información extensa):

sudo lshw | less

Nota: El paquete lshw no está instalado de manera predeterminada, por lo que antes de usarlo es necesaria su instalación.

Listar las particiones en los medios de almacenamiento:

sudo fdisk -l

Conocer el espacio usado y disponible en las particiones:

df -h

Conocer en qué partición (y el tamaño) está swap:

sudo swapon -s

Mostrar las entradas registradas para el gestor de arranque GRUB “Legacy” (hasta la versión 0.97):

sudo grep -i title /boot/grub/menu.lst | grep "#" -v

Mostrar las entradas registradas para el gestor de arranque GRUB 2:

sudo grep -i menuentry /boot/grub/grub.cfg | grep "#" -v

Mostrar la tabla de particiones (File System TABle) que el sistema monta automáticamente durante el arranque:

less /etc/fstab

Mostrar el valor UUID (Universally Unique IDentifier) de todas las particiones:

sudo blkid

Listar los dispositivos de red alámbricos PCI:

lspci | grep -i ethernet

Listar los dispositivos de red inalámbricos PCI:

lspci | grep -i network

Listar los dispositivos de red USB:

lsusb | grep -i ethernet ; lsusb | grep -i network

Mostrar los módulos cargados por el sistema, para controlar tarjetas de red inalámbricas:

lsmod | grep iwl

Mostrar información del controlador usado por un dispositivo de red específico (se debe sustituir la palabra interfaz por el nombre lógico de la tarjeta de red, por ejemplo eth0, wlan0, ath0, etc.):

sudo ethtool -i interfaz

Nota: El paquete anterior no está instalado de manera predeterminada, por lo que antes de usarlo es necesaria su instalación.

Configuración de las tarjetas de red y sus direcciones IP asignadas:

cat /etc/network/interfaces

Resolución de Nombres de Dominio:

cat /etc/resolv.conf

Mostrar el contenido del archivo HOSTS:

cat /etc/hosts

Nombre del equipo, tal y como se verá en la red local:

cat /etc/hostname

ó

grep 127.0.1.1 /etc/hosts

ó

echo $HOSTNAME

Direcciones IP locales de las tarjetas de red alámbricas (resumen):

/sbin/ifconfig | grep -i direc | grep -i bcast

si el sistema está en inglés se usa:

/sbin/ifconfig | grep -i addr | grep -i bcast

Direcciones IP locales de las tarjetas de red alámbricas (detalle):

/sbin/ifconfig

Direcciones IP locales de las tarjetas de red inalámbricas (resumen):

/sbin/iwconfig | grep -i direc | grep -i bcast

si el sistema está en inglés se usa:

/sbin/iwconfig | grep -i addr | grep -i bcast

Direcciones IP locales de las tarjetas de red inalámbricas (detalle):

/sbin/iwconfig

Mostrar la tabla de enrutamiento:

sudo route -n

Para conocer la dirección IP pública (externa):

curl ip.appspot.com

Visualizar el contenido del archivo sources.list, el cual contiene las direcciones de los repositorios:

less /etc/apt/sources.list

Listar las tarjetas de vídeo (PCI / PCIe):

lspci | grep -i vga

Para determinar si el equipo soporta aceleración de gráficos es necesario que esté instalado el paquete de herramientas mesa-utils. Dicho paquete contiene el comando glxinfo:

glxinfo | grep -i render

Para calcular los FPS (frames per second) se ejecuta el siguiente comando:

timeout 60 glxgears

El cual mostrará durante 60 segundos (con la ayuda del comando timeout) una ventana pequeña con una animación de 3 engranajes, mientras que al mismo tiempo en la ventana de la terminal se mostrarán los valores promedios de fotogramas por segundo (FPS, frames per second):

Ejemplo del desempeño gráfico de un sistema:

338 frames in 5.4 seconds = 62.225 FPS
280 frames in 5.1 seconds = 55.343 FPS
280 frames in 5.2 seconds = 54.179 FPS
280 frames in 5.2 seconds = 53.830 FPS
280 frames in 5.3 seconds = 53.211 FPS
338 frames in 5.4 seconds = 62.225 FPS
280 frames in 5.1 seconds = 55.343 FPS
280 frames in 5.2 seconds = 54.179 FPS
280 frames in 5.2 seconds = 53.830 FPS
280 frames in 5.3 seconds = 53.211 FPS

Ejemplo de un mejor desempeño gráfico en otro sistema:

2340 frames in 5.0 seconds = 467.986 FPS
2400 frames in 5.0 seconds = 479.886 FPS
2080 frames in 5.0 seconds = 415.981 FPS
2142 frames in 5.0 seconds = 428.346 FPS
2442 frames in 5.0 seconds = 488.181 FPS
2295 frames in 5.0 seconds = 458.847 FPS
2298 frames in 5.0 seconds = 459.481 FPS
2416 frames in 5.0 seconds = 483.141 FPS
2209 frames in 5.0 seconds = 441.624 FPS
2437 frames in 5.0 seconds = 487.332 FPS

Para mostrar la configuración actual del servidor X (X Window System):

less /etc/X11/xorg.conf

Para conocer la resolución actual (anchura x altura) y frecuencia de barrido (MHz):

xrandr | grep '*'

Para conocer todas las resoluciones que la configuración actual soporta:

xrandr

Para mostrar las cámaras web (USB):

lsusb | grep -i camera

El siguiente ejemplo muestra el resultado de 2 cámaras web conectadas a un mismo equipo:

Bus 001 Device 003: ID 0c45:62c0 Microdia Sonix USB 2.0 Camera
Bus 002 Device 004: ID 0ac8:3420 Z-Star Microelectronics Corp. Venus USB2.0 Camera
Las cámaras web se “montan” en orden consecutivo en la ruta /dev/ :

Bus 001 —> /dev/video0
Bus 002 —> /dev/video1
Bus 003 —> /dev/video2
[…]
Para comprobar que las cámaras web se han “montado” en su ruta correspondiente:

ls /dev/video* -lh

Listar hardware de audio:

lspci | grep -i audio

ó

sudo lshw | grep -i audio | grep product

Nota: El paquete anterior no está instalado de manera predeterminada, por lo que antes de usarlo es necesaria su instalación.

Listar los dispositivos de reproducción de audio:

aplay -l | grep -i tarjeta

si el sistema está en inglés entonces se usa:

aplay -l | grep -i card

Listar todos los módulos que cargó el sistema, para ser usados por los dispositivos de sonido:

lsmod | grep -i snd

Las siguientes son pruebas para verificar si los altavoces están correctamente conectados y distribuidos. Los altavoces deben estar encendidos y durante la prueba se puede ajustar el volumen, cables, y disposición. Cada prueba emite un sonido en un ciclo, y se repite 2 veces más:

Si el sistema de sonido es de 1 canal (monoaural):

speaker-test -l 3 -t sine -c 1

Si el sistema de sonido es de 2 canales (stereo):

speaker-test -l 3 -t sine -c 2

Si el sistema de sonido es de 5.1 canales (surround):

speaker-test -l 3 -t sine -c 6

Visualizar las 30 últimas líneas del buffer del kernel:

dmesg | tail -30

Visualizar todo el buffer del kernel:

dmesg | less

Los registros del servidor X dan información útil sobre la configuración actual del mismo, y sobre la tarjeta de video:

cd /var/log/
ls Xorg* -hl

ello mostrará todos los archivos de registros del servidor X, siendo el archivo Xorg.0.log el más reciente.

Para ver los mensajes de error (errors) y mensajes de advertencia (warnings):

grep -E "(WW)|(EE)" Xorg.0.log | grep -v unknown

Si se desea ver toda la información del registro:

less Xorg.0.log

Si se desea ver el contenido de algún registro anterior al actual sólo basta sustituir el nombre de archivo Xorg.0.log por el nombre del archivo que se desee visualizar.

Para visualizar el registro de arranque (boot) es necesario activarlo primeramente. Se debe abrir el archivo /etc/default/bootlogd y sustituir el valor no por yes, quedando así:

# Run bootlogd at startup ?
BOOTLOGD_ENABLE=yes

Durante el próximo inicio del sistema se generará el archivo /var/log/boot el cual ya podrá ser revisado:

sudo less /var/log/boot

Los registros anteriores de arranque pueden visualizarse con:

sudo ls /var/log/boot* -hl

y consultarse como ya se ha mostrado.

Para ver otros registros: La mayoría de los registros (logs) del sistema se encuentran en el directorio /var/log/, así como también en varios subdirectorios, por lo tanto sólo basta entrar a dicho directorio y realizar un listado para conocerlos:

cd /var/log/
ls -hl

Aunque existen también herramientas gráficas que permiten conocer el sistema, es posible que el ambiente gráfico no funcione, por ello el uso de la terminal es indispensable. Algunas de las herramientas gráficas más conocidas son hardinfo y sysinfo, y para instalarlas desde la terminal basta con ejecutar:

sudo aptitude install hardinfo sysinfo

Nota: hardinfo aparece como System Profiler and Benchmark, y sysinfo aparece con el nombre Sysinfo.

  • pub/linux.txt
  • Última modificación: 2020/09/28 11:44
  • (editor externo)