<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://miguelangel.torresegea.es/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://miguelangel.torresegea.es/wiki/feed.php">
        <title>miguel angel torres egea</title>
        <description></description>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <image rdf:resource="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png" />
       <dc:date>2026-05-23T17:24:24+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:reverse?rev=1776425458&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:aptget:dpkg?rev=1741601006&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:grub?rev=1697535310&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:phpscript?rev=1328010857&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:localportforwarding?rev=1700559496&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:docker:start?rev=1581629161&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:remoteconn?rev=1573039061&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:utils:start?rev=1764336448&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:swap?rev=1748941460&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:aptget:start?rev=1759250047&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:dd?rev=1752601467&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:certificados:pki?rev=1558438235&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:cron:cron?rev=1770632632&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:install-9?rev=1582703814&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:docker:masterclass?rev=1543332294&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:start?rev=1731486052&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:fsh:start?rev=1731409382&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:mount:start?rev=1767805329&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:notify?rev=1588539428&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:pivpn?rev=1727889383&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:sysstat?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:rclone:start?rev=1741346670&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:seguridad:secureboot?rev=1695801714&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:xwindows:start?rev=1641073285&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:caracteristicas?rev=1584878523&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh?rev=1776854742&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old2?rev=1608802513&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png">
        <title>miguel angel torres egea</title>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <url>https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png</url>
    </image>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:reverse?rev=1776425458&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-17T11:30:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ssh tunel inverso (o reverso)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:reverse?rev=1776425458&amp;do=diff</link>
        <description>ssh tunel inverso (o reverso)

método SSH

sean:

	*  A - ordenador al que me quiero conectar desde «donde sea»
	*  B - ordenador con acceso «pleno»
	*  C - cualquier ordenador
	*  A y C pueden estar sin acceso público SSH

el método sería:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-01T10:53:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Special Shell Variables &amp; Parameter Substitution and Expansion</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff</link>
        <description>Special Shell Variables &amp; Parameter Substitution and Expansion

linux

bash

$ es utilizado para expansión de parámetros y sustitución de comandos

File descriptors

Special Shell Variables
 variable  Significado  $0        Nombre del script que se está ejecutando</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:aptget:dpkg?rev=1741601006&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-10T10:03:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dpkg</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:aptget:dpkg?rev=1741601006&amp;do=diff</link>
        <description>dpkg

opciones

	*  Muestra los ficheros y su ubicación de un paquete:
dpkg -L packagename

	*  Instalar desde archivos .deb descargados:
dpkg -iEGB packagename

		*  i : instala desde fichero
		*  E, –skip-same-version: Don’t install the package if the same version of the package is already installed.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:grub?rev=1697535310&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-17T09:35:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>grub</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:grub?rev=1697535310&amp;do=diff</link>
        <description>grub

añadir otros OS


sudo os-prober # sudo apt install os-prober
sudo update-grub


solución de problemas

en mi caso, en una instalación con W10 y SecureBoot activado en el primer intento de instalación.

boot-repair


sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-24T12:21:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>BASH</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff</link>
        <description>BASH

linux pendiente wiki

doc

	*  &lt;https://github.com/dylanaraps/pure-bash-bible&gt;

related

cheatsheet

	*  

shell

	*  /etc/shells
	*  history expansion
	*  Special Shell Variables &amp; Parameter Substitution and Expansion
	*  Los ficheros de inicio de Bash
	*  update-alternatives
&lt;https://devhints.io/bash&gt;&lt;https://wiki.bash-hackers.org/start&gt;&lt;http://www.compciv.org/topics/bash/variables-and-substitution/&gt;&lt;http://wiki.bash-hackers.org/syntax/pe?rev=1529675381&gt;&lt;https://en.m.wikipedia.org/wiki/G…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:phpscript?rev=1328010857&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2012-01-31T11:54:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ejecución PHP desde CRON sin problemas</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:phpscript?rev=1328010857&amp;do=diff</link>
        <description>Ejecución PHP desde CRON sin problemas

en muchas ocasiones queremos ejecutar un script en PHP para realizar una tarea programadaen muchas ocasiones tenemos problemas con los INCLUDES o PATHS debido a que la ejecución del script desde APACHE difiere en el entorno que al ejecutarlo desde línea de comando.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:localportforwarding?rev=1700559496&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-21T09:38:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Port Forwarding &amp; Tunneling (cliente)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:localportforwarding?rev=1700559496&amp;do=diff</link>
        <description>Port Forwarding &amp; Tunneling (cliente)

tunneling

	*  puerto local (3306) mapeado a puerto de &lt;server&gt; (3306) a través de SSH:
ssh &lt;user&gt;@&lt;SERVER&gt; -N -L 3306:127.0.0.1:3306

		*  -N : no ejecuta comandos, se queda abierto
		*  -L : es el encargado de establecer la conexión</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-10T10:03:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>apt-get</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff</link>
        <description>apt-get

apt VS apt-get

	*  &lt;https://itsfoss.com/apt-vs-apt-get-difference/&gt;
	*  &lt;https://itsfoss.com/apt-get-linux-guide/&gt;
	*  &lt;https://itsfoss.com/apt-command-guide/&gt;

sources.list

	*  copia: /usr/share/doc/apt/examples/sources.list
	*  añadir universe y multiverse:
sudo add-apt-repository universe
sudo add-apt-repository multiverse


ignore certificate

Cuando estamos en una versión vieja de algún linux (debian 9 strech en este caso), podemos intentar encontrar la manera de actualizar los c…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-10-09T11:48:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>arrays bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff</link>
        <description>arrays bash



linux bash pendiente wiki

/via: &lt;http://www.thegeekstuff.com/2010/06/bash-array-tutorial/&gt;
&lt;http://wiki.bash&gt;-hackers.org/syntax/arrays?rev=1534920675&lt;https://www.artificialworlds.net/blog/2012/10/17/bash-associative-array-examples/&gt;
declaración e inicialización


declare -a array=(valor0 &#039;valor uno&#039; &#039;valor dos&#039;)



declare -A array=( [indice1]=valor0 [indice2]=&#039;valor uno&#039; [indice3]=&#039;valor dos&#039;)
# es necesario una versión 4+ de BASH para disponer de Arrays asociativos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-01-22T09:12:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debug en bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff</link>
        <description>debug en bash

&lt;https://www.cyberciti.biz/tips/debugging-shell-script.html&gt;

variables de entorno

	*  en el script, modificando el SheBang:
#!/bin/bash -x

	*  desde linea de comando: $ bash -x &lt;script&gt;
	*  activar modos:
		*  set (+/-)x : muestra comandos y argumentos a medida que son ejecutados
		*  set (+/-)v</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-31T08:58:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Los ficheros de inicio de Bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff</link>
        <description>Los ficheros de inicio de Bash

tipos de shell

	*  Interactivo: permite interactuar, ejecutando comandos introducidos desde el teclado.
	*  No Interactivo: ejecuta los comandos desde un script
	*  De Inicio: los shells que se ejecutan justo después de haberse identificado. Son los que solicitan usuario y contraseña (versus los interactivos que no la solicitan, que no serían de inicio)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-04T16:07:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debian installs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff</link>
        <description>debian installs



pendiente wiki
pendiente mirar y documentar webmin
info general

	*  Releases: &lt;https://wiki.debian.org/DebianReleases&gt;
	*  Repositorios: &lt;https://www.debian.org/mirror/list&gt;
	*  apt mirrors: &lt;https://debiansupport.com/mirrors/&gt;
		*  &lt;https://www.debian.org/distrib/archive.es.html&gt;


distros

	*  instalación rápida debian 6 como seedbox

Configuración de red

	*  ip
	*  DNS

Actualización del sistema

Actualizamos el sistema: $ apt-get dist-upgrade</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:docker:start?rev=1581629161&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-13T21:26:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker (first contact)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:docker:start?rev=1581629161&amp;do=diff</link>
        <description>docker (first contact)

docker

un poco de historia

	*  docker monta un sistema de containerización que permite lanzar nuevas instancias de S.O. aprovechando los recursos (hard) de la máquina Y el kernel del SO ya corriendo, lo que hace más óptimo el aprovechamiendo de recursos que las máquinas virtuales (que recrean un ordenador al completo, con sus propios kernels y sistemas de ficheros)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:remoteconn?rev=1573039061&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-11-06T11:17:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Conexión remota A-&gt;B-&gt;C con SSH (~/.ssh/config)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:remoteconn?rev=1573039061&amp;do=diff</link>
        <description>Conexión remota A-&gt;B-&gt;C con SSH (~/.ssh/config)

conectar desde A a C (que no es accesible directamente por A) a través de B usando SSH

objetivo

	*  conectamos desde nuestra máquina local a bastion (A)
	*  conectaremos a la máquina C a través de A, según marca la configuración del fichero</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:utils:start?rev=1764336448&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-28T13:27:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux utils</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:utils:start?rev=1764336448&amp;do=diff</link>
        <description>linux utils

cli

	*  Linux ls
	*  F3 - Fight Flash Fraud
	*  enchive
	*  rhash
	*  transfer
	*  jmespath
	*  youtube-dl
	*  translate shell
	*  SMART
	*  scrot, captura pantalla desde cli &lt;https://ubunlog.com/scrot-capturas-de-pantalla-desde-la-consola/&gt;
	*  xli, visor imágenes ligero cli &lt;http://manpages.ubuntu.com/manpages/bionic/man1/xli.1.html&gt;

	*  youtransfer
	*  twitch-dl
	*  dislocker
	*  X2GO
	*  Tightvnc (linux)
	*  aria2
	*  lsusb
	*  Wake On Lan (WOL)
	*  lftp
	*  MC - Midnight Coma…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:swap?rev=1748941460&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-03T09:04:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>swap</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:swap?rev=1748941460&amp;do=diff</link>
        <description>swap

operativa básica

	*  averigura donde está mi partición SWAP: 
swapon -s

	*  desactivar la partición de swap: 
swapoff /dev/sdxx

	*  fabricar una partición swap: 
mkswap /dev/sdxx

	*  activar partición de swap: 
swapon /dev/sdxx

		*  modificar en</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:aptget:start?rev=1759250047&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-30T16:34:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Gestión paquetes</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:aptget:start?rev=1759250047&amp;do=diff</link>
        <description>Gestión paquetes

linux

	*  apt-get
		*  apt unattended-upgrades
		*  apt (sin internet)

	*  repos
	*  dpkg
	*  aptitude
	*  yum
	*  ppa
	*  apk (alpine)

verificar/actualizar paquete

	*  mirar si está en el sistema:
dpkg --get-selections | grep &lt;paquete&gt;

	*  mirar el detalle del paquete: 
dpkg -l &lt;paquete&gt;

	*  actualizar paquete (no instala si no está):</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-05T06:10:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>comandos bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff</link>
        <description>comandos bash

linux bash

comandos al detalle

	*  uptime
	*  tail [-n &lt;nn&gt;]
	*  head [-n &lt;nn&gt;]
	*  sort
	*  watch
	*  wc : wordcount
		*  -c : caracteres
		*  -l : líneas
		*  -w : palabras

	*  tr : translate characters (sustitución cadenas sobre la entrada estandard. Uso com filtro en scripts)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:dd?rev=1752601467&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-15T17:44:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dd</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:dd?rev=1752601467&amp;do=diff</link>
        <description>dd

	*  dd -&gt; comando para flujos de datos
		*  if: archivo de origen
		*  of: archivo de destino
		*  ibs: número bytes leídos cada vez
		*  obs: número bytes leídos cada vez
		*  bs: número de bytes leídos y escritos cada vez
		*  cbs: número de bytes a convertir cada vez</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-31T09:25:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Estructuras de control y bucles</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff</link>
        <description>Estructuras de control y bucles



comparaciones de cadenas alfanuméricas (Test Operators, Binary Comparison)

	*  cadena1 = cadena2 (también cadena1 == cadena2)
	*  cadena1 != cadena2
	*  cadena1 &lt; cadena2
	*  cadena1 &gt; cadena2
	*  -n cadena1 -&gt; longitud mayor que 0</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-17T10:21:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>locale</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff</link>
        <description>locale

	*  lista de los códigos locale
	*  para lanzar una aplicación en un idioma determinado (y si la aplicación lo soporta): $ export LANG=&lt;codigo&gt;; &lt;aplicacion&gt;

el comando

	*  locale -&gt; permite ver todos los valores en el sistema
	*  locale -a -&gt; permite ver los locales del sistema</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:certificados:pki?rev=1558438235&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-05-21T11:30:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>PKI</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:certificados:pki?rev=1558438235&amp;do=diff</link>
        <description>PKI

&lt;https://linuxize.com/post/how-to-set-up-an-openvpn-server-on-centos-7/&gt;
Public Key Infraestrucure


previa

orientado a la instalación de un openvpn

creación de los siguientes elementos:

	*  CA
	*  SERVER certificate + key
	*  CLIENT certificate + key

usando la herramienta easy-rsa

CA

se recomienda crear todos estos ficheros en un servidor standalone / offline de la insfraestructura que se monte</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-11-20T15:40:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>anacron</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff</link>
        <description>anacron

este programa sirve para ejecutar tareas de CRON en sistemas que no están encendidos 24h horas al díase ejecuta al arrancar el sistema y comprueba /etc/anacrontab, donde están las tareas especificadas a realizar como «importantes»

un ejemplo:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:cron:cron?rev=1770632632&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-09T10:23:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cron / crontab</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:cron:cron?rev=1770632632&amp;do=diff</link>
        <description>cron / crontab

Conceptos básicos

Cron se ejecuta en el background, revisa cada minuto la tabla de tareas crontab /etc/crontab o en /var/spool/cron

comprobar si está en ejecución:

$ ps -ef | grep crond

Añadir el servicio si no lo estuviera:

$ chkconfig --level 35 crond on</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:install-9?rev=1582703814&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-26T07:56:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debian 9 stretch</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:install-9?rev=1582703814&amp;do=diff</link>
        <description>debian 9 stretch

gnome

control de ventanas desde CLI

	*  devilspie2 : programa para recolocar las ventanas escritorio
		*  &lt;http://git.savannah.gnu.org/cgit/devilspie2.git/plain/README&gt;
		*  LUA: &lt;http://lua-users.org/wiki/StringLibraryTutorial&gt;
		*  LUA: &lt;https://stackoverflow.com/questions/37121875/lua-return-value-if-string-match-with-wildcard&gt;
-- the debug_print command does only print anything to stdout
    * comandos: [[https://github.com/gusnan/devilspie2/blob/master/README]]
-- if dev…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:docker:masterclass?rev=1543332294&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-27T15:24:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>MasterClass Docker</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:docker:masterclass?rev=1543332294&amp;do=diff</link>
        <description>MasterClass Docker

docker

info masterclass

ponente: Dani Sanchez  --&gt; docker user 

pass:2...s

docker

info general

3 componentes:

	*  docker daemon
	*  rest api (escuchando en file system) --&gt; nos permite hablar con otros demonios docker (en otras máquinas)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-03T12:00:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>permisos</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff</link>
        <description>permisos

cada archivo tiene 3 grupos de permisos, el del autor (owner), el del grupo (group) y el del resto.

en un listado (ls -la) los permisos se muestran en el mismo orden (primero owner, después grupo, después resto) representado por 3 letras:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:start?rev=1731486052&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-13T08:20:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux filesystem</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:start?rev=1731486052&amp;do=diff</link>
        <description>linux filesystem

	*  Filesystem Hierarchy Standard
		*  sysfs

	*  swap
	*  LUKS: sistema encriptación particiones debian
	*  mount
	*  glusterfs
	*  linux udisks
	*  Linux inodes
	*  Recuperación disco, clonación en imagen
	*  MBR / GPT

clonación y recuperación

	*  distro clonación: &lt;http://clonezilla.org/&gt;
		*  &lt;https://www.taringa.net/posts/linux/8551870/Procedimiento-para-realizar-clonado-perfecto-de-discos-duros.html&gt;

	*  recuperación: &lt;http://www.forensicswiki.org/wiki/Ddrescue&gt;
		*  &lt;…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:fsh:start?rev=1731409382&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-12T11:03:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Filesystem Hierarchy Standard</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:fsh:start?rev=1731409382&amp;do=diff</link>
        <description>Filesystem Hierarchy Standard

linux bash

(basado en debian)

/proc

	*  /proc/cpuinfo
	*  /proc/version
	*  /proc/1/comm
	*  /proc/sys/kernel/random/uuid
	*  echo n &gt;/proc/sys/vm/drop_caches
		*  n = 1 -&gt; Clears only the page cache.
		*  n = 2 -&gt; Clears dentries and inodes.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-11T15:24:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sysfs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff</link>
        <description>sysfs

Ya que procfs se encuentra saturado con una gran cantidad de información no relacionada con los procesos, se diseñó sysfs con el fin de exportar desde el espacio del kernel (Anillo 0) al espacio del usuario (Anillo 3) información sobre los dispositivos y sus controladores.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:mount:start?rev=1767805329&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-07T17:02:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mount</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:mount:start?rev=1767805329&amp;do=diff</link>
        <description>mount

linux

SMB mount

comandos

	*  
findmnt

		*  solo bind: 
findmnt | grep  &quot;\[&quot;


	*  
lsblk

		*  -f: etiquetas particiones
		*  -m: size,owner,group
		*  -o NAME,UUID,PARTUUID

	*  
blkid

	*  /dev/disk -&gt; /dev/disk/by-uuid

check disco

	*  &lt;https://ignoresysprereqs.blogspot.com/2011/11/forzar-chequeo-de-disco-al-reiniciar.html&gt;
	*  usar tune2fs</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:notify?rev=1588539428&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-03T20:57:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Notificaciones escritorio</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:notify?rev=1588539428&amp;do=diff</link>
        <description>Notificaciones escritorio

paquete para poder enviar notificaciones al escritorio desde CLI

sudo apt-get libnotify-bin
sudo apt-get install notify-osd

instrucción para enviar:

notify-send Test &quot;Hello World&quot;

/via: &lt;http://ubuntuforums.org/showthread.php?t=1411620&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-07T17:13:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pi-hole</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff</link>
        <description>pi-hole

setup

	*  &lt;https://pi-hole.net/&gt;
	*  
curl -sSL https://install.pi-hole.net | bash

	*  install log: /etc/pihole
	*  web-admin: &lt;http://&lt;ip&gt;/admin&gt;

tutorial instalación

	*  &lt;https://blog.cryptoaustralia.org.au/2018/08/06/instructions-for-setting-up-pi-hole/&gt;

comandos

	*  actualizar: 
sudo pihole -up

	*  reconfigurar: 
pihole -r

	*  cambiar password webadmin:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:pivpn?rev=1727889383&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-02T17:16:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pi-vpn</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:pivpn?rev=1727889383&amp;do=diff</link>
        <description>pi-vpn

basic

	*  &lt;http://www.pivpn.io/&gt;
		*  OpenVPN
			*  puerto: 1194
			*  protocolo: tcp/udp

		*  Wireguard
			*  puerto: 51820
			*  protocolo udp



ubicaciones

	*  generación certificados: /etc/openvpn/easy-rsa/pki/private/
	*  /etc/pivpn -&gt; información

comandos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:sysstat?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Configuración sysstat</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:sysstat?rev=1321351182&amp;do=diff</link>
        <description>Configuración sysstat

Este paquete se instala desde el apt-get install ssysstat y lo descubrí a partir de esta página. (la información contenida en esta sección es practicamente un resumen de esa página)
Es un paquete de utilidades para monitorizar diferentes aspectos de nuestro servidor y poder detectar sobrecargas. Permite información en tiempo real y permite  guardar la información en logs para ir consultando.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:rclone:start?rev=1741346670&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-07T11:24:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rclone</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:rclone:start?rev=1741346670&amp;do=diff</link>
        <description>rclone

	*  &lt;https://www.rapidseedbox.com/blog/rclone&gt;
	*  
apt install rclone


2018

sincronización de ficheros y directorios desde CLI para los siguientes servicios cloud:

	*  Google Drive
	*  Amazon S3
	*  Openstack Swift / Rackspace cloud files / Memset Memstore
	*  Dropbox
	*  Google Cloud Storage</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:seguridad:secureboot?rev=1695801714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-27T08:01:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>secure boot</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:seguridad:secureboot?rev=1695801714&amp;do=diff</link>
        <description>secure boot

ubuntu install

	*  desactivar secure boot para instalación en un mismo ordenador de Linux y Windows
	*  se supone que debería funcionar, pero no lo he conseguido:
		*  Instalar ubuntu, definir la contraseña temporal, al finalizar, rearrancar con el USB para hacer el</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-03T08:58:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Uncomplicated Firewall</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff</link>
        <description>Uncomplicated Firewall

manera alternativa de montar reglas de acceso con una sintáxis más sencilla, monta tablas y cadenas a su antojo

sintaxis y argumentos

ufw [--dry-run] [options] [rule syntax]

	*  options:
		*  allow
		*  deny
		*  reject
		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:xwindows:start?rev=1641073285&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-01T21:41:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Linux X-Windows</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:xwindows:start?rev=1641073285&amp;do=diff</link>
        <description>Linux X-Windows

help

	*  &lt;https://blog.desdelinux.net/xrandr-poderosa-herramienta-para-configurar-tu-monitor/&gt;



desktop environment

	*  Entorno de escritorio (Desktop Environment):
		*  iconos
		*  ventanas
		*  barras herramientas
		*  carpetas
		*  fondos pantalla
		*  widgets

*  Gestor de ventanas (Window Manager)
		*  controla ubicación y apariencia</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:caracteristicas?rev=1584878523&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-22T12:02:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH features</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:caracteristicas?rev=1584878523&amp;do=diff</link>
        <description>ZSH features

/vía: &lt;https://www.slideshare.net/brendon_jag/why-zsh-is-cooler-than-your-shell&gt;

	*  cd completion
		*  muestra opciones, navegación con flechas

	*  git completion
	*  path expansion
		*  cd /u/lo/b -&gt; &lt;TAB&gt; -&gt; cd /usr/local/bin

	*  path replacement
		*  cd /usr/local/bin -&gt; ERROR, quería ir a /usr/local/share</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh?rev=1776854742&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-22T10:45:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>oh-my-zsh</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh?rev=1776854742&amp;do=diff</link>
        <description>oh-my-zsh

potenciador de zsh con temas y plugins : &lt;https://ohmyz.sh/&gt;

install

	*  sh -c &quot;$(wget &lt;https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh&gt; -O -)&quot;

más: &lt;https://www.howtoforge.com/tutorial/how-to-setup-zsh-and-oh-my-zsh-on-linux/&gt;

	*  chsh -s $(which zsh) : cambiar shell a mano si no lo hace automaticamente

config

	*  ~/.oh-my-zsh/tools/theme_chooser.sh

internal plugins

	*  dotenv</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-24T09:50:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rtorrent+rutorrent en contenedor</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff</link>
        <description>rtorrent+rutorrent en contenedor

instalacion rtorrent+rutorrent

	*  crear estructura de directorios:

mkdir -p data/downloads/completo
mkdir -p data/config


	*  copiar ficheros de configuración (extraidos de propio contenedor y modificados a conveniencia):</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old2?rev=1608802513&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-24T09:35:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rtorrent+rutorrent en contenedor (OLD2)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old2?rev=1608802513&amp;do=diff</link>
        <description>rtorrent+rutorrent en contenedor (OLD2)

instalacion rtorrent+rutorrent

	*  crear estructura de directorios:

mkdir -p data/downloads/completo
mkdir -p data/root
mkdir -p data/rutorrent


	*  copiar ficheros de configuración contenedor en /root (sacados del propio contenedor y modificar los ficheros de configuración de nginx):</description>
    </item>
</rdf:RDF>
