Ir al contenido

Recommended Posts

c1XOKKN.png

 


Ha llovido mucho desde aquella primera guía que construimos en su día a partir de aportes de foreros que enviaban o demandaban (más bien lo segundo :bate:) procedimientos y tutoriales para abarcar todo lo que un usuario de a pie necesita para desenvolverse en el día a día con la distribución universal.


Hacer una "guía" de este tipo es complicado, porque nadie hace la misma instalación de Debian, todos acaban con entornos, paquetes y herramientas distintos, pero no por eso nos vamos a echar atrás ¿Verdad?.

He de aclarar que la distribución universal se caracteriza, entre otras cosas, por permitir configurarla según lo que cada usuario necesita. Ése es precisamente el objetivo de esta guía, que cada uno pueda llegar a tener Debian completamente configurado según sus necesidades o gustos. Como su propio nombre indica, se trata de una guía, una referencia a utilizar para instalar y configurar una instalación, no un "paso a paso" para seguir al pie de la letra copiando y pegando comandos en la consola sin saber lo que estamos haciendo. sino de tener una referencia a la hora de hacerse con la distribución.

Importante La guía se centra en única rama de Debian, Testing, por ser la recomendada para uso en equipos de escritorio. Ésta es Half Rolling Release y contiene paquetes en versiones bastante actuales, a la vez que ser lo suficientemente estable para el día a día.

 

 

vIkKGu2.jpg


Esta guía no es un paso a paso, ni una receta mágica que hay que seguir al pié de la letra. No me centraré en cómo configurar ningún entorno gráfico o gestor de ventanas ni en como dejarlo "bonito", sino en cómo tener un sistema básico sólido, funcional y polivalente que nos permita luego a cada uno construir la distribución que se ajuste a nuestros gusto y necesidades. Eso es, precisamente, Debian.

 

 

 

 

 

Teoría


¿Cómo es Debian?

 

 

Debian es conocida popularmente como "la distribución universal", al estar disponible un gran número de arquitecturas de computación diferentes y poder ser utilizada con diferentes Kernels, no sólo Linux.
El desarrollo de la distribución se centra principalmente en la estabilidad/seguridad/fiabilidad y, sobre todo, la libertad. Algo que queda reflejado en el Manifiesto Debian.

Para conseguir su objetivo, cada paquete, librería o cualquier clase de software que aspire a entrar a formar parte de Debian, así como sus versiones posteriores, debe pasar por el escrutinio de los programadores pasando por los filtros de calidad de varias ramas de desarrollo. Las principales son: Unstable, Testing y Stable.
Además de esas 3, existen otras ramas complementarias o de apoyo, que suelen ser consideradas más como depósitos de paquetes que como ramas de desarollo como tal. Entre éstas están Oldstable, Experimental y Backports.

 

  • Unstable
    • En ella se revisan concienzudamente cada paquete de software en busca de bugs y brechas de seguridad.
      En la rama Unstable las nuevas versiones de los paquetes van entrando a un ritmo más o menos constante y, por tanto es considerada como Rolling Release.
  • Testing
    • Una vez son corregidos los errores, los paquetes se ponen a prueba y se perfilan los últimos detalles.
      En la rama Testing las nuevas versiones de los paquetes van entrando a un ritmo más o menos constante, según son verificados en la Unstable, salvo durante el período previo al lanzamiento de una nueva versión de Debian durante el cual permanece "congelada". Es por esto que se la considera un Half Rolling Release.
  • Stable
    • Tras pasar por las dos ramas anteriores y un período de congelación previo, Se lanza una nueva versión de Debian estable, que estará vigente durante, al menos, dos años.
      Esta rama responde a un ciclo de lanzamiento preestablecido, por lo que es indudablemente una Cycling Release. En ella las versiones de los paquetes no son actualizados hasta la salida de la siguiente estable y sólo reciben parches de correcciones y seguridad
  • Oldstable
    • Oldstable contiene los paquetes que formaron parte de la anterior stable y que se mantendrán disponibles durante un tiempo tras la salida de la nueva estable con el fin facilitar la migración
  • Experimental
    • Como su nombre indica, en esta rama encontramos paquetes que no se sabe si se incluirán en el proceso final de desarrollo. En el caso de que así sea, esto son migrados a la rama Unstable para seguir el mismo ciclo que el resto de software de Debian.
  • Backports
    • Con el fin de poder obtener versiones más recientes de ciertos paquetes sin movernos de la rama stable, existe esta pseudorama que contiene software un poco más actual pensado para funcionar con las dependencias disponibles en la rama estable y a los que podemos recurrir en casos de necesidad

Tras finalizar el periodo de congelamiento, cuya duración dependerá del tiempo que lleve corregir todos los bugs restantes de los paquetes que aspiran a entrar en la nueva versión estable, la nueva Debian será finalmente lanzada, se descongelará la rama Testing y el proceso de desarrollo volverá a empezar.



APT / Apt-get / Aptitude
 

 

El sistema de paquetería Deb puede ser administrado de diferentes maneras mediante distintas interfaces.

Los gestores de paquetes principales son Apt, apt-get y Aptitude, cuyo funcionamiento y manejo es muy similar, pero que presentan marcadas diferencias entre ellos.

En esta guía optamos por utilizar siempre Aptitude por encima del resto de alternativas por una serie de razones:

  • Aptitude nos provee de un gestor avanzado de administración de paquetes que incluye sintaxis para la búsqueda de paquetes de una manera flexible, persistencia de acciones de usuario, capacidad de conseguir y mostrar la lista de cambios de los paquetes, configurar el comportamiento del gestor, además de poder utilizarlo directamente con líneas de comandos
  • Es más concienzudo y eficiente a la hora de resolver y lidiar con problemas de dependencias
  • También es más eficaz a la hora de eliminar dependencias que ya no necesitamos en el momento que eliminamos otros paquetes, no dejando "residuos" de su instalación
  • Su interfaz de comandos es más amigable con el usuario, devolviendo los resultados ordenados alfabéticamente e indicando incluso el estado de los paquetes
  • Posibilita la utilización de varias ramas simultáneamente indicándole desde dónde queremos instalar el paquete que demandamos
  • Registra sus log /var/log/aptitude de manera mucho más clara y útil que otros gestores.
  • Su manejo es prácticamente idéntico al de apt-get y apt, por lo que la transición entre ellos resulta extremadamente sencilla



 

EMPECEMOS

 


Descargar Debian

 

 

Tenemos disponibles distintas imágenes de instalación diferentes para Debian Testing.

Éstas imágenes se generan semanalmente y en el caso de los CD y DVD completos, antiguamente contenían no sólo el instalador sino también todos los paquetes alojados en repositorios de Debian. Eso a día de hoy con lo que ha crecido Debian se torna cada vez más complicado, así que la comunidad ha decidido centrar sus esfuerzos en las imágenes de instalación por red "NetInstall".

En cualquier caso, para realizar una instalación convencional sólo necesitamos el primer disco, ya sea CD o DVD. todo lo demás podremos descargarlo sobre la marcha según lo vayamos necesitando

Versión DVD
 



Versión CD
 

 

En este caso debemos descargar el disco que contenga el entorno gráfico que queremos instalar:

i386

Debian Testing Gnome 32 bits
Debian Testing XFCE 32 bits

Amd64

Debian Testing Gnome 64 bits
Debian Testing XFCE 64 bits



Netinstall
 

 

Otra opción es descargar una imagen mínima, que contiene los paquetes básicos del sistema y realizar la instalación descargando el resto de los paquetes sobre la marcha de los repositorios oficiales de Debian.

i386

Debian Testing Netinst 32 bits

Amd64

Debian Testing Netinst 64 bits

MultiArch (El mismo disco de instalación vale tanto para i386 como para Amd64)

Debian Testing Netinst Multiarch



Versiones Netinstall Non-Free (Linux con firmware No-Libre)
 

 

Estas imágenes son iguales a las netinstall mencionadas antes, pero traen un kernel con controladores privativos de serie (tarjetas gráfica no), así que quien tenga algún hardware esencial no soportado y no pueda realizar la instalación con las imágenes de instalación estándar, puede utilizar esta netinstall alternativa.

i386

Debian Testing firmware non-free netinstall i386

Amd64

Debian Testing firmware non-free netinstall amd64

Multiarch

Debian Testing firmware non-free netinstall Multiarch

 



Instalación
 

 

Como hemos visto, existen numerosos medios de instalación y muchas maneras de llevarla a cabo, así que para cubrir todas las posibles variables nos centraremos en el modo de instalación "experto" realizado con una imagen "netinstall"


Para eso tendremos que adentrarnos en el menú avanzado

yjfQpmY.png


Y optar por el método de instalación experto, por defecto en modo gráfico aunque también podemos hacerlo en modo terminal, no habría ninguna diferencia en los pasos a seguir.

EDmLF4Y.png


Una vez arranca el instalador elegimos el idioma

dpVthWx.png

jPIYUc2.png


Y también el idioma del teclado

wRVv5Fb.png

7JnXzvA.png


El siguiente paso es detectar y montar la imagen de instalación y cargar los componentes adicionales que tenemos a nuestra disposición

Sh9nPa4.png

eATO64B.png

BHmt4KZ.png

sRxkO46.png


Podemos llevar a cabo la instalación mediante conexión ethernet o Wifi o no utilizar ningún tipo de conexión valiéndonos de los discos de instalación completos en CD o en DVD.
No obstante se recomienda la conexión vía cable ethernet por si fuera necesario descargar algún paquete adicional.

eMDWV9B.png

xsfJFox.png

5gofmRN.png

76pAXUl.png


Configuramos usuarios o contraseñas.
Es importante fijarnos en lo que dice el segundo párrafo. De ello depende que podamos o no utilizar SUDO tras la instalación del sistema.
Siempre podremos cambiar esta configuración a posteriori, pero ya que el instalador nos lo pregunta abiertamente aprovechemos la oportunidad para dejar todo bien atado.

OXRukYR.png

mB3vy7d.png

pnFeWzR.png


Configurar reloj y huso horario

WhBiRB8.png

mW6Px2k.png


Hemos llegado al particionado, probablemente el único paso que puede resultar un poco más complicado.

No existe ningún requisito o limitación a la hora de administrar el espacio de nuestro disco duro, salvo claro está, que quepa el sistema operativo en la partición que designemos para éste.
Tenemos la opción de utilizar el particionado guiado y dejar que el instalador haga el trabajo por nosotros.

IxcdIjx.png

Y también podemos ir más allá y plantearnos hacer las cosas manualmente

56TRyd1.png

rORRD7f.png

rikflzG.png

NL5avTo.png


Una vez tenemos las particiones definidas y formateadas, Instalaremos el sistema base

60StFmG.png


En el modo experto también nos preguntará qué versión del kernel queremos instalar (Entre los que estén disponibles en ese momento en repositorios) o la opción de instalar el metapaquete "linux-image" correspondiente a la qruitectura de nuestro sistema.
La diferencia entre una opción y otra es simple. Si nos decantamos por una versión concreta de Linux, permaneceremos con ella para siempre. No habrán actualizaciones en lo que a versión del kernel se refiere.
Con el metapaquete "Linux-image" ocurrirá justo lo contrario, Linux se irá actualizando conforme vayan entrando nuevas versiones del kernel en repositorios de Debian.

MsC3H53.png


Definir los repositorios que queremos utilizar para descargar los paquetes y tener nuestro sistema al día.
Aunque elijamos lo que elijamos no deberíamos tener ningún problema, es recomendable apostar por un servidor cercano a nuestra posición geográfica para aspirar a tener una mejor respuesta y mayor velocidad de descarga

3qXhJz7.png

l0jSeRe.png


En este punto también nos hará la gran pregunta ¿Queremos tener la posibilidad de instalar software No Libre?

tjnSvTc.png


Acto seguido nos preguntará si queremos tener o no los repositorios de seguridad, actualizaciones y Backports. Éste último, dado que nuestra intención es mantenernos en la rama Testing, no tiene sentido marcarlo, pero las actualizaciones de seguridad son casi que obligatorias

yLLZeYE.png


La encuesta sobre el uso de paquetes. Como bien nos explican es opcional

WYkuKU5.png


Seleccionar e instalar paquetes.
Estamos tratando de instalar Debian desde una imagen Netinstall, así que el siguiente paso es descargar los componentes del sistema directamente desde repositorios, incluyendo el entorno gráfico.

4bFFNhw.png

RHotLL4.png


O bien podemos apostar por realizar una instalación muy básica y luego empezar a construir nuestro sistema poco a poco a nuestro gusto, en tal caso desmarcaremos todo

jjYAB3E.png

XM7N7kj.png


Instalamos el cargador de arranque GRUB en el disco duro

rNUVQz5.png

01RQf4c.png

fHfvrIR.png


El instalador cuenta con soporte para UEFI y tratará de ajustarse adecuadamente a la situación.

KuVlOWG.png


Hemos llegado al final del proceso de instalación, que como ve, no tiene ningún misterio más allá de seguir los pasos que se nos presentan.

Q6LqUkS.png

6Z8rHDX.png

l70wAMj.png



Repositorios
 

 

Un repositorio es un depósito centralizado donde se almacena y mantiene información digital. Debian, así como muchas distribuciones GNU/Linux mantienen su software actualizado y permite la instalación de aplicaciones y librerías a sus usuarios a través de repositorios.

¿Rama o Versión?
 

 

Por defecto, al instalar cualquier versión de Debian, nuestros repositorios apuntarán al nombre en clave de dicha versión (Wheezy, Jessie, Stretch.... Esto presenta un inconveniente y es que, cuando sea lanzada una nueva versión de Debian, nuestro sistema seguirá anclado en la versión a la que apuntan sus repositorios.

Si en lugar de eso apuntamos nuestros repositorios hacia la rama en la que queremos estar (Stable, Testin, Unstable), independientemente de cuántas versiones de Debian sean lanzadas, siempre estaremos actualizados y en la rama de desarrollo en la que nos interesa estar.

Existen varias excepciones. Una de ellas es la rama unestable, cuyo nombre en clave es siempre SID (Still In Development (o el Niño maltratador de juguetes de Toy Story)) y, por tanto, ya sea nombre de rama o nombre en clave, no habrá ningún cambio en cuanto al resultado.
Tanto Experimental como Backports no son ramas como tal y al no contener todos los paquetes que forman el sistema tampoco pueden ser utilizadas como ramas principales de actualización. La primera no cuenta con nombre en clave, es sólo "experimental", mientras que los backports estarán asociados al nombre en clave de la stable de Debian para la que fue creado (Backports-wheezy, backports-jessie...)

Con el fin de tener una mejor organización de nuestros repositorios, lo que se recomienda en esta guía es modificar el archivo /etc/apt/sources.list para apuntar a la rama y no al nombre en clave de la versión.
Para una mejor organización, el resto de repositorios que queramos añadir, al margen de los oficiales de Debian, deberían incluirse dentro de /etc/apt/sources.list.d en archivos independientes .list


Nombre en clave de la versión
 

Cita

## Debian Stretch
deb http://ftp.es.debian.org/debian/ stretch main
deb-src http://ftp.es.debian.org/debian/ stretch main

## Actualizaciones de seguridad
deb http://security.debian.org/ stretch/updates main
deb-src http://security.debian.org/ stretch/updates main


Rama de desarrollo

 

Cita

## Debian Testing
deb http://ftp.es.debian.org/debian/ testing main
deb-src http://ftp.es.debian.org/debian/ testing main

## Actualizaciones de seguridad
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main


Software No-Libre (Non-Free y Contrib)
 

 

Durante el proceso de instalación se nos preguntó si queríamos tener acceso a lo paquetes disponibles en repositorios de Debian que no están considerado como software libre (Non-free) o que necesitan de software ajeno para ser construido o funcionar (Contrib).

Independientemente de lo que hayamos elegido, siempre podremos modificar esto añadiendo o eliminando non-free y contrib de las líneas de repositorios en función de lo que cada uno necesite o estime oportuno.
 

Cita

## Debian Testing
deb http://ftp.es.debian.org/debian/ testing main contrib non-free
deb-src http://ftp.es.debian.org/debian/ testing main contrib non-free

## Actualizaciones de seguridad
deb http://security.debian.org/ testing/updates main contrib non-free
deb-src http://security.debian.org/ testing/updates main contrib non-free



Repositorios Multimedia
 

 

Muchos de los paquetes relacionados con la producción y reproducción para Debian están alojados en un repositorio alternativo conocido como Deb-multimedia.

Podremos hacer uso de ellos añadiendos las líneas correspondientes para este repositorio. Para tener todo más a mano y mejor ordenados, la recomendación es crear un nuevo archivo /etc/apt/sources.list.d/multimedia.list



deb http://www.deb-multimedia.org/ testing main
deb-src http://www.deb-multimedia.org/ testing main

Y, si queremos acceder también al contenido non-free, como pueden ser algunos codes de audio y vídeo, basta añadirlo al final

Cita

deb http://www.deb-multimedia.org/ testing main non-free
deb-src http://www.deb-multimedia.org/ testing main non-free


Una vez hecho sólo queda actualizar la lista de paquetes y añadir las llaves haciendo uso del paquete deb-multimedia-keyring



aptitude update
aptitude install deb-multimedia-keyring

 

Httpredir

 

 

Hasta ahora hemos partido de la configuración inicial que realizamos durante la instalación y que nos instó a elegir un repositorio especjo de Debian concreto de un país al que ahora mismo apuntarán nuestros repositorios. Sin embargo es mucho más eficiente hacer uso de httpredir para, en lugar de acceder siempre al mismo servidor para descargar paquetes, utilicemos el que mejor servicio nos pueda dar en un momento dado.

 

Este pequeño cambio redundará en una respuesta más rápida y una velocidad de descarga de paquetes notablemente más alta

Cita

## Debian Testing
deb http://httpredir.debian.org/debian/ testing main contrib non-free
deb-src http://httpredir.debian.org/debian/ testing main contrib non-free

## Actualizaciones de seguridad
deb http://security.debian.org/ testing/updates main contrib non-free
deb-src http://security.debian.org/ testing/updates main contrib non-free

 

Apt-Pinning
 

 

Como ya dijimos en la introducción, aptitude nos permite trabajar con paquetes de distintas ramas de desarrollo al mismo tiempo.
De igual forma, podemos configurar nuestro sistema para que actúe de una manera de otra al instalar paquetes, cambiar la rama por defecto, fijar ciertos paquetes para que se actualicen desde otra rama, etc

Todo esto se consigue mediante al APT-pinning.
 

 

El archivo donde configuraremos el Pinning es /etc/apt/preferences, que en condiciones normales lo encontraremos vacío.

La estructura para definir los paquetes que queremos instalar de cada rama es siempre la misma:

  • Package: = Aquí indicaremos la lista de paquetes a instalar.
    • Pin: = Aquí indicamos la rama, versión o repositorio desde el que queremos instalar los paquetes
    • con release a= podemos indicar la rama de los repositorios que queremos utilizar
    • con release n= podemos indicar el nombre de la versión de Debian que queremos utilizar
  • Pin-Priority: aquí indicamos la prioridad que tendrán esos paquetes que hemos indicado a la hora de actualizarlos
    • Prioridad > 1000: Se fuerza la instalación de paquetes, aunque estén en versiones inferiores a las de otros repositorios o a las ya instaladas.
    • 990 << Prioridad <= 1000: Se instalará el paquete salvo que la versión ya instalada sea más reciente, aunque dicho paquete no provenga de la rama principal.
    • 500 << Prioridad <= 990: Se instalará el paquete siempre que la versión instalada sea más antigua y no exista una versión más reciente en la rama principal.
    • 100 << Prioridad <= 550: Se instalará el paquete siempre que la versión instalada sea más antigua y no exista una versión más reciente en cualquiera de los repositorios incluidos en el sources.list
    • 0 << Prioridad <= 100: Ese paquete sólo se instala si no hay ninguna versión ya instalada del mismo
    • Prioridad << 0: Ese paquete no será instalado bajo ninguna circunstancia




Apt.conf
 

 

Este archivo no suele ser necesario modificarlo, pero en algunos casos es recomendable.

El apt-conf nos permite, entre otras cosas, definir cuál será la rama principal de nuestros repositorios y aunque normalmente estará en blanco, su apariencia será más o menos así:
 

Cita

APT::Default-Release “testing”;
APT::Cache-Limit 30000000;
Apt::Get::Purge;
APT::Clean-Installed;
APT::Get::Fix-Broken;
APT::Get::Fix-Missing;
APT::Get::Show-Upgraded “true”;

Como podemos ver, con el APT::Default-Release definiremos la rama pricipal de nuestro sistema
Con el APT::Cache-Limit podemos limitar el caché que vamos a utilizar en el proceso de actualización de lista de paquetes. No debería ser necesario tocar este valor, pero en el caso de que, por haber añadido muchos repositorios nos encontremos con un error de "cache insuficiente", sólo tenemos que aumentarlo un poco.


En el foro tenemos una guía más detallada y con ejemplos sobre Apt-Pinning

http://gnulinuxvagos.es/topic/564-debian-apt-pinning-obteniendo-paquetes-de-diferentes-ramasrepositorios/

 

 



Entornos gráficos
 

 

En repositorios de Debian tenemos una inmensa variedad de entornos gráficos y administradores de ventanas para elegir

KDE Plasma 5
 

 

 

fdYnNaM.png?1


KDE es un proyecto de software libre para la creación de un entorno de escritorio e infraestructura de desarrollo para diversos sistemas operativos. Es un entorno contemporáneo que llena la necesidad de contar con un entorno potente y amigable para estaciones de trabajo Unix-Like.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install plasma-desktop sddm

https://www.kde.org



XFCE
 

 

 

QuTbm22.jpg?1


Xfce es un entorno de escritorio ligero para sistemas tipo Unix como GNU/Linux, BSD, Solaris y derivados. Su creador, Olivier Fourdan, lo describe así: «Diseñado para la productividad, las aplicaciones se cargan y se ejecutan rápidamente, mientras conserva recursos de sistema.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instaolar el paquete correspondiente:



aptitude install xfce4

Si además de lo básico queremos también contar con toda la paquetería adicional de XFCE



aptitude install xfce4 xfce4-goodies

http://www.xfce.org/



LXDE
 

 

 

eaWoAWd.jpg?1


LXDE es un entorno de escritorio libre para Unix y otras plataformas POSIX, como Linux o BSD. El nombre corresponde a "Lightweight X11 Desktop Environment". Es un proyecto que apunta a entregar un nuevo entorno de escritorio ligero y rápido, manteniendo siempre una baja utilización de recursos

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install lxde-core

Si además de lo básico queremos también contar con toda la paquetería adicional de Lxde



aptitude install lxde

http://lxde.org/es



Mate
 

 

 

eFmDUeJ.jpg?1


Mate desktop es un fork de Gnome 2.x surgido durante la transición de Gnome 2 a Gnome 3.
Este entorno mantiene el aspecto y funcionalidad clásicos de Gnome y librerías gtk2, manteniéndose compatible con distribuciones recientes tras el cese del soporte oficial.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install mate-desktop-environment

Si además de lo básico queremos también contar con toda la paquetería adicional de Mate



aptitude install mate-desktop-environment-extras

http://mate-desktop.org/



Cinnamon
 

 

 

SITRYai.png?1


Cinnamon es una bifurcación de GNOME Shell, desarrollada por Linux Mint. Intenta proveer un entorno de escritorio más tradicional en la línea del extinto GNOME 2.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install cinnamon

http://cinnamon.linuxmint.com/



Gnome
 

 

 

kCzJ2Ja.png?1


GNOME es un entorno de escritorio e infraestructura de desarrollo para sistemas operativos Unix y derivados Unix como GNU/Linux, BSD o Solaris.

El proyecto fue iniciado por los programadores mexicanos Miguel de Icaza y Federico Mena y forma parte oficial del proyecto GNU. Nació como una alternativa a KDE bajo el nombre de GNU Network Object Model Environment.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install gnome-core

Si además de lo básico queremos también contar con toda la paquetería adicional de Gnome



aptitude install gnome

https://www.gnome.org/



OpenBox
 

 

 

EFzay4l.jpg?1


Openbox es un ligero gestor de ventanas áltamente configurable y personalizable. Su objetivo apunta a conseguir un escritorio minimalista y de muy bajo consumo

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install openbox

http://openbox.org/



FluxBox
 

 

 

kgoMvb6.png?1


FluxBox es un gestor de ventanas cuyo objetivo es ser ligero y altamente personalizable, con sólo un soporte mínimo para iconos, gráficos, y capacidades básicas de estilo para la interfaz. Se utilizan atajos de teclado, tabs, y menús simples como interfaces, los cuales pueden ser editados

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install fluxbox

http://www.fluxbox.org/



WindowMaker
 

 

 

N9JXmMS.png?1


Window Maker es un gestor de ventanas minimalista. Trata de emular la interface NeXT y es el gestor oficial del proyecto GNUstep

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install wmaker menu

http://windowmaker.org/



Awesome
 

 

 

IwVNN9J.png?1


Awesome es un gestor de ventanas con capacidad de utilizar tanto el modo tradicional (floating) como una distribución automática de las ventanas por la pantalla, como si de un mosaico se tratase.
Es un gestor ligero y muy versátil, tanto en la antigua rama 2 como en la nueva rama 3 que viene con la gran novedad del uso del lenguaje de programación Lua en su configuración.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install awesome

http://awesome.naquadah.org/



AfterStep
 

 

 

4y5MKVR.jpg?1


AfterStep es un gestor de ventanas desarrollado para proveer flexibilidad en la configuración del escritorio, mejorando la estética y la eficiencia en el uso de recursos del sistema.
Originalmente derivó de FVWM, siendo modificado para usarse en NeXTSTEP, un sistema operativo multitarea de NeXT Computer para ordenadores NeXT (informalmente conocido como Black Boxes), que debido a su ciclo de desarrollo inicial se aparto de los objetivos primarios.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install afterstep

http://www.afterstep.org/



GNUStep
 

 

 

KmKyBdR.jpg?1


GNUstep es un conjunto de Frameworks, aplicaciones y herramientas escritas en el lenguaje Objective-C, para el desarrollo de aplicaciones de escritorio. Es una implementación libre de las especificaciones OpenStep, creadas por NeXT.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install gnustep

http://gnustep.org/



DWM
 

 

 

dEwjnzc.jpg?1


Dwm es un gestor de ventanas minimalista. Maneja las ventanas en los modos mosaico y flotante. Cada modo se puede aplicar dinámicamente, dependiendo de la aplicación en uso y de la tarea realizada.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install dwm

http://dwm.suckless.org/



Wmii
 

 

 

tJYDhsX.jpg?1


Wmii es un gestor de ventanas dinámico para X11sustituye el paradigma del entorno de trabajo con la agrupación por etiquetas.
Su filosofía minimalista pretende no excederse de las 10 000 líneas de código, incluyendo utilerías y librerías, para ser consistentes con la simplicidad y claridad.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install wmii

https://github.com/sunaku/wmii



IceWM
 

 

 

7iKjzoO.png?1


IceWM es un gestor de ventanas ligero en cuanto a uso de memoria RAM y CPU, Viene con temas que imitan las interfaces de usuario de sistemas.
El principal objetivo del proyecto IceWM es tener un gestor de ventanas con una buena apariencia que sea a la vez muy ligero.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install icewm

http://www.icewm.org/



JWM
 

 

 

a9b9h7w.png?1


JWM (Joe' Window Manager) es un gestor de ventanas para el X Window System escrito por Joe Wingbermuehle. Está escrito en C y tan sólo requiere Xlib.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install jwm

http://www.joewing.net/programs/jwm



i3
 

 

 

Si3cpiX.png?1


i3 es un Tilling window manager (gestor de ventanas en mosaico) que abandona el concepto de ventanas flotantes y su objetivo es ser un gestor rápido, independiente del ratón, ultra-personalizable y que cuida el espacio.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install i3

http://i3wm.org/



FVWM-Crystal
 

 

 

E4OVJzc.jpg?1


El F Virtual Window Manager es un gestor de ventanas para el X Window System. Originalmente un derivado del gestor de ventanas estándar Twm, FVWM ha evolucionado a un entorno potente y altamente configurable para sistemas UNIX y similares.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install fvwm-crystal

http://www.fvwm.org/



Xmonad
 

 

 

rgWiktm.png?1


Xmonad es un gestor de ventanas para las Xs escrito en Haskell. Es realmente minimalista, estable, muy extensible y se integra bien en otros entornos como GNOME o KDE.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install xmonad

http://xmonad.org/



AeWM++
 

 

 

e7jAEFP.jpg


AeWM++ es un administrador de ventanas minimalista para X11 fork de AeWM. Mantiene aspecto y funcionamiento minimalista de aewm pero está totalmente escrito en C + +. Además añade algunas características modernas, como escritorios virtuales.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install aewm++

https://github.com/frankhale/aewmpp



PekWM
 

 

 

JGEl4Mf.png?1


El administrador de ventanas Pek es desarrollado por Claes Nästen. El código esta basado en aewm++, pero ha evolucionado tanto que ya no se parece a éste en absoluto. Cuenta con un conjunto ampliado de características, incluyendo el agrupamiento de ventanas (no muy diferente a ion3, pwm, o incluso fluxbox), auto propiedades, xinerama, un capturador de teclado que soporta atajos en cadena, y mucho más.

Para instalarlo en Debian sólo hay que recurrir a los repositorios oficiales e instalar el paquete correspondiente:



aptitude install pekwm

https://www.pekwm.org/projects/pekwm/

 



Otros Entornos gráficos
 

 

Aunque no estén disponibles directamente en repositorios de Debian, podemos optar por instalar otros entornos gráficos o gestores de ventanas desde repositorios de terceros o instalándolos manualmente

Enlightenment
 

 

 

XXWa55z.jpg?1


Aunque Enlightenment, por falta de mantenedores, no estaba disponible en repositorios de Debian hasta hace muy poco, en sus últimas versiones los trabajos de mantenimiento se han retomado y, aunque no lo encontraremos en las ramas principales de desarrollo aún, siempre podemos hacer algo para tenerlo como entorno gráfico en nuestro sistema.

Repositorios experimentales

 

Podemos encontrar repositorios experimentales de Debian, la última versión estable de Enlightenmente, actualizada y con algunos de sus componente más característicos, como el emulador de terminal Terminology.
Para eso, basta con añadir el siguiente repositorio:




echo 'deb http://httpredir.debian.org/debian/ experimental main contrib non-free'  > /etc/apt/sources.list.d/Experimental.list

Añadido el repositorio ya sólo nos queda instalar los paquetes correspondientes de Enlightenment y Terminology apuntando siempre a la rama desde donde queremos obtenerlos, es decir, experimental




aptitude update
aptitude install -t experimental enlightenment terminology

 


NOTA En caso de que nuestro display manager no reconozca enlightenment como entorno gráfico, siempre se puede ejecutar manualmente.

Spoiler

 




enlightenment_start

NOTAPara los que no utilicen gestor de acceso y levanten las Xs mediante algún script o con startx. Sólo deben incluir, en su home, dentro del archivo oculto .xinitrc (Si no existe lo crean) lo siguiente:




exec ck-launch-session /usr/bin/enlightenment_start


http://www.enlightenment.org/



LxQt
 

 

 

b0WdKfM.png?1


Hace ya algún tiempo que LXDE y RazorQt fusionaron sus proyectos para dar lugar a un nuevo entorno gráfico ligero conocido como LxQt.
Su adopción por parte de las distribuciones y de los usuarios marcha a paso firme, aunque quizá no tan rápido como nos gustaría.

No obstante, para la próxima Debian 9 "Stretch" estará disponible, así que desde los repositorios de la rama Testing no tendremos ningún problema para instalarlo



aptitude install lxqt

 

http://lxqt.org/

 



Trinity Desktop
 

 

 

ihfi0sr.png?1


Trinity Desktop es un fork de KDE que surgió durante la transición de KDE 3.x a KDE 4.X
Trinity retoma el camino que seguía KDE 3.5, manteniendo el proyecto y haciéndolo compatibles con las distribuciones actuales después de que la comunidad KDE dejara de dar soporte oficial a esta versión de KDE.

Cuenta con sus propios repositorios que incluiremos en /etc/apt/sources.list.d/Trinity.list



deb http://mirror.xcer.cz/trinity-sb stretch deps-r14 main-r14
deb-src http://mirror.xcer.cz/trinity-sb stretch deps-r14 main-r14

Añadiremos las llaves correspondiente



apt-key adv --keyserver keys.gnupg.net --recv-key A04BE668

Y, tras actualizar la lista de paquetes, ya sólo queda instalar el entorno Trinity



aptitude update
aptitude install tde-trinity

https://www.trinitydesktop.org/



Eagle-Mode
 

 

 

63zadB9.png?1


Eagle mode es un entorno futurista, cuyo funcionamiento es como el zoom de una cámara, acercando y alejando podemos acceder a todo.
No es un entorno gráfico completo, sino más bien un complemento que se aplica sobre un entorno ya instalado, pero es algo lo suficientemente curioso para destacarlo en este apartado.

Están disponibles los paquetes para Debian en la pgina oficial del proyecto Eagle Mode Download

i386
http://downloads.sourceforge.net/eaglemode/eaglemode_0.92.0-1_amd64.deb

Amd64
http://downloads.sourceforge.net/eaglemode/eaglemode_0.92.0-1_amd64.deb

Una vez descargado el paquete correspondiente a nuestra arquitectura, lo instalaremos con dpkg



dpkg -i eaglemode*.deb

Tras instalarlo, lo ejecutamos desde el menú del entorno que previamente teníamos para pasar a eagle-mode

http://eaglemode.sourceforge.net/

 



Librerías y componentes básicos para compilar
 

 

Necesitaremos estos paquetes para casos en los que necesitemos compilar algo, ya sea una aplicación o un controlador para un componente harware determinado.
No son paquetes que sea estrictamente necesario instalar, pero nunca están de más.


aptitude install libncurses5-dev build-essential make gcc gcc-multilib g++ g++-multilib cmake git mercurial subversion automake bc

Algo que necesitamos a la hora de compilar módulos/controladores para un kernel concreto son las cabeceras del mismo. Si hemos compilado linux a mano ya nos habremos ocupado del asunto, pero si no es así y nos encontramos utilizando un kernel descargado directamente desde repositorios, aún nos queda un último paso:
 


aptitude install linux-headers-`uname -r`

O, si durante la instalación (o más tarde) optamos por utilizar el metapaquete "linux-image" en lugar de una imagen concreta del kernel Linux, bastará con instalar el metapaquete correspondiente para las cabeceras


x86_64 (Amd64)


aptitude install linux-headers-amd64

x86 (i386)


aptitude install linux-headers-i386



Codecs multimedia
 

 

Para reproducir/producir contenido multimedia son necesarios aplicaciones y codecs que nos permitan hacerlo.
Como a estas alturas ya habremos añadido los repositorios deb-multimedia sólo nos queda instalar algunos paquetes

i386


aptitude install libdvdcss2 xine-plugin gstreamer1.0-{nice,libav,fluendo-mp3,alsa,pulseaudio,clutter-3.0,vaapi,plugins-{base,good,bad,ugly}}

amd64


aptitude install libdvdcss2 xine-plugin gstreamer1.0-{nice,libav,fluendo-mp3,alsa,pulseaudio,clutter-3.0,vaapi,plugins-{base,good,bad,ugly}}

 



Java/OpenJDK y plugin Flash
 

 

Para las aplicaciones Java necesitaremos o bien OpenJDK u Oracle Java. Por defecto nos decantaremos por la opción Libre OpenJDK, pero por si, en algún caso, llegara a darse la necesidad de utilizar la versión oficial de Oracle, dejaré abierta la puerta a esa 2ª opción.

OpenJDK
 

 

 



aptitude install openjdk-8-jre



Oracle Java
 

 

En primer lugar necesitaremos el instalador JRE comprimido en tar.gz que podremos conseguir desde la página de descargas de Oracle. Por supuesto, nos centraremos en la versión que corresponda a nuestra arquitectura
http://www.oracle.com/technetwork/java/javase/downloads/index.html

Una vez tengamos el comprimido, tendremos que extraer su contenido



tar -zxf jre-*-linux-x64.tar.gz -C /opt

Actualizar alternativas para incluir Oracle Java



update-alternatives --install /usr/bin/java java /opt/jre/jre*/bin/java 100
update-alternatives --install /usr/bin/javac javac /opt/jre/jre*/bin/javac 100

Y por último comprobamos que todo ha salido bien



java -version



Plugins para el navegardor Java/Icedtea
 

 

Al igual que en el caso anterior, para ejecutar aplicaciones java desde el navegador necesitaremos los plugins correspondiente. Bien el plugin libre Icedtea o el oficial de Oracle.

Plugin Icedtea
 

 

Dsiponible en repositorios y de instalación muy sencilla




aptitude install icedtea-plugin

 



Plugin Oracle Java
 

 

Suponiendo que hemos seguidos los pasos de más arriba para instalar Oracle Java, sólo nos queda crear un enlace simbólico en la carpeta de plugins de nuestro navegador

Firefox y similares




cd /opt/jre*/lib/*/
ln -s libnpjp2.so /usr/lib/mozilla/plugins/

Chromium y similares




cd /opt/jre*/lib/*/
ln -s libnpjp2.so /usr/lib/chromium-browser/plugins/

 



Plugin Flash para Firefox y navegadores NPAPI
 

 

Aunque cada vez más prescindible, el plugin de flash puede ser necesario en alguna ocasión



aptitude install flashplugin-nonfree



Plugin Flash para Chromium y navegadores PPAPI
 

 

Aunque cada vez más prescindible, el plugin de flash puede ser necesario en alguna ocasión



aptitude install pepperflashplugin-nonfree



Plugin Flash Pepper en navegadores NPAPI
 

 

Dado que el plugin de flash para GNU/Linux fue descontinuado en su versión 11.2 y Adobe únicamente actualiza la versión incrustada en Google Chrome, para poder utilizar versiones recientes del plugin en navegadores NPAPI (Firefox, Iceweasel, Midori, Arora...) tenemos disponible el wrapper freshplayer que hará de intermendiario entre el plugin PPAPI y el navegador NPAPI



aptitude install pepperflashplugin-nonfree browser-plugin-freshplayer-pepperflash

http://gnulinuxvagos.es/topic/3966-pepper-en-flash-en-firefox-y-navegadores-no-ppapi-a-través-de-freshplayer-plugin-debian/



Habilitar decodificación por hardware
 

 

Podemos exprimir un poco más el ineficiente plugin de Adobe obligándole a aprovechar la decodificación por hardware.
Lamentablemente no es algo que resulte efectivo en todos los casos y puede darnos algún problema, pero para aquellos en los que sí, podría resultar bastante útil.



mkdir /etc/adobe
echo "EnableLinuxHWVideoDecode=1" >> /etc/adobe/mms.cfg
echo "OverrideGPUValidation=1" >> /etc/adobe/mms.cfg

Si no tenemos la suerte de poder utilizar la decodificación por hardware o nos encontramos con algún roblema recurrente al habilitarla, bastará con eliminar el archivo de configuración y dejar que el plugin se ejecute con las opciones por defecto



rm -R /etc/adobe

 



Herramientas y librerías para compresión/descompresión de Archivos
 

 

Para trabajar con archivos comprimidos o comprimir contenido necesitaremos las librerías correspondientes para cada formato.


aptitude install gzip rar unrar zip unzip unace bzip2 lzop lzma p7zip-{full,rar} arj lzip liblz4-tool lhasa xz-utils



Soporte multiarquitectura
 

 

El soporte multiarquitectura de Debian nos permite correr de manera "transparente" aplicaciones de otras arquitecturas distintas a la nuestra instalando los paquetes y dependencias necesarias como si lo estuviéramos haciendo en un sistema nativo.


aptitude install multiarch-support

Como en nuestro caso estamos trabajando con arquitecturas x86 y x86_64, lo que nos interesa es hacer uso de aplicaciones i386 en sistema Amd64 (Al revés sería imposible)


dpkg --add-architecture i386

Y, por supuesto, actualizar la lista de paquetes de ambas arquitecturas


aptitude update

Ahora, cada vez que queremoas instalar un paquete de arquitectura i386 bastará con añadir un :i386 tras el nombre del paquete

Cita

aptitude install paquete:i386

Esto no es necesario para los paquetes Amd64 ya que al ser nuestra arquitectura principal bastará con poner únicamente el nombre del paquete



Controladores para tarjetas gráficas

 

Quizá el hardware que más nos atormenta a la hora de configurar el sistema operativo y que, salvo en el caso de AMD, no debería ser muy complicado de poner a punto


Intel

 

Los controladores libres Intel son todo los que necesitamos para poner a estas integradas a trabajar sin que tengamos que rompernos la cabeza. De hecho, ya deberían funcionar sin que tengamos que hacer nada, pero no está demás afinar algunas cosas.



aptitude install mesa-utils mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa mesa-vdpau-drivers libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin uuid-runtime

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits



aptitude install libegl1-mesa:i386 libegl1-mesa-drivers:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libgles1-mesa:i386 libgles2-mesa:i386 libglu1-mesa:i386 libopenvg1-mesa:i386 mesa-vdpau-drivers:i386 libtxc-dxtn-s2tc0:i386



Nvidia
 

 

Nouveau (Libres)

 

Los controladores Libres Nouveau quizá no ofrezcan un gran rendimiento y carezcan de algunas características que sí tendríamos con los privativos, pero además de preservar nuestra libertad, tienen una serie de ventajas añadidas en cuanto a la integración con el kernel, el sistema operativo y su posterior actualización y mantenimiento
De hecho, ya deberían funcionar sin que tengamos que hacer nada, pero no está demás afinar algunas cosas.
 




aptitude install mesa-utils mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa mesa-vdpau-drivers libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin uuid-runtime

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits




aptitude install libegl1-mesa:i386 libegl1-mesa-drivers:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libgles1-mesa:i386 libgles2-mesa:i386 libglu1-mesa:i386 libopenvg1-mesa:i386 mesa-vdpau-drivers:i386 libtxc-dxtn-s2tc0:i386



Nvidia (Privativos)
 

 

Los controladores privativos de Nvidia ofrecen un rendimiento sobresaliente en GNU/Linux, aunque su instalación y posterior mantenimiento, así como su integración con el Kernel quizá no resulte tan eficiente y transparente como en el caso de los controladores libres

Nvidia detect
 

 

Ésta es una herramienta totalmente opcional pero muy útil a la hora de obtener información sobre nuestra tarjeta gráfica Nvidia y los controladores que necesita.

Nvidia-detect nos dirá, entre otras cosas, la serie de controladores gráficos oficiales de Nvidia que corresponderían a nuestra GPU, lo cual es de gran ayuda para el posterior proceso de instalación de los drivers.
 





aptitude install nvidia-detect

Su manejo se muy simple y la respuesta que obtendremos será muy clara acerca de la versión del controlador que necesitamos
 





nvidia-detect



Desde repositorios
 

 

Para evitar conflicto, en primer lugar desinstalaremos los controladores libres nouveau





aptitude purge xserver-xorg-video-nouveau

Para poder instalar los controladores necesitaremos varias cosas:

  • Cabeceras del kernel
  • DKMS (Dinamic Kernel Module Support)
  • Configurador de Xorg (Nvidia Xconfig)
  • Configurador gráfico (Nvidia Settings)
  • Librerías Vdpau
  • Los controladores propiamente dichos




aptitude install linux-headers-`uname -r` nvidia-kernel-dkms nvidia-driver nvidia-glx nvidia-xconfig nvidia-settings nvidia-vdpau-driver libgl1-nvidia-glx nvidia-vulkan-icd

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





libgl1-nvidia-glx:i386

Para tarjetas que requieran series de controladores más antiguas podemos optar por instalar los paquetes "legacy", tanto para la serie 304 como para la 340





aptitude install linux-headers-`uname -r` nvidia-legacy-304xx-kernel-dkms nvidia-legacy-304xx-driver libgl1-nvidia-legacy-304xx-glx nvidia-settings-legacy-304xx nvidia-vdpau-driver nvidia-xconfig

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





libgl1-nvidia-legacy-304xx-glx:i386

En cualquier caso, tendremos que configurar correctamente el archivo /etc/X11/xorg.conf para trabajar con el controlador privativo.
Para eso nos valdremos de Nvidia-xconfig y de paso habilitaremos la composición y deshabilitaremos el logo de Nvidia a pantalla completa que aparece durante el arranque





nvidia-xconfig --composite --no-logo



Instalador Oficial
 

 

Nvidia ofrece un instalador oficial .run desde su página web en diversas series dependiendo de nuestro hardware y/o necesidades:

http://www.nvidia.es/Download/Find.aspx?lang=es

Una vez descargados (poniendo atención en elegir la versión del controlador que corresponde con nuestro modelo de tarjeta y arquitectura del sistema operativo), debemos proceder a instalarlos con el entorno gráfico deshabilitado.

Empezaremos instalando las cabeceras del Kernel





aptitude install linux-headers-`uname -r`

O, si durante la instalación (o más tarde) optamos por utilizar el metapaquete "linux-image" en lugar de una imagen concreta del kernel Linux, bastará con instalar el metapaquete correspondiente para las cabeceras
x86_64 (Amd64)





aptitude install linux-headers-amd64

 

x86 (i386)





aptitude install linux-headers-i386

 

En cuanto las tengamos procedemos a instalar los controladores de la siguiente manera

OJO A partir de aquí trabajaremos desde la línea de comandos fuera del entorno gráfico.

Para salir completamente del entorno gráfico detendremos el demonio correspondiente a nuestro Login manager.

 

Cita

service GESTOR stop

Siendo GESTOR el login Manager que estemos utilizando, sddm, gdm3, slim, lightdm, entrance, mdm...
Este comando nos dejará en la terminal tty1, donde tendremos que loguearnos como root para continuar con el proceso.


Ya sólo nos queda ejecutar el instalador de Nvidia y seguir los pasos que se nos van presentando:

Cita

chmod +x NVIDIA-Linux-serie-y-numero-de-version.run
./NVIDIA-Linux-serie-y-numero-de-version.run

Para hacerlo más fácil y no tener que escribir todo el nombre, basta con ayudarnos del autocompletado pulsando el tabulador o utilizar un comodín:

Cita

chmod +x NVIDIA-*.run
./NVIDIA-*.run


Aunque durante el proceso ya lo habremos configurado correctamente el archivo /etc/X11/xorg.conf para trabajar con el controlador privativo, nos valdremos de Nvidia-xconfig para habilitar también la composición y deshabilitar el logo de Nvidia a pantalla completa que aparece durante el arranque.





nvidia-xconfg --composite --no-logo

 



Optimus
 

 

Aunque Nvidia parece que ya está trabajando en dar soporte oficial a esta tecnología que tanto se nos resiste en GNU/Linux, a día de hoy aún es necesario hacer uso del proyecto libre Bumblebee.

Debemos tener en cuenta que hay dos versiones de Bumlebee

  • bumblebee
    • En el caso de utilizar conjuntamente con los controladores libres nouveau
  • bumblebee-nvidia
    • En el caso de utilizar conjuntamente con los controladores privativos de nvidia

 

 

Intel + Nouveau (Libres)

 

 

 





aptitude install bumblebee primus primus-libs bbswitch-dkms xserver-xorg-video-intel libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin nvidia-cg-toolkit mesa-utils mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa mesa-vdpau-drivers libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin uuid-runtime

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





aptitude install primus-libs:i386  libtxc-dxtn-s2tc0:i386 libegl1-mesa:i386 libegl1-mesa-drivers:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libgles1-mesa:i386 libgles2-mesa:i386 libglu1-mesa:i386 libopenvg1-mesa:i386 mesa-vdpau-drivers:i386



Intel + Nvidia (Privativos)
 

 

En primer lugar vamos a asegurarnos de evitar conflictos eliminando los controladores Libres





aptitude purge xserver-xorg-video-nouveau

Y debemos también instalar los controladores Nvidia, tal y como se expone en el apartado anterior, ya sea desde repositorios o mediante el instalador oficial.
NOTA Tendremos especial cuidado de NO configurar /etc/X11/xorg.conf, de lo contrario estaríamos forzando el uso de una de las dos tarjetas en lugar de favorecer la conmutación de una a otra.

La instalación en este caso es prácticamente idéntica, pero apuntando a la versión de Bumblebee que está pensada para trabajar con drivers privativos





aptitude install bumblebee-nvidia primus primus-libs bbswitch-dkms xserver-xorg-video-intel libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin nvidia-cg-toolkit mesa-utils mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa mesa-vdpau-drivers libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin uuid-runtime

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





aptitude install primus-libs:i386  libtxc-dxtn-s2tc0:i386 libegl1-mesa:i386 libegl1-mesa-drivers:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libgles1-mesa:i386 libgles2-mesa:i386 libglu1-mesa:i386 libopenvg1-mesa:i386 mesa-vdpau-drivers:i386

 

 



AMD

 

Libres
 

 

Los controladores Libres para tarjetas gráficas AMD son bastante competentes y, aunque su rendimiento 3D no es para tirar cohetes, suelen dar muchos menos dolores de cabeza que sus equivalentes privativos. Especialmente Ahora que AMD se ha centrado en apoyar a la comunidad para unificar esfuerzos, parece de medio a largo plazo, ésta será la alternativa a seguir.
De hecho, ya deberían funcionar sin que tengamos que hacer nada, pero no está demás afinar algunas cosas, pero existen algunas variantes.


MESA

 

 





aptitude install mesa-utils mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgl1-mesa-dri libglapi-mesa libgles1-mesa libgles2-mesa libglu1-mesa libopenvg1-mesa mesa-vdpau-drivers libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc-bin uuid-runtime

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





aptitude install libegl1-mesa:i386 libegl1-mesa-drivers:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libgles1-mesa:i386 libgles2-mesa:i386 libglu1-mesa:i386 libopenvg1-mesa:i386 mesa-vdpau-drivers:i386 libtxc-dxtn-s2tc0:i386



AMDGPU

 


La nueva serie de controladores libres que se ha gestado sobre MESA, pero con el apoyo, esta vez sí, de AMD y que pretenden ser la alternativa de futuro para las gráficas de la compañía roja.
Si bien por ahora sólo ofrecen soporte para gráficas GCN 1.1 (Bonaire, Hawaii, Kaveri, Kabini Mullins, Iceland, Tonga, Carrizo, Fiji y Stoney), deberían ir ampliando el soporte conforme avance el desarrollo. Aunque eso sí, los poseedores de gráficas más antiguas no tendrán tanta suerte :(





aptitude install xserver-xorg-video-amdgpu libdrm-amdgpu1 firmware-amd-graphics

Para asegurarnos que es éste y no otro controlador el que se va a utilizar, crearemos un archivo /etc/X11/xorg.conf.d/20_amdgpu.conf muy básico, especificándolo.
 

Cita

Section "Device"
Identifier "AMD"
Driver "amdgpu"
EndSection


Ya sólo nos queda reinicir el entorno gráfico (o el equipo) para comprobar que realmente funcionan y si lo hacen como es debido :P

 



Fglrx (Catalyst)(Privativos)
 

 

AMD sigue sin conseguir dar con la tecla que permita a los usuarios de GNU/Linux disfrutar de unos drivers a la altura y hace poco ha decidido descontinuar definitivamente son controladores oficiales. Así todo, los controladores Fglrx (Catalyst) de momento ofrecen un mejor rendimiento 3D en según qué áreas que sus equivalentes libres pero también otras muchas desventajas, al margen de su carácter privativo.

Desde repositorios
 

 

Para poder instalar los controladores necesitaremos varias cosas:

  • Cabeceras del kernel
  • DKMS (Dinamic Kernel Module Support)
  • Configurador gráfico (Fglrx Control)
  • Los controladores propiamente dichos




aptitude install linux-headers-`uname -r` fglrx-driver libgl1-fglrx-glx fglrx-control fglrx-atieventsd fglrx-modules-dkms libfglrx-amdxvba1

En el caso de tener un sistema de 64 bits, no está demás instalar también los paquetes i386 por si queremos ejecutar una aplicación gráfica de 32 bits





aptitude install libgl1-fglrx-glx:i386

En cualquier caso, tendremos que configurar correctamente el archivo /etc/X11/xorg.conf para trabajar con el controlador privativo.
Para eso nos valdremos de aticonfig





aticonfig --initial



Instalador Oficial
 

 

AMD ofrece un instalador oficial .run desde su página web en diversas series dependiendo de nuestro hardware y/o necesidades:

http://support.amd.com/us/gpudownload/Pages/index.aspx

Una vez descargados (poniendo atención en elegir la versión del controlador que corresponde con nuestro modelo de tarjeta y arquitectura del sistema operativo), debemos proceder a instalarlos.

Empezaremos instalando las cabeceras del Kernel





aptitude install linux-headers-`uname -r`

O, si durante la instalación (o más tarde) optamos por utilizar el metapaquete "linux-image" en lugar de una imagen concreta del kernel Linux, bastará con instalar el metapaquete correspondiente para las cabeceras


x86_64 (Amd64)





aptitude install linux-headers-amd64

x86 (i386)





aptitude install linux-headers-i386


Ya sólo nos queda ejecutar el instalador de AMD y seguir los pasos que se nos van presentando:

 

Cita

chmod +x ati-driver-installer-serie-y-numero-de-version.run
./ati-driver-installer-serie-y-numero-de-version.run

Para hacerlo más fácil y no tener que escribir todo el nombre, basta con ayudarnos del autocompletado pulsando el tabulador o utilizar un comodín:

Cita

chmod +x ati-driver-installer-*.run
./ati-driver-installer-*.run

En cualquier caso, tendremos que configurar correctamente el archivo /etc/X11/xorg.conf para trabajar con el controlador privativo.
Para eso nos valdremos de aticonfig





aticonfig --initial

 


AMD hybrids
 

 

Se puede dar el caso de encontrarnos la combinación de procesador Intel junto a una tarjeta gráfica dedicada AMD, utilizando la gráfica integrada para las cosas cotidianas y la ATI para aquellas un poco más exigentes.

Los pasos a seguir son los mismos que han sido descritos en apartados anteriores, tanto para en el caso de querer utilizar la integrada Intel, como si decidimos valernos de la ATI/AMD, teniendo especial cuidado de especificar correctamente en el /etc/X11/xorg.conf la tarjeta que queremos utilizar.


Valiéndonos de los controladores privativos Fglrx, deberías poder contar con la opción de cambiar de una tarjeta a otra desde el propio panel Catalyst.
En este caso la configuración de Xorg la realizaremos mediante el comando




aticonfig --initial -f

Y podremos comprobar si efectivamente se realiza la conmutación con




sudo aticonfig --px-dgpu

 



Controladores para tarjetas Wifi / Ethernet / Modem ADSL
 

 

Las tarjetas Wifi también pueden ser un dolor de cabeza a la hora de configuración de nuestro sistema operativo.
En la mayoría de los casos estarán perfectamente soportadas por Linux, pero en aquellos en los que no o en los casos donde sea necesario un firmware privativo adicional, tendremos que trabajar un poco más

NOTA Debemos recordar que para poder instalar firmware o controladores privativos debemos tener los respositorios non-free habilitados en nuestro sources.list

ADSL Adi
 

 

Para lo modems ADSL adi existe un paquete en los repositorios non-free




aptitude install firmware-adi



Atheros
 

 

Para las tarjetas Atheros existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • AR3012
  • AR5523
  • AR7010
  • AR9170
  • AR9271
  • AR3011
  • ath6k/AR6003
  • ath6k/AR6003.1
  • ath6k/AR6004


aptitude install firmware-atheros



Atmel
 

 

Para las tarjetas Atmel at76c50x existe un paquete en los repositorios non-free llamado atmel-firmware



aptitude install atmel-firmware



Broadcom
 

 

Para las tarjetas Broadcom existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

B43 (43xx)

  • BCM43143
  • BCM43241
  • BCM4329
  • BCM4330
  • BCM4334
  • BCM4335
  • BCM43362
  • BCM4354


aptitude install firmware-brcm80211

B43 (43xx)

  • BCM4306/3
  • BCM4311
  • BCM4318
  • BCM4321
  • BCM4322
  • BCM4312


aptitude install firmware-b43-installer

B43 (leagcy)

  • BCM4301
  • BCM4306/2
  • BCM4306


aptitude install firmware-b43leagcy-installer

NetXtremeII (bnx2)

  • 5706/5708
  • 5709/5716
  • 5709 A0/A1


aptitude install firmware-bnx2

NetXtremeII 10Gb (bnx2x)

  • 57710
  • 57711
  • 57712


aptitude install firmware-bnx2



Intel
 

 

Para las tarjetas intel pro wireless existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

Intel Pro Wireless

  • 100
  • 105
  • 130
  • 1000
  • 1030
  • 2200
  • 2230
  • 3160
  • 3945
  • 4965
  • 5100
  • 5150
  • 5300
  • 5350
  • 5150
  • 6000
  • 6005
  • 6200
  • 6205
  • 6230
  • 6250
  • 7260
  • 7265


aptitude install firmware-iwlwifi

Intel Pro Wireless (ipw2)

  • 2100
  • 2200
  • 2915


aptitude install firmware-ipw2x00

Intel Wimax

  • 2400 USB v1.4
  • 2400 USB v1.5
  • 6050 USB v1.5


aptitude install firmware-intelwimax



Marvell Libertas
 

 

Para las tarjetas Marvell (Libertas) 8xxx existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • MWL8366
  • CF8381
  • CF8385
  • SD8385
  • USB8388
  • GSPI8686
  • MWL8687
  • USB8682
  • SD8686
  • MWL8764
  • SD8787
  • GSPI8688
  • SD8688
  • PCIE8897
  • SD8897


aptitude install firmware-libertas



Myricom
 

 

Para los adaptadores ethernet Myricom existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • Myri-10G


aptitude install firmware-myricom



Prism2
 

 

Para los USB prism2 existe un paquete en los repositorios non-free



aptitude install prism2-usb-firmware-installer



QLogic netxen
 

 

Para los adaptadores ethernet QLogic netxen existe un paquete en los repositorios non-free



aptitude install firmware-netxen



Ralink
 

 

Para las tarjetas Ralink existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • RT2561 (chipset RT2501/RT5201)
  • RT2561S (chipset RT2501 Turbo/RT5201 Turbo)
  • RT2661 (chipset RT2600/RT5600)
  • RT2760/RT2790/RT2860/RT2890/RT3090 (chipset RT2700P[D]/RT2700E[D]/RT2800P[D]/RT2800E[D]/RT3000E[D])
  • RT2870/RT3070/RT3071/RT3072 (chipset RT2800U[D])
  • RT3071/RT3072
  • RT3290
  • RT2571W/RT2671 (chipset RT2501USB/RT5201USB)


aptitude install firmware-ralink



Realtek
 

 

Para las tarjetas Realtek existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • RTL8192E
  • RTL8192SU
  • RTL8105E-1
  • RTL8106E-1
  • RTL8106E-2
  • RTL8111D-1/RTL8168D-1
  • RTL8111D-2/RTL8168D-2
  • RTL8168E-1
  • RTL8168E-2
  • RTL8168E-3
  • RTL8168F-1
  • RTL8168F-2
  • RTL8168G-1
  • RTL8168G-2
  • RTL8168G-3
  • RTL8402-1
  • RTL8411-1
  • RTL8411-2
  • RTL8188EE
  • RTL8188EU
  • RTL8192CE/RTL8188CE
  • RTL8192CE/RTL8188CE B
  • RTL8188CE A
  • RTL8192CU/RTL8188CU UMC A
  • RTL8192CU/RTL8188CU UMC B
  • RTL8192CU/RTL8188CU TMSC
  • RTL8192CU/RTL8188CU
  • RTL8192SE/RTL8191SE
  • RTL8192SU/RTL8712U
  • RTL8723AU
  • RTL8723BE
  • RTL8723AE rev A
  • RTL8723AE rev B
  • RTL8821AE


aptitude install firmware-realtek



Zydas
 

 

Para las tarjetas zydas existe un paquete en los repositorios non-free que es compatible con los siguientes modelos:

  • ZD1211
  • ZD1211B
  • Atheros AR5007UG (AR2524/AR5524)


aptitude install  firmware-zd1211



Linux Wireless Backports (AKA Compat wireless)
 

 

Los controladores Linux Wireless Backports(Anteriormente conocidos como Compat Wireless) son un conjunto de drivers adicionales para tarjetas wireless a los que podremos recurrir cuando no encontremos soporte para nuestro modelo de tarjeta en los paquetes de repositorios.
No sólo contienen controladores para tarjetas Wifi, también brindan soporte a varias tarjetas ethernet y ciertos dispositivos bluetooth.

En primer lugar descargamos la versión correspondiente a nuestra versión de Linux, que podemos comprobar con



uname -r

http://drvbp1.linux-foundation.org/~mcgrof/rel-html/backports/

Para poder tener estos módulos, tendremos que compilarlos. Para lo cual necesitamos en primer lugar las cabeceras del kernel



aptitude install linux-header-`uname -r`

Una vez tengamos todo descargado, descomprimimos el pauqete .tar.gz con los controladores



tar xvf backports-*.tar.*
cd backports*

Compilamos e instalamos los módulos



make
make install

NOTA También tenemos la opción de compilar e instalar únicamente los módulos correspondientes al hardware que queremos hacer funcionar mediante el comando make defconfig

 

Cita

make defconfig-modulo


Siendo modulo alguno de los siguientes:

  • alx
  • ar5523
  • ath10k
  • ath5k
  • ath6kl
  • ath9k
  • b43
  • b43legacy
  • brcmfmac
  • brcmsmac
  • carl9170
  • drm
  • ieee802154
  • iwlwifi
  • media
  • nfc
  • regulator
  • rtlwifi
  • wifi
  • wil6210

Tras haber configurado los módulos que queremos compilar, procedemos de la manera habitual



make
make install

https://backports.wiki.kernel.org/index.php/Main_Page

 



Navegador Firefox
 

 

Por defecto, Debian utilizaba para la construcción de su fork de Mozilla Firefox, Iceweasel, pero recientemente Mozilla y la comunidad Debian han llegado por fin al entendimiento y volvemos a contar con Firefox en repositorios, centrándose en la versión con soporte extendido (ESR, que tenemos disponibles desde los repositorios oficiales de la distribución universal.

Repositorio oficial de Debian (ESR)
 

 

Si bien no será la versión más reciente del navegador web, sí que contará con un mayor tiempo de soporte.

Su instalación es tan sencilla como



aptitude install firefox

Los paquetes de idioma se obtienen a través de los paquetes firefox-l10n



aptitude install firefox-l10n-es-es



Repositorio Mozilla Debian
 

 

Podemos optar por versiones más recientes de Firefox valiéndonos del repositorio Mozilla Debian e incluso probar futuras versiones Beta o Alpha del navegador

Beta
 

 

Debemos añadir los repositorios correspondientes al archivo /etc/apt/sources.list.d/mozilla-debian.list
 




deb http://http.debian.net/debian experimental main

Las llaves de este repositorio se obtienen a través del paquete Mozilla archive-keyring




wget -nc http://mozilla.debian.net/pkg-mozilla-archive-keyring_1.1_all.deb
dpkg -i pkg-mozilla-archive-keyring_1.1_all.deb
rm pkg-mozilla-archive-keyring_1.1_all.deb

Sólo queda actualizar la lista de Paquetes e instalar Firefox desde dicho repositorio




aptitude update
aptitude install -t experimental firefox

Los paquetes de idioma se obtienen a través de los paquetes firefox-l10n




aptitude install -t experimental firefox-l10n-es-es



Aurora
 

 

Debemos añadir los repositorios correspondientes al archivo /etc/apt/sources.list.d/mozilla-debian.list




deb http://mozilla.debian.net/ experimental firefox-aurora

Las llaves de este repositorio se obtienen a través del paquete Mozilla archive-keyring




wget -nc http://mozilla.debian.net/pkg-mozilla-archive-keyring_1.1_all.deb
dpkg -i pkg-mozilla-archive-keyring_1.1_all.deb
rm pkg-mozilla-archive-keyring_1.1_all.deb

Sólo queda actualizar la lista de Paquetes e instalar Firefox desde dicho repositorio




aptitude update
aptitude install install -t experimental firefox

Los paquetes de idioma se obtienen a través de los paquetes firefox-l10n




aptitude install -t experimental firefox-l10n-es-es



http://mozilla.debian.net/

 



Gestor de correo Thunderbird
 

 

Por defecto, Debian utilizaba para la construcción de su fork de Mozilla Thunderbird, Icedove. Pero cambios recientes han hecho que sea posible volver a utilizar la versión con soporte extendido (ESR) de Thunderbird de nuevo en Debian, aunque se trate más de una cuestión de nombre y marca que una cuestión técnica al fin y al cabo.

Repositorio oficial de Debian (ESR)
 

 

Si bien no será la versión más reciente del gestor de correo, sí que contará con un mayor tiempo de soporte.

Su instalación es tan sencilla como



aptitude install thunderbird

Los paquetes de idioma se obtienen a través de los paquetes thunderbird-l10-x-x



aptitude install thunderbird-l10n-es-es

 



Tipografías
 

 

Aunque Debian maneja bastante bien este tema en concreto, podemos dar un mejor aspecto a las tipografías mostradas en el sistema editando el archivo ~/.fonts.conf

Un ejemplo básico de configuración de este archivo sería el siguiente:



<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font">
<edit mode="assign" name="hinting" >
<bool>true</bool>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="autohint" >
<bool>true</bool>
</edit>
</match>
<match target="font">
<edit mode="assign" name="hintstyle" >
<const>hintslight</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="rgba" >
<const>rgb</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="antialias" >
<bool>true</bool>
</edit>
</match>
<match target="font">
<edit mode="assign" name="lcdfilter">
<const>lcddefault</const>
</edit>
</match>
</fontconfig>

Tras guardar los cambios, deberíamos empezar a apreciar, poco a poco, un cambio notable en las tipografías del sistema

Tampoco está demás instalar algunas tipografías adicionales



aptitude install fonts-cantarell fonts-liberation fonts-noto ttf-dejavu fonts-stix otf-stix fonts-oflb-asana-math fonts-mathjax

 


 

Otros procedimientos útiles


Sudo

 

 

Es algo de lo que ya hablamos durante el proceso de instalación, pero siempre puede ocurrir que, pasado un tiempo cambiemos de idea o que hayamos cometido un error al instalar, así que veamos como darle la opción a un usuario de utilizar la orden sudo

En primer lugar y como es obvio, tendremos que instalarlo


aptitude install sudo

Y damos permiso al usuario objetivo para que puede utilizarlo

Cita

gpasswd -a usuario sudo

El cambio se hará efectivo tras reiniciar el sistema



Actualizar microcódigo del Procesador
 

 

El microcódigo es un tipo muy especifico de firmware. Las nuevas generaciones de procesadores están diseñadas para ir actualizando el microcódigo cada cierto tiempo. Esto trae ventajas, desde corrección de errores hasta mejoras de la eficiencia del procesador.

Actualizar el microcódigo tiene un gran inconveniente y es que habría que flashear el procesador para instalar la nueva versión del firmware. Sin embargo, para los sistemas *nix se ideó un procedimiento con el que se pudiera realizar por software.

NOTA Esto no altera de manera alguna el hardware y no tiene efecto en otros sistemas operativos que tengamos instalados en el equipo.

Para procesadores Intel


aptitude install intel-microcode

Para procesadores Amd


aptitude install amd64-microcode

Debemos tener en cuenta que con el paquete anterior hemos descargado los microcódigos para nuestro procesador, pero aún no los estamos usando.
Aunque seguramente ya nos lo haya instalado como dependencia, iucode-tool es quien se encargará de ajustar la carga del microcódigo que corresponde a nuestro procesador.


aptitude install iucode-tool
iucode_tool --scan-system
update-initramfs -u

Si queremos comprobar que verdaderamente hemos cargado y estamos utilizando el nuevo microcódigo.


grep microcode /proc/cpuinfo

Si todo ha ido bien, la versión que saldrá tras reiniciar no coincidirá con la que nos devolvió iucode_tool antes de completar el proceso.



Autocompletado en Terminal (Bash completion)
 

 

El autocompletado bash es una función muy útil que nos ayudará a reducir considerablemente el número de pulsaciones que realizamos al trabajar en la terminal.

Mediante el uso del tabulador, bash_completion nos permitirá completar con comandos, opciones, rutas, nombres de archivos, o incluso nombres de paquetes. En caso de existir algún conflicto (términos muy similares, inexistentes o no disponer de suficientes datos) nos presentará una lista con todas las posibilidades.

Para habilitarlo hacen falta dos cosas, empezando por instalar el paquete que contienen la herramienta


aptitude install bash-completion

Luego queda cerciorarnos que en nuestro archivo de configuración /etc/bash.bashrc tenemos habilitado bash completion ya que en ocasiones aunque tenemos el bloque correspondiente a esta función dentro del archivo, todas las líneas de éste aparecen comentadas. En ese caso bastaría eliminar los "#" para volver a habilitarlo e iniciar una nueva terminal para que entre en funcionamiento.

El contenido que nos interesa viene precedido por una descripción muy claro y tiene este aspecto.

Cita

# enable bash completion in interactive shells
#if ! shopt -oq posix; then
# if [ -f /usr/share/bash-completion/bash_completion ]; then
# . /usr/share/bash-completion/bash_completion
# elif [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
# fi
#fi


Como ya hemos dicho, no nos interesa que todas esas líneas estén comentadas, así que eliminamos las almohadillas para habilitarlas

Cita

# enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi


Una vez hecho esto ya podremos disfrutar de bash completion en nuestras próximas sesiones de terminal



Liquorix y scripts Smxi y Sgfxi
 

 

Liquorix es un proyecto destinado a compilar y empaquetar versiones recientes del kernel linux con la mejor configuración y parches para equipos de escritorio destinados a actividades multimedia o gaming.

Linux Liquorix
 

 

Lo primero que debemos hacer es añadir el repositorio para Debian en /etc/apt/sources.list.d/liquorix.list



deb http://liquorix.net/debian sid main

Si somos algo osados y queremos probar futuras versiones del kernel, podemos utilizar la rama "future"



deb http://liquorix.net/debian/ sid main future

Si, por el contrario, preferimos quedarnos con una versión del kernel más antigua y con soporte prolongado, apuntaremos a la rama "past"



deb http://liquorix.net/debian/ sid main past

En cualquier caso, u correspondiente llaves



aptitude update
aptitude install liquorix-keyring

Dependiendo de la arquitectura de nuestro equipo y la del sistema utilizado, instalaremos los paquetes adecuados

x86



aptitude install linux-{image,headers}-liquorix-686

amd64



aptitude install linux-{image,headers}-liquorix-amd64

Tras este sencillo proceso ya estaríamos listos para iniciar con el nuevo kernel, sin olvidar que podríamos necesitar algún ajuste o reinstalación de nuestros controladores gráficos, aunque hoy en día con Dkms eso no debería ser ningún problema.




Scripts Smxi Sgfxi
 

 

Además del repositorio para Debian, este proyecto va aún más allá y cuenta con varios scripts que podemos utilizar para realizar las tareas de optimización más específicas en nuestro sistema, tanto con el script general Smxi, como con el que está centrando únicamente en el aspecto gráfico, Sgfxi.

Instalación

Smxi (Script General)



cd /usr/local/bin
wget -Nc smxi.org/smxi.zip
unzip smxi.zip 
chmod +x smxi
rm smxi.zip
smxi

Sgfxi (Script para temas gráficos)



cd /usr/local/bin
wget -Nc smxi.org/sgfxi
chmod +x sgfxi
sgfxi

Utilización

La primera vez que lo ejecutemos, Smxi empezará haciéndonos preguntas sobre nuestro sistema para ajustar la configuración convenientemente



smxi -G

Una vez configurado, podremos acceder a todas las opciones y menús del script, incluyendo el proceso descrito en el apartado anterior, instalar una versión kernel Liquorix desde el repositorio oficial, desde el menú kernel-options >> alternate-kernel-install


En el caso de Sfgx el panorama es muy similar, aunque en este caso debemos ejecutarlo fuera del entorno gráfico.



sgfxi -G

En este caso, el script se centrará específicamente en lo referente a nuestros controladores gráficos, permitiéndonos instalar la última versión de los mismos, modificar la configuración de Xorg, habilitar/deshabilitar funciones gráficas específicas...


Actualización de los scripts

En ambos casos, podremos mantener siempre al día los scripts de liquorix mediante la opción -U



smxi -U
sgfxi -U

Manual de utilización

Estos scripts dan muchísimo juego y nos permitirán realizar un gran número de tareas, desde instalar un entorno gráfico a mejorar el desempeño de firefox, jugar con nuestros repositorios, instalar el último libreoffice...
Todo mediante menús muy simples y bien explicados (en inglés, eso sí)

http://smxi.org/docs/smxi-manual.htm
http://smxi.org/docs/sgfxi-manual.htm



http://gnulinuxvagos.es/topic/1591-linux-liquorix-dando-una-vuelta-de-tuerca-a-nuestra-distribución-debian/



Discos de estado sólido (SSD)
 

 

Aunque durante la instalación de Debian, el instalador será capaz de lidiar con cualquier dispositivo de almacenamiento que tengamos en el equipo, no está de más afinar un poco las configuraciones del sistema para sacarle mayor partido a este nueva tecnología y alargar su vida útil tanto como sea posible.

Planificador de baja latencia

Cambiar el planificador de entrada/salida por deadline suele ser una buena opción a la hora de optimizar el rendimiento de un disco SSD.

Sysfs

Para hacer esto sin afectar a los discos duros convencionales y otros dispositivos de almacenamiento que pudiéramos tener en el equipo, fijamos la unidad a la que queremos asignar el planificador en /etc/sysfs.con.

Cita

echo "block/sdX/queue/scheduler = deadline" >> /etc/sysfs.conf

sustituyendo X por la letra de la unidad a la que queremos asignar el planificador deadline.


Udev

otra opción es valernos de udev, asignando el planificador a todas aquellas unidades que no tienen partes móviles (rotational=0)

Creamos una nueva regla para udev /etc/udev/rules.d/60-ssd-scheduler.rules con el siguiente contenido

Cita

ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"


Trimming

Hay diversas maneras de llevar a cabo el proceso:

Fstab

Mediante la opción discard, podemos configurar nuestro disco SSD para que haga uso de TRIM a través del fichero /etc/fstab
Basta con añadir esta opción a las que aparecen en la línea correspondiente al disco de estado sólido:

Cita

/dev/sda / ext4 discard,errors=remount-ro 0 1


Otras opciones que podemos añadir son

  • nodiratime
    • No actualizar tiempo de acceso a directorios
  • noatime
    • No actualizar tiempo de acceso a ficheros
Cita

/dev/sda / ext4 discard,noatime,nodiratime,errors=remount-ro 0 1


Esta solución es sencilla, rápida y efectiva, pero tiene un gran inconveniente y es que no sólo se hará uso de TRIM sino que se llevará a cabo el proceso todas y cada una de las veces que se trabaje con el disco duro, lo que significa mayor trabajo, que a su vez implica menor rendimiento.


Systemd

Mucho más efectivo que el método anterior, la ejecución programada de fstrim nos permite disfrutar de los beneficios de éste, sin apenas ningún efecto en lo que a rendimiento se refiere.

Vamos a aprovechar los scripts de ejemplo que nos provee la documentación de Systemd para programar la tarea de fstrim


cp /usr/share/doc/util-linux/examples/fstrim.{service,timer} /etc/systemd/system

Y, por supuesto, lo habilitamos


systemctl enable fstrim.timer

Particiones encriptadas

Existe un caso especial y es cuando las particiones están encriptadas en el que tendremos que trabajar un poco más. En este caso tendremos que hacer unas cuantas cosas más.

En primer lugar añadiremos dos opciones al grub modificando el archivo de configuración /etc/default/grub

En la línea GRUB_CMDLINE_LINUX=" añadiremos lo siguiente

Cita

GRUB_CMDLINE_LINUX="allow-discards root_trim=yes"


Guardamos los cambios y actualizamos el grub mediante el comando


update-grub

Ahora vamos a editar el archivo de configuración /etc/crypttab y al igual que hicimos antes con el fstab, añadimos la opción discard a la línea que corresponda a nuestra unidad SSD

Cita

#<target name> <source device> <key file> <options>
sda1_crypt /dev/sda1 none luks,discard


Así mismo, debemos habilitar TRIM en la configuración de LVM a través del archivo /etc/lvm/lvm.conf mediante la opción issue_discards dentro de "devices {}"

Cita

# [...]
devices {
# [...]
issue_discards = 1
# [...]
}
# [...]


Tras cambiar las opciones de los sistemas de ficheros, también es conveniente actualizar las imágenes de arranque initramfs


update-initramfs -u -k all

Para indagar un poco más, en este mismo foro tenemos un tema específico para los SSD
http://gnulinuxvagos.es/topic/2436-discos-de-estado-sólido-ssd-en-gnulinux-optimización-y-consideraciones-generales/



Montar temporales en la memoria RAM (TMPFS)
 

 

Es una buena idea hacer uso de la memoria RAM para tareas repetitivas y archivos prescindibles que se van a usar de manera recurrente para no hacer trabajar al disco duro o SSD más de la cuenta, prolongando así su vida útil.

El proceso es bastante sencillo, sólo tendremos que definir las opciones de montaje de los temporales en el archivo /etc/fstab y tmpfs hará el resto

Cita

tmpfs /tmp tmpfs defaults,noatime,nodiratime,mode=1777 0 0


Los directorios susceptibles de ser montados en RAM serían:

  • /tmp
  • /var/tmp
  • /var/cache

En algunos sitios recomiendan también montar /var/log, pero esto tiene el inconveniente y es que perderemos todos los logs del sistema al apagar el equipo.

Para indagar un poco más, en este mismo foro tenemos un tema específico para TMPFS
http://gnulinuxvagos.es/topic/1154-tmpfs-montando-los-temporales-en-ram/



Limitando el uso de la memoria Swap
 

 

A día de hoy, podemos perfectamente prescindir de la memoria de intercambio y con un SSD no sólo es así por la velocidad y prestaciones de éste, sino porque no nos interesa que se esté haciendo uso del disco como swap porque estaríamos reduciendo su vida útil.

Para esto vamos a editar el archivo /etc/sysctl.conf centrándonos en tres cosas

  • Reducir el porcentaje de uso swap/ram al 1%
  • Disminuir valor de cache de bloques de datos de 100 a 50
  • Modificar la frecuencia de acceso al disco de 500 a 1500

Lo que se conseguiría añadiendo al final de dicho archivo de configuración las siguientes opciones
 


vm.swappiness=1
vm.vfs_cache_pressure=50
vm.dirty_writeback_centisecs=1500



Optimizar Systemd
 

 

A partir de Debian 8.0 (Jessie), la distribución universal ha pasado a utilizar el sistema de arranque Sytemd.

Si bien está muy bien integrado y realmente no haría falta tocar nada para que todo funcione a las mil maravillas, siempre se puede ir un poco más allá para aprovechar todas sus bondades y ganar algo de rendimiento

Habilitando/deshabilitando servicios
 

 

Aunque no era mi intención en cuanto a métodos de optimización empezaré por lo más obvio y que seguramente todos tenemos ahora mismo rondando por nuestra cabeza, que viene siendo deshabilitar directamente algunos servicios que no necesitamos.

Esto es bastante sencillo, simplemente elegiremos aquellos demonios de la lista que nos ha devuelto el systemd-analyze que no queremos que sean cargados y, mediante el uso de systemctl, nos desharemos de ellos

Cita

systemctl disable demonio.service


Si, por el contrario, quisiéramos realizar el proceso inverso, habilitar un servicio

Cita

systemctl enable demonio.service



Analizar el tiempo de arranque
 

 

Las órdenes que utilizaremos para realizar los análisis son todas las relacionadas con:



systemd-analyze

Para obtener una lista detallada de todos los servicios que se cargan al iniciar el sistema y su impacto en el tiempo total de arranque:



systemd-analyze blame



Montar/chequear particiones "secundarias" tras el arranque
 

 

Una de las cosas que más puede demorar el arranque son las tareas llevadas a cabo por fsck y mount.

Con el objetivo de aligerar estos procesos podemos modificar nuestro fstab para que aquellas particiones secundarias y/o irrelevantes durante el arranque sean montadas/revisadas sólo cuando accedamos por primera vez a ellas después de arrancar el equipo.
Particiones como /home o algunas que hemos creado para temas concretos, discos secundarios, etc. Especialmente aquellas que no es seguro que vayamos a utilizar y, por tanto, no vale la pena estar cargándolas y revisándolas continuamente cada vez que arrancamos el equipo.

Las opciones a utilizar son

  • noauto
    • No montar la partición de manera automática
  • x-systemd.automount
    • No montar ni chequear durante el arranque, sólo bajo demanda

Ejemplo

Cita

/dev/sda2 /home ext4 discard,noatime,nodiratime,noauto,x-systemd.automount 0 2


http://gnulinuxvagos.es/topic/2122-optimizando-el-tiempo-y-servicios-de-arranque-en-sytemd/

 

 



Paquetes y procedimientos para optimizar el rendimiento
 

 

Preload
 

 

Disponible en repositorios, preload analizará las funciones y demonios más utilizados para cargarlos antes de necesitarlos, lo que redundará en una respuesta más rápida del sistema en general.



aptitude install preload

Tras la instalación, habilitamos el servicio y lo ponemos en marcha:



aptitude install preload
systemctl start preload.service
systemctl enable preload.service



Prelink
 

 

Disponible en respositorios, nos permitirá agilizar no sólo el arranque sino la ejecución de muchas aplicaciones al realizar enlaces entre binarios y librerías o más bien "pre-enlaces", acelerando la ejecución de las mismas.



aptitude install prelink

Para habilitarlo y programar su ejecución, Editamos el archivo /etc/default/prelink cambiando la línea:

Cita

PRELINKING=no


Por

Cita

PRELINKING=yes


Más abajo tendremos las opciones de chequeo:

Cita

PRELINK_FULL_TIME_INTERVAL=


Y de ejecución forzada en caso de no haberse encontrado ningún cambio en las librerías del sistema

Cita

PRELINK_NONRPM_CHECK_INTERVAL=


El número que acompaña a dichas opciones representa los días que pasarán entre un chequeo/ejecución y la siguiente



UPower
 

 

UPower es un demonio, una API y un conjunto de herramientas.

La administración realizada por este servicio consigue que durante el arranque las unidades se inicien y sincronicen con DBus de manera más eficiente, redundando en un arranque más rápido.



aptitude install upower

Aunque se puede configurar de multitud de maneras diferentes según lo que necesitemos, en principio la configuración básica es más que suficiente, basta con instalar el paquete upower y habilitar el servicio



systemctl enable upower



(TLP)
 

 

TLP es una herramienta avanzada para configuración de la administración de energía en sistemas GNU/Linux.
Con ella podremos exprimir aún más las baterías de nuestros equipos portátiles y/o disminuir el consumo.
 



aptitude install tlp tlp-rdw tp-smapi-dkms acpi-call-dkms 

http://gnulinuxvagos.es/topic/1260-tlp-mejorando-el-consumo-de-energía-de-nuestra-distribución/



Apt-Build
 

 

Apt-build nos brinda la capacidad de compilar fácilmente los paquetes de los repositorios para ajustarlos a las especificaciones de nuestro equipo y, de esa manera, aumentar el rendimiento.

Permite compilar cada paquete manteniendo las reglas y dependencias del sistema. Al hacerlo no vamos a perder la habilidad de administrar el programa a través de apt, ya que el propio apt-build se encarga de crear el paquete .deb para luego instalarlo como si se tratara de un paquete descargado directamente desde repositorios.

Lo primero que debemos hacer es asegurarnos de que tenemos los repositorios "source" (deb-src) en nuestro /etc/apt/sources.list o cualquier repositorio adicional que hayamos añadido en /etc/apt/sources.lis.d

Cita

## Debian Testing
deb http://ftp.es.debian.org/debian/ testing main
deb-src http://ftp.es.debian.org/debian/ testing main

## Actualizaciones de seguridad
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main


Instalar y configurar



aptitude install apt-build

Mientras se instala nos preguntará qué nivel de optimización nos interesa:

 

  • El nivel agresivo no es muy recomendado porque puede dar algunos problemas.
  • El nivel escaso, personalmente no lo aconsejo ¿Que gracia tiene hacer toda esta locura para obtener un rendimiento "escaso"? :P
  • Esto deja como nivel recomendado, el nivel medio

Lo siguiente que pregunta es el modelo de procesador que tenemos en el equipo, de esto depende el resultado de la optimización.
En caso de duda, podemos ver toda la información de nuestra cpu con el comando:



lscpu

Compilando paquetes

Lo primero es actualizar la lista de sources



apt-build update

Para compilar e instalar un paquete



apt-build install paquete

Para compilar e instalar un paquete que ya está instalado



apt-build install --reinstall paquete

Para eliminar un paquete



apt-build remove paquete

Limpiar después de compilar/instalar



apt-build clean-sources; apt-build clean-build

Para más información, en el foro contamos con un tema íntegro sobre apt-build
http://gnulinuxvagos.es/topic/20-compilar-mediante-apt-build/



Autologin sin necesidad de gestor de acceso (Login Manager) y lanzar el entorno gráfico
 

 

Este método es útil para equipos con sólo un usuario que busca tener el equipo listo para usar sin perder el tiempo en tener que loguearse al encender el equipo.
Esto se podría conseguir tambien con cualquier login manager, pero para aquellos que quieran más allá, porque ¿Para qué tener un Login manager si lo que quiero es no tener que loguearme?¿Verdad?.


SystemD
 

 

Lo primero a tener en cuenta en este caso, es que se trabaja con agetty, por lo que de una forma muy sencilla y gracias a Systemd podemos conseguir lel autologin en dos pasos.

Hay que empezar creando el archivo de configuración correspondiente en la ruta /etc/systemd/system/getty@tty1.service.d/ (tendremos que crear la varpeta si no existe)

Noten que podemos hacer autologin en la tty que queramos simplemente cambiando el nombre de la carpeta o iniciar con distintos usuarios en varias terminales virtuales a la vez creando diferentes carpetas con distintos archivos de configuración en ellas.

Dentro de este directorio, en el archivo autologin.conf añadiremos lo siguiente:
 

Cita

[service]
ExecStart=
ExecStart=-/sbin/agetty --autologin Usuario --noclear %I 38400 linux


Siendo Usuario aquel con quien queremos iniciar automáticamente el equipoque va a iniciar sesion automáticamente.


Así de sencillo. Ya tenemos configurado el autologin en SystemD



Lanzar el entorno gráfico automáticamente
 

 

Una vez configurado el autologin, para arrancar el entorno gráfico desde consola utilizaríamos la orden startx, pero como queremos que esto también se haga de manera automática, haremos lo siguiente::

Editamos, como usuario, el archivo oculto .profile del home del usuario con el que hacemos autologin


Debemos incluir el siguiente código debajo de la línea umask 022
 




if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
startx
fi

NOTA La terminal tty1 que utilizamos para el autologin y para ejecutar startx tiene que ser la mismo, de lo contrario no funcionará

Esto hará que desde que cuando se loguee un usuario en la terminal tty1, se autoejecute un startx
El resultado después de modificar el archivo sería algo así:
 

 

 





# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

if [ -z "$DISPLAY" ] &&  [ $(tty) == /dev/tty1 ]; then
startx
fi

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then

    PATH="$HOME/bin:$PATH"
fi

 

 

 



Modificar un LiveCD de Debian
 

 

Muchos nos hemos planteado hacer un disco de instalación, a la vez Live, que incluya nuestras personalizaciones realizadas a una Debian para compartirla, tenerla como disco de instalación personal o incluso como derivada propia

Extraer los archivos de la imagen ISO

 

En primer lugar debemos montar la imagen y extraer su contenido. EN el ejemplo utilizaré el punto de montaje /media/iso

Cita

mkdir /media/iso
mount -o loop imagen.iso /media/iso


Extraemos el contenido en otra carpeta que llamaremos extract-cd (aunque pueden nombrarla como quieran), exceptuando el archivo .squashfs (el que contiene el sistema)

Cita

mkdir extract-cd
rsync --exclude=live/filesystem.squashfs -a /media/iso/{*,.disk} extract-cd


Ahora nos centramos en el contenido de filesystem.squashfs, para eso necesitamos primero squashfs-tools



aptitude install squashfs-tools

Descomprimimos el contenido y cambiamos el nombre del directorio resultante por chroot (aunque pueden nombrarlo como quieran)



unsquashfs /media/iso/live/filesystem.squashfs
mv squashfs-root chroot

Ya tenemos todo el contenido de la distribución "expuesto" y listo para modificar lo que queramos.



Jaula Chroot
 

 

Una jaula o entorno Chroot define una nueva raíz del sistema a modo de entorno virtual en el que los procesos e hijos invocados en la jaula no pueden acceder a ningún fichero que esté por encima de la raíz definida por chroot.
Al contrario que la virtualización o emulación, se aprovecha al 100% la capacidad del equipo.

No obstante, también debemos montar /dev, /dev/pts, /sys, /proc, /var/lib/dbus así como incluir algunos ficheros de configuración del sistema anfitrión para poder empezar a trabajar dentro e la jaula.



mount --bind /dev chroot/dev
mount --bind /dev/pts chroot/dev/pts
mount --bind /sys chroot/sys
mount -t proc none chroot/proc
mount -o bind /var/lib/dbus chroot/var/lib/dbus

Para poder utilizar la conexión de red del sistema también incluiremos /etc/hosts y /etc/resolv.conf



cp /etc/hosts chroot/etc/hosts
cp /etc/resolv.conf chroot/etc/resolv.conf


Montamos el entorno de chroot



chroot chroot

NOTA Si estamos creando un live de 32 bits desde un sistema de 64 bits debemos ejecutar el chroot anteponiendo linux32, de lo contrario tendremos problemas, pues a pesar de que el entorno chroot es ajeno al sistema, a efectos prácticos porta el mismo kernel que el anfitrión:

 

 

 

 

 

 

 

 

 



linux32 chroot chroot

Una vez dentro obtendremos automáticamente privilegios de root, así que tendremos control absoluto sobre la distro.

Sólo queda definir el idioma (la primera vez) y empezar a trabajar en el sistema enjaulado



export HOME=/root export LC_ALL=C

Aunque podemos ser más específicos



export HOME=/root export LC_ALL=es_ES.UTF-8

Una vez instalado el servidor gráfico, aunque no es lo más aconsejable, podríamos levantar las X en otra terminal virtual distinta a la de nuestro sistema base y seguir trabajando en modo gráfico.

Cita

startx -- :1 ttyX


Siendo X una tty diferente a la que estamos utilizando

Ejemplo: tty5



startx -- :1 tty5

Dependiendo del gestor del login manager instalado y si NO hemos iniciado las Xs en nuestro sistema anfitrión, también podríamos optar por iniciarlo como un sistema convencional:

Cita

service loginmanager start


Siendo loginmanager, gdm3, kdm, lightdm, slim, etc


Una vez hayamos realizado todos los cambios o construido nuestro sistema como queríamos, hacemos una limpieza y desmontamos todas las unidades del entorno chroot



aptitude clean
rm -rf ~/.bash_history /tmp/* /var/tmp/* /var/lib/dbus/* /var/log/* /var/lib/apt/lists/*
rm /etc/resolv.conf
exit

Ahora ya estamos fuera del entorno chroot, empezamos a desmontar:



umount chroot/dev/pts
umount chroot/dev
umount chroot/sys
umount chroot/proc
umount chroot/var/lib/dbus



Empaquetar la distribución Live
 

 

El empaquetado consta de dos partes. La primera es para empaquetar el sistema creado dentro del archivo filesystem.squashfs, el segundo es para incluir éste último, junto a los archivos de isolinux, dentro de la imagen .iso propiamente dicha.

Utilizamos mksquashfs para comprimir el directorio chroot



mksquashfs chroot filesystem.squashfs

Tardará un buen rato en comprimirla. Una vez termine sólo tendremos que meterla dentro de la carpeta previamente creada extract-cd, en el subdirectorio live.

En este mismo subdirectorio incluiremos la imagen del kernel y la imagen de arranque initrd



mv filesystem.squashfs extract-cd/live
cp chroot/boot/vmlinuz* extract-cd/live/vmlinuz
cp chroot/boot/initrd.img* extract-cd/live/initrd.img


Ahora nos movemos a la carpeta extract-cd y recalculamos la suma md5



cd extract-cd
rm md5sum.txt
find . -type f -print0 | xargs -0 md5sum | grep -v "./md5sum.txt" > md5sum.txt

Ya sólo nos quedaría crear de nuevo la imagen .iso, para lo que necesitamos genisoimage



aptitude install genisoimage
cd extract-cd
Cita

genisoimage -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../Nombre-de-la-imagen.iso .


Para profundizar más en el asunto, en este foro tenemos un tema específico sobre modificar y crerar LiveCDs de Debian
http://gnulinuxvagos.es/topic/21-crearmodificar-un-livecd-de-debian-y-no-morir-en-el-intento/


 

18r4xoa.jpg

Compartir este post


Enlace al post
Compartir en otros sitios

Una pregunta:

 

Yo estoy usando el repositorio sid

 

 

¿ahora que tengo que cambiarlos por estos dos?

## Debian Testing
deb http://ftp.es.debian.org/debian/ stretch main
deb-src http://ftp.es.debian.org/debian/ stretch main

## Actualizaciones de seguridad
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main

Compartir este post


Enlace al post
Compartir en otros sitios
Y depende de lo que quieras. La guía está enfocada a Testing. Si prefieres SID, quédate en SID. Si no, pues apunta a la rama en la que quieras estar :P

 

Parecemos monos... de rama en rama... :D

 

 

¿pero la SID sigue recibiendo actualizaciones, o ya no?

Compartir este post


Enlace al post
Compartir en otros sitios

Estoy tan acostumbrado a solo hacer clic derecho e instalar que me olvide ese comando. Ahí lo hice y me desempaqueto y configuró pero no me salio las opciones para la red. (Saque el moden y lo volví a enchufar) deberia reiniciar la máquina?

Compartir este post


Enlace al post
Compartir en otros sitios

Instale debían 8 con xfce cd1 sin internet. La única forma de tener internet es con el usb wifi. Para que funcione tengo que instalar los drivers atheros (WiFi tp-link tl-wn722n) ya hice lo que me dijiste dpkg -i firmware..... Y lo desempaqueto y configuró, pero no me ve las redes o no se donde verla.

Compartir este post


Enlace al post
Compartir en otros sitios

Bus 001 divece 003: id 0cf3:9271 atheros communications, inc. Ar9271 802.11n

 

Root@pucara:/home/usuario# cat /etc/network/interfaces
Cat: /etc/network/interfaces: no existe el fichero i directorio
Root@pucara: /home/usuario# lsmod | gred ath
Bash: gred: no se encontró orden

 

Entre a cat interfaces y me sale:
#this file describes the network interfaces available on you system and how to activate them. For more information, see interfaces (5)

 

Source /etc/network/interfaces.d/*
#the loopback network interfaces
Auto lo
Iface lo ibet loopblak

Compartir este post


Enlace al post
Compartir en otros sitios

Bus 001 divece 003: id 0cf3:9271 atheros communications, inc. Ar9271 802.11n

 

Root@pucara:/home/usuario# cat /etc/network/interfaces

Cat: /etc/network/interfaces: no existe el fichero i directorio

Root@pucara: /home/usuario# lsmod | gred ath

Bash: gred: no se encontró orden

 

Es

lsmod | grep ath

no

lsmod | gred ath

Saludos.

Compartir este post


Enlace al post
Compartir en otros sitios

He tenido que reinstalar todo en el pc del trabajo porque el disco duro pasó a mejor vida. Y ayer me trajeron otro, un Seagate con mucha más capacidad (que no necesito, pero que canibalizaré cuando caiga).

 

Volví a instalar Xfce y, en vez de hacer la instalación del sistema y dejar el entorno para el final, confié en el CD que prepara Debian para estos casos. Mi pc monta una nvidia que, según nvidia-detects, tanto daba instalar el driver 340 que el legacy. Elegí el más moderno porque ya lo conozco y me deja apagar el pc. Nouveau está muy bien pero si está instalado no finaliza la secuencia de apagado. :icon_ouch:

Después de instalar todos los paquetes que quiso, fui por nouveau. Aptitude me advirtió de que esa acción eliminaría tooooodo el entorno xfce que había instalado hasta ahora y todo el escritorio Debian, además de esas cosillas de xorg, a saber: task-desktop, task-xfce-desktop, xserver-xorg-video-all. La alternativa era dejar las cosas como estaban. Que no era alternativa para mí.  :(
 
Desinstalé todo (el último paquete que retiraba era nouveau) e instalé el driver de nvidia. Y detrás el resto, claro. Eliminar nouveau se llevó por delante todo esto:
 

coinor-libcbc3{u} coinor-libcgl1{u} coinor-libclp1{u} coinor-libcoinmp1{u} coinor-libcoinutils3{u}
coinor-libosi1{u} crda{u} dns-root-data{u} dnsmasq-base{u} espeak-data{u} exfalso{u} fonts-dejavu{u}
fonts-freefont-ttf{u} fonts-sil-gentium{u} fonts-sil-gentium-basic{u} gimp{u} gimp-data{u} gir1.2-atspi-2.0{u}
gir1.2-gst-plugins-base-1.0{u} gir1.2-gstreamer-1.0{u} gir1.2-gtksource-3.0{u} gir1.2-keybinder-3.0{u}
gir1.2-wnck-3.0{u} gnome-accessibility-themes{u} gnome-orca{u} gnome-themes-standard{u}
gnome-themes-standard-data{u} gstreamer1.0-plugins-good{u} gstreamer1.0-plugins-ugly{u} gstreamer1.0-x{u}
gtk2-engines-pixbuf{u} hyphen-en-us{u} iputils-arping{u} iw{u} liba52-0.7.4{u} libaa1{u} libamd2.3.1{u}
libao-common{u} libao4{u} libass5{u} libatk-adaptor{u} libaudio2{u} libavc1394-0{u} libavformat56{u}
libbabl-0.1-0{u} libbasicusageenvironment0{u} libbluetooth3{u} libboost-system1.55.0{u} libbrlapi0.6{u}
libcaca0{u} libcamd2.3.1{u} libccolamd2.8.0{u} libcddb2{u} libcdio13{u} libcdr-0.1-1{u} libcholmod2.1.2{u}
libchromaprint0{u} libcolamd2.8.0{u} libdc1394-22{u} libdca0{u} libdirectfb-1.2-9{u} libdiscid0{u} libdotconf0{u}
libdv4{u} libdvbpsi9{u} libdvdnav4{u} libdvdread4{u} libebml4{u} libenca0{u} libespeak1{u} libetonyek-0.1-1{u}
libfaad2{u} libflite1{u} libfreehand-0.1-1{u} libfreerdp-cache1.1{u} libfreerdp-client1.1{u}
libfreerdp-codec1.1{u} libfreerdp-common1.1.0{u} libfreerdp-core1.1{u} libfreerdp-crypto1.1{u}
libfreerdp-gdi1.1{u} libfreerdp-locale1.1{u} libfreerdp-primitives1.1{u} libfreerdp-utils1.1{u} libgail-common{u}
libgail18{u} libgegl-0.2-0{u} libgimp2.0{u} libgme0{u} libgpod-common{u} libgpod4{u} libgroupsock4{u}
libgtksourceview-3.0-1{u} libgtksourceview-3.0-common{u} libiec61883-0{u} libilmbase6{u} libiso9660-8{u}
libjs-jquery{u} libjs-sphinxdoc{u} libjs-underscore{u} libkate1{u} libkeybinder-3.0-0{u}
liblightdm-gobject-1-0{u} liblircclient0{u} liblivemedia42{u} liblouis-data{u} liblouis2{u} liblua5.2-0{u}
libmad0{u} libmatroska6{u} libmbim-glib4{u} libmbim-proxy{u} libmm-glib0{u} libmng1{u} libmodplug1{u}
libmpcdec6{u} libmpeg2-4{u} libmspub-0.1-1{u} libmtp-common{u} libmtp-runtime{u} libmtp9{u} libndp0{u}
libnetfilter-conntrack3{u} libnl-3-200{u} libnl-genl-3-200{u} libnl-route-3-200{u} libnm-glib-vpn1{u}
libnm-glib4{u} libnm-gtk-common{u} libnm-gtk0{u} libnm-util2{u} libopenexr6{u} libopenraw1{u} liborcus-0.8-0{u}
libportaudio2{u} libpostproc53{u} libqmi-glib1{u} libqmi-proxy{u} libqt4-dbus{u} libqt4-xml{u} libqtcore4{u}
libqtdbus4{u} libqtgui4{u} libraw1394-11{u} libreoffice{u} libreoffice-avmedia-backend-gstreamer{u}
libreoffice-calc{u} libreoffice-draw{u} libreoffice-gtk{u} libreoffice-help-en-us{u} libreoffice-impress{u}
libreoffice-report-builder-bin{u} libresid-builder0c2a{u} libsdl-image1.2{u} libsdl1.2debian{u} libsgutils2-2{u}
libshine3{u} libshout3{u} libsidplay1{u} libsidplay2{u} libsonic0{u} libspeechd2{u} libswscale3{u} libsysfs2{u}
libteamdctl0{u} libtidy-0.99-0{u} libtwolame0{u} libumfpack5.6.2{u} libupnp6{u} libusageenvironment2{u}
libva-drm1{u} libva-x11-1{u} libvcdinfo0{u} libvisio-0.1-1{u} libvlc5{u} libvlccore8{u} libvncclient0{u}
libwavpack1{u} libwinpr-crt0.1{u} libwinpr-crypto0.1{u} libwinpr-dsparse0.1{u} libwinpr-environment0.1{u}
libwinpr-file0.1{u} libwinpr-handle0.1{u} libwinpr-heap0.1{u} libwinpr-input0.1{u} libwinpr-interlocked0.1{u}
libwinpr-library0.1{u} libwinpr-path0.1{u} libwinpr-pool0.1{u} libwinpr-registry0.1{u} libwinpr-rpc0.1{u}
libwinpr-sspi0.1{u} libwinpr-synch0.1{u} libwinpr-sysinfo0.1{u} libwinpr-thread0.1{u} libwinpr-utils0.1{u}
libwmf0.2-7{u} libwnck-3-0{u} libwnck-3-common{u} libx264-142{u} libxcb-composite0{u} libxcb-keysyms1{u}
libxcb-randr0{u} libxcb-xv0{u} lightdm{u} lightdm-gtk-greeter{u} lp-solve{u} media-player-info{u}
mobile-broadband-provider-info{u} modemmanager{u} mythes-en-us{u} network-manager{u} network-manager-gnome{u}
python-cddb{u} python-feedparser{u} python-musicbrainz2{u} python-mutagen{u} python-pyinotify{u}
python-utidylib{u} python3-brlapi{u} python3-cairo{u} python3-gi{u} python3-louis{u} python3-pyatspi{u}
python3-speechd{u} python3-xdg{u} qdbus{u} qt-at-spi{u} qtchooser{u} qtcore4-l10n{u} quodlibet{u}
speech-dispatcher{u} speech-dispatcher-audio-plugins{u} task-desktop{a} task-xfce-desktop{a} vlc{u} vlc-data{u}
vlc-nox{u} vlc-plugin-notify{u} wireless-regdb{u} wpasupplicant{u} xbrlapi{u} xsane{u} xsane-common{u}
xserver-xorg-video-all{a} xserver-xorg-video-nouveau{p}




Debian me lo ha dejado muy clarito: si a tu pc no le sienta bien nouveau instala el entorno gráfico del escritorio al final. ¿Y cómo averiguo si le sienta bien o no? Tardes de sano entretenimiento y diversión detrás de la terminal, un placer irremediable.  :D

Que conste que no es una crítica, que a mí no me sacan de Debian de ninguna manera  :tongue:

Muchas gracias por la guía. Sin ella sería más difícil  :ok:

Compartir este post


Enlace al post
Compartir en otros sitios

¿Y no es más fácil simplemente poniéndolo en la lista negra? :sweat:

:blink:

 

Poz zí.

 

Pero cuando sientes el aliento del cliente en el cogote no te acuerdas de nada... solo de acabar cuanto antes.

 

Y estas fechas (para mí) no ayudan nada a estar sereno. :D 

Compartir este post


Enlace al post
Compartir en otros sitios

 

¿Y no es más fácil simplemente poniéndolo en la lista negra? :sweat:

:blink:

 

Poz zí.

 

Pero cuando sientes el aliento del cliente en el cogote no te acuerdas de nada... solo de acabar cuanto antes.

 

Y estas fechas (para mí) no ayudan nada a estar sereno. :D

 

cliente o looser??? creo que debes de practicar el bofhzen, como yo... http://mundowdg.com/blog/, este hombre es mi idolo! espero que te guste y te sirva tanto como a mi!!

salu2

Compartir este post


Enlace al post
Compartir en otros sitios

 

 

¿Y no es más fácil simplemente poniéndolo en la lista negra? :sweat:

:blink:

 

Poz zí.

 

Pero cuando sientes el aliento del cliente en el cogote no te acuerdas de nada... solo de acabar cuanto antes.

 

Y estas fechas (para mí) no ayudan nada a estar sereno. :D

 

cliente o looser??? creo que debes de practicar el bofhzen, como yo... http://mundowdg.com/blog/, este hombre es mi idolo! espero que te guste y te sirva tanto como a mi!!

salu2

 

 

jajajaja

 

El luser soy yo...  jajaja

 

Tengo mis chuletas,enlaces, y eso..., pero las burradas me las hago yo solito.

 

Gracias por la recomendación. A ver si escarmiento por cagaprisas   :jojojo:

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!

Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.

Iniciar Sesión

×