apt-get en Debian 9.5

Por: Carlos A. Leal S.

apt-get

apt-get ofrece una forma sencilla de instalar paquetes desde la línea de comandos. A diferencia de otras formas de instalación, apt-get no intenta comprender los archivos «.deb», sino que utiliza el nombre real del paquete y logra instalar los archivos «.deb» desde una fuente.

Dejar de utilizar el CD o el DVD

La primera cosa que debería hacer antes de usar apt-get, es dejar de utilizar el CD o el DVD como fuente principal de información, para ello editamos el archivo de configuración.

root@debian32:~# nano /etc/apt/sources.list

Ponemos comentario en la línea 5 y lo dejamos así:

#deb cdrom:[Debian GNU/Linux 9.5.0 _Stretch_ - Official i386 DVD Binary-1 20180714-11:11]/ stretch contrib main

apt-get update

Una ver realizado este cambio vamos a obtener las listas de paquetes desde las fuentes de instalación, para así conocer los paquetes disponibles. Puede hacer esto mediante: apt-get update

root@debian32:~# apt-get update
Obj:1 http://security.debian.org/debian-security stretch/updates InRelease
Ign:2 http://deb.debian.org/debian stretch InRelease
Obj:3 http://deb.debian.org/debian stretch-updates InRelease
Obj:4 http://deb.debian.org/debian stretch Release    
Leyendo lista de paquetes... Hecho
root@debian32:~#

Comandos más comunes de apt-get

upgrade

«upgrade» intentará actualizar con cuidado todo el sistema. «upgrade» nunca intentará instalar un paquete nuevo o eliminar un paquete existente, y en ningún caso actualizará un paquete que pueda causar un problema de dependencias rotas a otro paquete.

«upgrade» mostrará todos los paquetes que no pudo actualizar, lo cual generalmente significa que dependen de paquetes nuevos o que entran en conflicto con otro paquete.

install

«install» se usa para instalar paquetes por nombre. El paquete se obtendrá e instalará automáticamente. Es de utilidad si ya conoce el nombre del paquete a instalar y no desea ejecutar una interfaz gráfica para seleccionarlo. Puede introducir cualquier número de paquetes para su instalación y todos se obtendrán.

La instalación automática intenta resolver problemas de dependencias con los paquetes listados, y mostrará un resumen al pedir una confirmación en caso de modificar cualquiera de los argumentos introducidos.

dist-upgrade

«dist-upgrade» es un actualizador completo, está diseñado para simplificar la actualización entre publicaciones de Debian. Utiliza un sofisticado algoritmo para diseñar el mejor conjunto de paquetes a instalar, actualizar y eliminar para así obtener cuanto sea posible de la última publicación.

Instalando paquetes

Finalmente, ¡El proceso que estaba esperando! Con su archivo sources.list está listo y su lista de paquetes disponibles al día, todo lo que necesitas es ejecutar apt-get para tener el paquete que quiera instalado. Por ejemplo, para instalar el VLC media player, ejecutamos:

root@debian32:~# apt-get install vlc
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes NUEVOS:
  vlc
0 actualizados, 1 nuevos se instalarán, 0 para eliminar y 1 no actualizados.
Se necesita descargar 0 B/137 kB de archivos.
Se utilizarán 227 kB de espacio de disco adicional después de esta operación.
Seleccionando el paquete vlc previamente no seleccionado.
(Leyendo la base de datos ... 178555 ficheros o directorios instalados actualmente.)
Preparando para desempaquetar .../vlc_3.0.3-1-0+deb9u1_i386.deb ...
Desempaquetando vlc (3.0.3-1-0+deb9u1) ...
Procesando disparadores para mime-support (3.60) ...
Procesando disparadores para desktop-file-utils (0.23-1) ...
Configurando vlc (3.0.3-1-0+deb9u1) ...
root@debian32:~#

Si por algún motivo queremos reinstalar un paquete, simplemente:

root@debian32:~# apt-get --reinstall install vlc
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
0 actualizados, 0 nuevos se instalarán, 1 reinstalados, 0 para eliminar y 1 no actualizados.
Se necesita descargar 0 B/137 kB de archivos.
Se utilizarán 0 B de espacio de disco adicional después de esta operación.
(Leyendo la base de datos ... 178576 ficheros o directorios instalados actualmente.)
Preparando para desempaquetar .../vlc_3.0.3-1-0+deb9u1_i386.deb ...
Desempaquetando vlc (3.0.3-1-0+deb9u1) sobre (3.0.3-1-0+deb9u1) ...
Procesando disparadores para mime-support (3.60) ...
Procesando disparadores para desktop-file-utils (0.23-1) ...
Configurando vlc (3.0.3-1-0+deb9u1) ...
root@debian32:~#

Eliminando paquetes

Si ya no necesitas utilizar cierto paquete, puede eliminarlo del sistema utilizamos apt-get remove paquete. por ejemplo:

root@debian32:~# apt-get remove vlc
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
Los siguientes paquetes se ELIMINARÁN:
  vlc
0 actualizados, 0 nuevos se instalarán, 1 para eliminar y 1 no actualizados.
Se liberarán 227 kB después de esta operación.
Desea continuar? [S/n] s
(Leyendo la base de datos ... 178576 ficheros o directorios instalados actualmente.)
Desinstalando vlc (3.0.3-1-0+deb9u1) ...
Procesando disparadores para mime-support (3.60) ...
Procesando disparadores para desktop-file-utils (0.23-1) ...
root@debian32:~#

Actualizando paquetes

Las actualizaciones de los paquetes son un gran éxito de apt-get. Pueden realizarse con tan sólo un comando: apt-get upgrade. Puedes utilizar esa opción para actualizar los paquetes de la distribución actual, o bien para actualizar a una nueva distribución, aunque el comando apt-get dist-upgrade es una mejor opción;

root@debian32:~# apt-get upgrade
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
Calculando la actualización... Hecho
0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 1 no actualizados.
root@debian32:~#

Actualizando a una nueva versión

Esta opción de APT permite actualizar un sistema Debian en un solo paso, ya sea desde Internet o por CDs (descargado como una imagen ISO).

También es utilizado cuando son realizados cambios entre las relaciones de los paquetes instalados.

root@debian32:~# apt-get dist-upgrade
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
Calculando la actualización... Hecho
Se instalarán los siguientes paquetes NUEVOS:
  firmware-linux-free irqbalance linux-image-4.9.0-8-686
Se actualizarán los siguientes paquetes:
  linux-image-686
1 actualizados, 3 nuevos se instalarán, 0 para eliminar y 0 no actualizados.
Se necesita descargar 37.6 MB de archivos.

Eliminando archivos de paquete no utilizados

Cuando apt-get instala un paquete, descarga los archivos necesarios de los servidores enlistados en /etc/apt/sources, estos a su vez son guardados en un depósito local (/var/cache/apt/archives/), y de ahí se procede con la instalación, para ver los paquetes descargados hasta el momento puede usar el comando ls

root@debian32:~# ls /var/cache/apt/archives/
binutils_2.28-5_i386.deb                       libqt5svg5_5.7.1~20161021-2+b2_i386.deb
build-essential_12.3_i386.deb                  libqt5widgets5_5.7.1+dfsg-3+b1_i386.deb
dkms_2.3-2_all.deb                             libqt5x11extras5_5.7.1~20161021-2_i386.deb
dpkg-dev_1.18.25_all.deb                       libresid-builder0c2a_2.1.1-15_i386.deb
fakeroot_1.21-3.1_i386.deb                     libsdl-image1.2_1.2.12-5+deb9u1_i386.deb
fonts-freefont-ttf_20120503-6_all.deb                libsidplay2_2.1.1-15_i386.deb

para eliminarlos utilizamos  apt-get clean

root@debian32:~# apt-get clean
root@debian32:~# ls /var/cache/apt/archives/
lock  partial
root@debian32:~#

Fuente

https://www.debian.org/doc/manuals/apt-guide/ch2.es.html

https://www.debian.org/doc/manuals/apt-howto/ch-apt-get.es.html

 

Servidor SSH en Debian – Autenticación por contraseña

Por: Carlos A. Leal S.

Vamos a configurar el servidor SSH para administrar un servidor desde una computadora remota usando el puerto 22 / TCP.

Paso 0 –  Abrir un terminar y convertirse en super-usurio

cleal@tserver:~/Escritorio$ su -
Contraseña:
root@tserver:~#

Configurar autenticación por contraseña

La Autenticación por contraseña (Password Authentication) en la implementación del servidor Open SSH en Debian está habilitada de forma predeterminada, por lo que es posible iniciar sesión sin cambiar ninguna configuración. Además, la cuenta root está prohibida Autenticación de contraseña de forma predeterminada con [PermitRootLogin prohibit-password], por lo que la configuración predeterminada es buena, pero en esta configuración vamos a prohibir definitivamente el acceso a root.

Paso 1 – Instalación del software necesario

root@tserver:~# apt -y install openssh-server

Paso 2 – Copia de seguridad del archive de configuración original

root@tserver:~# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original

Paso 3 – Editar el archivo de configuración

root@tserver:~# nano -c /etc/ssh/sshd_config

Lo dejamos así:

# Línea 32 la dejamos así

PermitRootLogin no

# Línea 56 la dejamos así

PasswordAuthentication yes

Paso 4 – Reiniciar el servicio

root@tserver:~# systemctl restart ssh
root@tserver:~# systemctl status ssh
  • ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)

   Active: active (running) since Wed 2018-09-05 22:53:39 CST; 9s ago

sep 05 22:53:39 tserver systemd[1]: Starting OpenBSD Secure Shell server...
sep 05 22:53:39 tserver sshd[2134]: Server listening on 0.0.0.0 port 22.
sep 05 22:53:39 tserver sshd[2134]: Server listening on :: port 22.
sep 05 22:53:39 tserver systemd[1]: Started OpenBSD Secure Shell server.
root@tserver:~#

Paso 5 – Acceder desde otro Debian

En el cliente instalamos openssh-client

root@cliente:~# apt -y install openssh-client

Leyendo lista de paquetes… Hecho

Creando árbol de dependencias

Leyendo la información de estado… Hecho

openssh-client ya está en su versión más reciente (1:7.4p1-10+deb9u4).

0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 1 no actualizados.

root@tserver:~#

Luego nos conectamos

# ssh [Nombre_de_Usuario@Nombre_ de_Host o Dirección IP]

cleal@cliente:~$ ssh juan@192.168.10.10
The authenticity of host '192.168.10.10 (192.168.10.10)' can't be established.
ECDSA key fingerprint is SHA256:dqKaUOR8oTiuuVxKZTlvROFmtC9QXBEpoMvn8X/ZeVw.
Are you sure you want to continue connecting (yes/no)? yes # Solo la primera vez
Warning: Permanently added '192.168.10.10' (ECDSA) to the list of known hosts.
juan@192.168.10.10's password: # La contraseña de Juan
Linux tserver 4.9.0-7-amd64 #1 SMP Debian 4.9.110-3+deb9u2 (2018-08-13) x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
juan@cliente:~$ # Sesión Iniciada

Ejecutar comandos

Es posible ejecutar comandos de forma remota

cleal@cliente:~$ ssh juan@192.168.10.10 "ls /home"
juan@192.168.10.10's password:
cleal
juan
pedro

Luego de hacer las configuraciones preparé un video explicando algunas cosas que se pueden hacer con SSH

Fuente

https://www.server-world.info/en/note?os=Debian_9&p=ssh&f=1

 

Shell scripts sencilos

Por Carlos A. Leal S.

Shell script – Utilización de Variables

#!/bin/bash
# Shell script para utilizar una variable
# escrito por Carlos Leal

clear
echo "Hola $USER"
echo "Hoy es: ";date
echo "Es decir estamos en: ";cal

Shell script – Utilización de variables (corregir errores)

#!/bin/bash
# Shell script sencillo con errores
# escrito por Carlos Leal
MiNombre=Carlitos
MiOS = Debian # El espacio entre el igual y las variables es un error
Ver=9
echo "Mi nombre es $MiNombrE" # El nobre de la variable no está bien
echo "Estoy usando $MiOs" # El nobre de la variable no está bien
echo "Mi numero es Ver" # El nobre de la variable no está bien, falta $
echo "Favor ayudarme a corregir los errores en este script"

Shell Script – La Sentencia Read

#!/bin/bash
# Cuarto shell script sencillo
# escrito por Carlos Leal

clear
echo "¿Cómo te llamas? ==> \c:"
read nombre
echo "Hola $nombre, ¡Un placer conocerte!"

 

 

Shell Script en Linux ¿Qué son y para qué sirven?

Por: Carlos A. Leal S

¿Qué es un shell script en Linux?

Un shell script es una serie de comandos escritos en un archivo de texto plano, puede ser automático, es decir se ejecutará por si solo o interactivo, solicitará información adicional al usuario

¿Por qué crear un shell script?

  1. Para ahorrar tiempo en tareas repetitivas
  2. Para automatizar algunas tareas de la vida diaria
  3. Para automatizar algunas tareas de administración del servidor

¿Cómo escribir un Shell Script?

Lo primero es crear un archivo de texto plano con el editor de su preferencia (recomendado nano o vim), en casi cualquier linux sería más o menos así:

loboalfa@debian1:~$ nano script.sh

¡Aparece en blanco! ¡No hay problema!

Lo dejamos así:

#!/bin/bash
# Primer shell script sencillo
# Escrito por Carlos Leal
clear
echo "El conocimiento es poder"

Cerramos y guardamos el archivo, no se debe olvidar cambiar los permisos con chmod para hacer el shell script ejecutable

loboalfa@debian1:~$ chmod 755 script.sh

Hay varias opciones para ejecutar el Shell Script:

Opción 1:

loboalfa@debian1:~$ bash script.sh

Opción 2:

loboalfa@debian1:~$ sh script.sh

Opción 3

loboalfa@debian1:~$ ./script.sh

Sin importar la opción seleccionada el resultado debe ser el mismo, se debe borrar la pantalla y deberá aparecer el mensaje: «El conocimiento es poder»

Algo así

El conocimiento es poder
loboalfa@debian1:~$

Un tutorial muy completo (en Inglés) está en este sitio https://www.shellscript.sh/

Las Varibles

Para procesar los datos a veces es necesarios guardarlos en variables, en shell script existen dos tipos de variables

  • Variables del sistema: Están creadas y predefinidas por el sistema, normalmente se representan en mayúsculas
  • Variables del usuario: Son definidas por el usuario, normalmente se representan en minúsculas

Para ver el contenido de la variable se utiliza el comando echo.

Ejempo: echo $PATH

Voy a poner algunos shell script de ejemplo en la siguiente entrada

 

Red en Debian 9.5 – Configuración en línea de comandos

Por: Carlos A. Leal S.

El escenario

Tenemos dos adaptadores de red, el primero recibirá su dirección IP vía DHCP al segundo se le configurará manualmente, o sea:

  • enp0s3 ==>Configuración automática con DHCP
  • enp0s8 ==>Configuración estática manual

Paso 0 – Desactivar NetworkManager

Antes que nada, se debe desactivar cualquier aplicación, applet, ícono o algo por el estilo que controle la red en modo gráfico, de manera pre-determinada en Debian 9 viene el NetworkManager como gestor de conexiones de red.  Abrimos un terminal y nos convertimos en super usuario con:

cleal@tserver:~/Escritorio$ su -
Contraseña:
root@tserver:~#

Detenemos el NetworkManager con

root@tserver:~# systemctl stop NetworkManager

Deshabilitamos el NetworManager con

root@tserver:~# systemctl disable NetworkManager
Removed /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
root@tserver:~#

Paso 1 – Respaldar el archivo de configuración

En Debian, Ubuntu y el resto de la familia, el archivo de configuración principal de los parámetros de red es: interfaces y ubicado en /etc/network/, antes que nada conviene hacer una copia de seguridad del archivo asi:

root@tserver:~# cd /etc/network/ 
root@tserver:/etc/network# cp interfaces interfaces.original

Paso 2 – Establecer direcciones

Editar el archivo de configuración puede ser con vim, nano o el editor que más nos agrade

root@tserver:/etc/network# nano interfaces

Toda línea que inicie con “#” no se toma en cuenta, es comentario. El archivo debe quedar así:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface

auto lo
iface lo inet loopback

## A partir de aquí agregamos
# configuración del primer adaptador ethernet vía DHCP

auto enp0s3
iface enp0s3 inet dhcp

# configuración manual del segundo ethernet adaptador
auto enp0s8
iface enp0s8 inet static
address 192.168.10.10
netmask 255.255.255.0
network 192.168.10.0
broadcast 192.168.10.255

# Multiples puertas de enlace pueden causar problemas
# si es necesario se puede especificar con la siguiente línea
# gateway 192.168.10.1

 

Paso 3 – Aplicar la configuración

En este caso, lo más fácil, rápido y seguro es reiniciar el equipo con:

reboot

Una vez que re-iniciamos comprobamos la configuración con:

root@tserver:/etc/network# reboot

Luego de reinicar, abrimos nuevamente la terminal, nos convertimos en root y probamos con ip addr

cleal@tserver:~/Escritorio$ su -
Contraseña:
root@tserver:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever

2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:c6:9a:93 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fec6:9a93/64 scope link
       valid_lft forever preferred_lft forever

3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:4a:4a:e5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.10/24 brd 192.168.10.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe4a:4ae5/64 scope link
       valid_lft forever preferred_lft forever
root@tserver:~#

¡No me gusta! Prefiero usar ifconfig, como en Debian net-tools no viene instalado, entonces tenemos que instalarlo, como yo ya lo tengo instalado, la salida es así:

root@tserver:~# apt-get install net-tools
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias      
Leyendo la información de estado... Hecho
net-tools ya está en su versión más reciente (1.60+git20161116.90da8a0-1).
0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 1 no actualizados.
root@tserver:~#

ahora sí, probamos con ifconfig
root@tserver:~# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::a00:27ff:fec6:9a93  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:c6:9a:93  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 1520 (1.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 76  bytes 8414 (8.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::a00:27ff:fe4a:4ae5  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:4a:4a:e5  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 8  bytes 396 (396.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 396 (396.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
root@tserver:~#

Felicidades, hemos configurado adecuadamente los parámetros de red en Debian 9

Puse un video con este procedimiento en

 

Creación de usuarios en Debian 9 – Línea de comandos

Por Carlos A. Leal S.

La administración de usuarios es uno de los procesos más importantes que realiza un administrador de servidores, vamos a explicar la manera de crear usuarios en Debian 9 utilizando la línea de comandos, en este ejemplo vamos a crear un primer usuario llamado juan el cual tendrá privilegios de root, luego vamos a crear otro usuario llamado pedro, pero lo vamos a crear de otra forma.

El proceso

Paso 0 –  Abrir un terminar y convertirse en super-usurio

cleal@tserver:~/Escritorio$ su -
Contraseña:
root@tserver:~#

 

Paso 1 – Creación del usuario juan

root@tserver:~# adduser juan
Añadiendo el usuario `juan' ...
Añadiendo el nuevo grupo `juan' (1001) ...
Añadiendo el nuevo usuario `juan' (1001) con grupo `juan' ...
Creando el directorio personal `/home/juan' ...
Copiando los ficheros desde `/etc/skel' ...
Introduzca la nueva contraseña de UNIX: # Escribir la contraseña
Vuelva a escribir la nueva contraseña de UNIX: # Confirmar
passwd: contraseña actualizada correctamente
Cambiando la información de usuario para juan
Introduzca el nuevo valor, o pulse INTRO para usar el valor predeterminado
      Nombre completo []: Juan # Completar datos (opcional)
      Número de habitación []: # [enter] para no completar datos
      Teléfono del trabajo []:
      Teléfono de casa []:
      Otro []:
¿Es correcta la información? [S/n] S # Confirmar información
root@tserver:~#

Si quieres dar privilegios de administrador a juan hay que agregarlo a sudoers abrimos el archivo con el editor de nuestra preferencia (a mí me gusta vim) y lo agregamos (aproximadamente línea 22)

root@tserver:~# nano -c /etc/sudoers

Lo dejamos así

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
juan ALL=(ALL:ALL) ALL

Iniciamos sesión con juan y probamos si tiene privilegios de root

juan@tserver:~$ sudo -s
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.
[sudo] password for juan: # Poner contraseña de juan
root@tserver:/home/juan#

Paso 2 – Creación del usuario pedro

Creamos el usuario con

root@tserver:~# useradd -m pedro

Establecemos la contraseña de pedro con

root@tserver:~# passwd pedro
Introduzca la nueva contraseña de UNIX: # Escribir contraseña
Vuelva a escribir la nueva contraseña de UNIX: # Repetir contraseña
passwd: contraseña actualizada correctamente
root@tserver:~#

Muchas felicidades, hemos creado los dos usuarios

Hay un video explicativo de este proceso en

 

 

Tutoriales de comándos básicos de Linux

Toda persona que desee aprender a usar Linux, por norma general debe aprender a manejar los comandos, hace algún tiempo escribí algunos tutoriales para aprender a usar Linux, en esta entrada encuentra los enlace a dichos tutoriales de comandos básicos de Linux.

Tutorial Enlace
Primer tutorial de comandos Linux – Listando archivos y directorios https://jugandoaseringeniero.wordpress.com/2018/06/17/primer-tutorial-de-comandos-linux-listando-archivos-y-directorios/
Segundo tutorial de comandos Linux – Copiando archivos y directorios https://jugandoaseringeniero.wordpress.com/2018/06/19/segundo-tutorial-de-comandos-linux-copiando-archivos-y-directorios/
Tercer tutorial de comandos Linux – Re-direcciones y tuberías https://jugandoaseringeniero.wordpress.com/2018/06/25/tercer-tutorial-de-comandos-linux-re-direcciones-y-tuberias/
Cuarto tutorial de comandos Linux- Comodines y Nombres de Archivo https://jugandoaseringeniero.wordpress.com/2018/07/06/cuarto-tutorial-comodines-y-nombres-de-archivo/
Quinto tutorial de comandos Linux – Obteniendo ayuda https://jugandoaseringeniero.wordpress.com/2018/07/06/quinto-tutorial-de-comandos-linux-obteniendo-ayuda/
Sexto tutorial de comandos Linux – Sistema de archivos y seguridad https://jugandoaseringeniero.wordpress.com/2018/07/10/sexto-tutorial-de-comandos-linux-sistema-de-archivos-y-seguridad/
Séptimo tutorial de comandos Linux – Procesos y trabajos https://jugandoaseringeniero.wordpress.com/2018/07/11/septimo-tutorial-de-comandos-linux-procesos-y-trabajos/
Octavo tutorial de comandos Linux – Otros comandos útiles https://jugandoaseringeniero.wordpress.com/2018/07/23/octavo-tutorial-de-comandos-linux-otros-comandos-utiles/

Nueva máquina virtual para instalar Debian

Nueva máquina virtual para instalar Debian

Por: Carlos A. Leal S.

En estas líneas voy a explicar cómo crear una nueva máquina virtual para instalar debian

Paso 1: Entrar a VirtualBox

Una vez que entramos a VirtualBox, vamos a tener una pantalla similar con a esta

Paso 2: Crear máquina virtual

Hacemos clic en nueva, ponemos el nombre de la máquina y seleccionamos tipo y versión del sistema operativo a instalar, luego clic en siguiente.

Paso 3: Memoria RAM

Establecemos la cantidad de memoria RAM de la máquina virtual, en la mayoría de los casos 1GB es suficiente, si se dispone de más memoria pueden ser más.

Paso 4: Disco Duro virtual

Para esta instalación vamos a crear un disco duro virtual nuevo

El formato a utilizar será el nativo de VirtualBox

 

Y seleccionamos que el almacenamiento se reserve dinámicamente

 

Le ponemos nombre al disco duro virtual y especificamos la capacidad, para este ejemplo 80 GB son más que suficientes

¡Listo! Ya tenemos la máquina virtual creada

Muchas Felicidades

 

My old computer running Linux

By Carlos A. Leal S

Where is that old computer coming from?

In 2006, I bought a mini-laptop; in that time, it was trending for many people. I did it because I needed something portable for running my class’s presentations or reading some emails in a quick stop. Therefore, an Acer Aspire (A0532h) was my choice, its CPU was acceptable (Intel Atom N450), in that time a lot of RAM (1 GB RAM) and a good hard disk (160 GB), Don’t forget I was in 2006 and It was a good deal for less than $ 300 American Dollars. By the way, the Cloud was in diapers although some people were already looking for a Smartphone or a Tablet.

12 years later, after hours and hours of good performance, the Wi-Fi adapter and the mouse pad are not working anymore. However, who killed my old computer, was the Microsoft update to Windows 10. New operating systems running on old hardware, bad deal and I think, no performance! No deal! Do not get me wrong I use and promote the use of open technologies, but I am not fundamentalist! My family have right to choose, they use Linux, but they do not feel so comfortable using it as me.

This forgotten computer is going to give me the chance to demonstrate why Linux is more than just an alternative.

One – Choosing the right distro

Choosing the right distro can be something challenging even for advanced users, you have other Linux users’ opinion, your own experiences and you might be tempted to use the ultimate trend. So a good place to start is Distrowatch its contents will help you on your way.

According to Wikipedia DistroWatch is a website, which provides news, popularity rankings, and other general information about various Linux distributions as well as other free software/open source Unix-like operating systems such as OpenSolaris, MINIX and BSD.

I used the searching tool for identified the best option for my old computer. Since ReactOS is not a Linux-based system and it shares none of the UNIX architecture I will not use it. antiX is my choice.

antiX is a Linux distribution built directly on Debian Stable. It is comparatively lightweight and suitable for older computers, while also providing innovative kernel and applications, as well as updates and additions via the apt-get package system and Debian-compatible repositories. At its download page, there is a mirrors list and torrent files for both 32 and 64 bits architectures.

Two – Testing antiX using VirtualBox

The reason I love to use Virtualbox, is that it is not necessary to format the computer; I do not need to install the system I want to test. Additionally, VirtualBox runs on a number of host operating systems, including Linux, macOS and Windows.

The idea here was to be familiar and understand the installation process meeting all requirements without making mistakes. Its download page is plenty of information; do not forget to install the extension pack too.

Three – Creating a bootable flash drive

Even old computers might come without CD or DVD drives, so I need to create a bootable fla sh drive. There are many options as UNetbootin, Universal USB Installer or Windows 7 USB download tool. My choice was rufus because creates bootable USB drives the easy way.

 

The idea here was to test the performance using the hardware itself. If the result is satisfactory, you can proceed with the installation. Do not expect too much, do not forget it, this is and old computer.

Four – install the system

Finally I decided to install the system, here is my old computer running antiX Linux

Octavo tutorial de comandos Linux – Otros comandos útiles

Por: Carlos A. Leal S.

Basado en: http://www.ee.surrey.ac.uk/Teaching/Unix/unix6.html

Notas:

  • Esta es una versión en español y ampliada de su original
  • Soy un devoto del trabajo práctico, hay cosas que hay que vivirlas para aprenderlas, recomiendo seguir estos tutoriales con una computadora que tenga Linux instalado.
  • Para completar este tutorial hay que iniciar sesión y abrir una terminal
  • Para estos tutoriales estaré utilizando Centos 7 corriendo en una máquina virtual con VirtualBox, al ser comandos muy básicos la salida deberá ser prácticamente la misma en casi todas las distribuciones de Linux.

quota

Todos los sistemas Linux tienen la opción de habilitar cuotas de disco, es decir una cantidad de espacio de almacenamiento configurado hasta cierto límite, en la mayoría de los casos estas cuotas no se configuran. Para conocer el estado de tu cuota de disco basta probar con el sencillo comando quota -v

[juan@localhost ~]$ quota -v

Si no muestra nada a la salida, significa que no se ha configurado un límite de cuota. El comando quotastats -a, mostrará un informe más detallado, hay que tener en cuenta que en este caso 0 significa ilimitado.

[juan@localhost ~]$ quotastats -a
Kernel quota version: 6.5.1
Number of dquot lookups: 0
Number of dquot drops: 0
Number of dquot reads: 0
Number of dquot writes: 0
Number of quotafile syncs: 0
Number of dquot cache hits: 0
Number of allocated dquots: 0
Number of free dquots: 0
Number of in use dquot entries (user/group): 0

df

El comando df reporta el espacio disponible en el sistema de archivos, para un informe completo del disco y todas sus particiones se utiliza el comando df –h

[juan@localhost ~]$ df -h
S.ficheros     Tamaño Usados  Disp Uso% Montado en
/dev/sda2         78G   3.8G   70G   6% /
devtmpfs         481M      0  481M   0% /dev
tmpfs            496M      0  496M   0% /dev/shm
tmpfs            496M   7.6M  489M   2% /run
tmpfs            496M      0  496M   0% /sys/fs/cgroup
/dev/sda1        488M   123M  331M  28% /boot
tmpfs            100M    36K  100M   1% /run/user/1001
tmpfs            100M      0  100M   0% /run/user/0
[juan@localhost ~]$

Para un informe de la partición actual

[juan@localhost ~]$ df -h .
S.ficheros     Tamaño Usados  Disp Uso% Montado en
/dev/sda2         78G   3.8G   70G   6% /
[juan@localhost ~]$

du

El comando du, muestra el número de kilobytes utilizados en cada subdirectorio o archivo, un buen ejemplo puede ser dh -h *

[juan@localhost ~]$ du -h *
24K    cosaslinux/respaldos
48K    cosaslinux
4.0K   Descargas
4.0K   Documentos
4.0K   Escritorio
4.0K   granlista
4.0K   Imágenes
4.0K   lista1
4.0K   lista2
4.0K   listaordenada
4.0K   Música
4.0K   nombres.txt
4.0K   Plantillas
4.0K   Público
4.0K   Vídeos
[juan@localhost ~]$

La opción h muestra la salida en formato humano

gzip

Reduce el tamaño de los archivos ahorrando de esta manera espacio en disco, revisemos el tamaño del archivo GPL dentro de cosaslinux

[juan@localhost cosaslinux]$ ls -lh GPL
-rw-r--r--. 1 juan juan 18K jun 18 19:10 GPL

Ahora a reducir el tamaño con gzip

[juan@localhost cosaslinux]$ gzip GPL

Esto va a eliminar el archivo original y creará un nuevo archivo llamado GPL.gz, verifiquemos ls -lh GPL*

[juan@localhost cosaslinux]$ ls -lh GPL*
-rw-r--r--. 1 juan juan 6.7K jun 18 19:10 GPL.gz

El resultado es un archivo de 6.7 KB, lo que significa un ahorro muy significativo porque el archivo original era de 18 KB

Para descomprimir se utiliza gunzip

 

file

clasifica los archivos enumerándolos de acuerdo con el tipo de datos que contienen, por ejemplo, ascii (texto), imágenes, datos comprimidos, etc. Para obtener un informe sobre todos los archivos en su directorio de inicio, escribe

[juan@localhost cosaslinux]$ cd

Para regresar al directorio de inicio, Ahora sí, el informe

[juan@localhost ~]$ file *
cosaslinux:    directory
Descargas:     directory
Documentos:    directory
Escritorio:    directory
granlista.gz:  gzip compressed data, was "granlista", from Unix, last modified: Tue Jun 19 18:12:24 2018
Imágenes:      directory
lista1:        UTF-8 Unicode text
lista2:        ASCII text
listaordenada: UTF-8 Unicode text
Música:        directory
nombres.txt:   ASCII text
Plantillas:    directory
Público:       directory
Vídeos:        directory

diff

Este comando compara el contenido de dos archivos y muestra las diferencias. Supongamos que tiene un archivo llamado archivo1 y edita una parte y lo guarda como archivo2. Para ver el tipo de diferencias.

[juan@localhost ~]$ diff archivo1 archivo2

Las líneas que comienzan con un < indica una diferencia en el archivo1, mientras que las líneas que comienzan con un > indican diferencias en el archivo2.

find

Esto busca en los directorios los archivos y directorios con un nombre de pila, fecha, tamaño o cualquier otro atributo que desee especificar. Es un comando simple, pero tiene muchas opciones: por eso te recomiendo leer el manual escribiendo man find.

Para buscar todos los archivos con la extensión .txt, comenzando en el directorio actual (.) Y trabajando a través de todos los subdirectorios, luego imprimiendo el nombre del archivo en la pantalla, escribe

[juan@localhost ~]$ find . -name "*.txt" -print
./.cache/tracker/db-version.txt
./.cache/tracker/db-locale.txt
./.cache/tracker/parser-sha1.txt
./.cache/tracker/locale-for-miner-user-guides.txt
./.cache/tracker/last-crawl.txt
./.cache/tracker/locale-for-miner-apps.txt
./.cache/tracker/first-index.txt
./nombres.txt

Para buscar archivos de más de 1 Mb de tamaño y mostrar el resultado como una lista larga, escribe

[juan@localhost ~]$ find . -size +1M -ls
1331892 1308 -rw-r--r--   1 juan     juan      1337280 jul 23 21:16 ./.cache/tracker/meta.db-wal
1331889 1580 -rw-r--r--   1 juan     juan      1615872 jul 23 20:53 ./.cache/tracker/meta.db
[juan@localhost ~]$

history

El shell C mantiene una lista ordenada de todos los comandos que has ingresado. Cada comando recibe un número según el orden en que se ingresó.

history (mostrar lista de historial de comandos)

[juan@localhost ~]$ history
1  ls
2  pwd
3  ls -l
4  ls -a
5  su -
6  ls -a
7  ls -alh
8  ls -l
9  -ls -alh
10  ls -alh

Se puede usar el carácter de exclamación (!) Para recuperar comandos fácilmente, según el número de esta lísta.

  • !! (recordar el último comando)
  • ! -3 (recuperar el tercer comando más reciente)
  • ! 5 (recuperar el quinto comando en la lista)
  • ! grep (recuerda el último comando que comienza con grep)

Puedes aumentar o disminuir el tamaño del búfer de historial escribiendo

[juan@localhost ~]$ set history = 100

Hoy si les quedo debiendo el resumen de comandos, porque no quiero repetir lo mismo.

Creative Commons License
Séptimo tutorial de comandos Linux – Procesos y trabajos by Carlos A. Leal S. is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at http://www.ee.surrey.ac.uk/Teaching/Unix/unix6.html