martes, 29 de septiembre de 2015

Recargar .bashrc sin cerrar sesión


He estado configurando algunas alias en mi .bashrc y me ha saltado la duda de como poder utilizarlos sin cerrar sesión. Basta con escribir el comando:
source ~/.bashrc

sábado, 28 de febrero de 2015

Desinstalar kernels antiguos


Al actualizar un servidor con Debian 7 me salió el siguiente error:
dpkg: error al procesar /var/cache/apt/archives/linux-image-3.2.0-4-686-pae_3.2.65-1+deb7u2_i386.deb (--unpack):
 no se pudieron copiar los datos extraídos de './lib/modules/3.2.0-4-686-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko' a '/lib/modules/3.2.0-4-686-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko.dpkg-new': fallo al escribir (No queda espacio en el dispositivo)
dpkg-deb: error: el subproceso copiado fue terminado por la señal (Tubería rota)
Esto es debido a que no tiene espacio en la partición /boot por lo procedí a desinstalar los kernels antiguos. Lo primero es ver cuales tenemos instalados, para ello:
dpkg -l | grep linux-image
Nos muestra la siguiente lista:
ii  linux-image-2.6-686                  3.2+46                           i386         Linux for modern PCs (dummy package)
ii  linux-image-2.6.32-5-686             2.6.32-48squeeze6                i386         Linux 2.6.32 for modern PCs
ii  linux-image-3.2.0-4-686-pae          3.2.65-1+deb7u1                  i386         Linux 3.2 for modern PCs
ii  linux-image-686-pae                  3.2+46                           i386         Linux for modern PCs (meta-package)
Y ahora desinstala las versiones viejas:
sudo apt-get purge linux-image-2.6.32-5-686

domingo, 8 de febrero de 2015

Utiliza la verificación en dos pasos para iniciar sesión en Ubuntu



La verificación en dos pasos para el que no lo sepa, es un sistema para incrementar la seguridad en nuestras cuentas. Después de introducir la contraseña de la cuenta, se nos pedirá otro código generado. Hay varias formas de conseguir este codigo, en este tutorial explicaré como generarlo con la aplicación para Android Google Authenticator.

Primero instala PAM Google Authenticator:
sudo apt-get install libpam-google-authenticator

Instala Google Authenticator en tu dispositivo Android:
Instalar desde Play Store

Crea las claves de autenticación:
google-authenticator
Escribe 'y' cuando lo pida.


Cuando muestre el código QR, abre Google Authenticator en Android y ve a «Configurar nueva cuenta», «Escanear código de barras» y enfoca el código.

Debajo del código aparecerán unos código de emergencia para que en caso de que no puedas utilizar la aplicación Google Authenticator puedas iniciar sesión.


Activa la autenticación en dos pasos:
sudo gedit /etc/pam.d/lightdm
E introduce al final del archivo:
auth required pam_google_authenticator.so nullok

sábado, 31 de enero de 2015

Solucion error: key XXXXXX could not be looked up remotely



Hace poco me apareció este error en Antergos (basado en Archlinux) al realizar la actualización del sistema:

error: key "CDBD406AA1AA7A1D" could not be looked up remotely 
error: error al realizar la transacción (paquete no válido o dañado (firma PGP)) Ocurrieron errores, no se actualizaron paquetes

 El fallo es debido a un problema con una firma, así que ni corto ni perezoso, eliminé todas las firmas y las volví a generar. Pasos a seguir:

Elimina las firmas actuales:
sudo rm -rf /etc/pacman.d/gnupg/ 
Inicializa el archivo de claves, este paso puede tardar un rato:
sudo pacman-key --init 
Verifica las claves maestras:
sudo pacman-key --populate archlinux antergos

miércoles, 21 de enero de 2015

Dudle, la alternativa de software libre a Doodle


Dudle es una herramienta para organizar horarios entre varias personas y realizar encuestas. Podemos dar unas fechas y horas y dejar que los usuarios elijan las fechas que les vienen bien, también permite realizar encuestas en las que das varias posiblidades y los usuarios votan las que más les gusten. Dudle es Sotware Libre con licencia AGPL v3.


Instalación en Debian, Ubuntu y derivados (yo he seguidos estos pasos en un Debian 6):

Instala las dependencias necesarias:
sudo apt-get install bzr git libgettext-ruby1.8 potool make libgettext-rails-ruby
Sitúate en la carpeta en la que quieras instalarlo, yo lo haré en /var/www:
cd /var/www
Descarga dudle:
sudo bzr branch https://dudle.inf.tu-dresden.de/ dudle
Utilizaremos el archivo de configuración por defecto, así que copiamos el de ejemplo:
cd dudle && sudo cp config_sample.rb config.rb
Concede permisos al usuario Apache en la carpeta de dudle:
chown -R www-data:www-data /var/www/dudle
Activa el modulo de apache auth_digest y reinicia apache:
sudo a2enmod auth_digest && sudo service apache2 restart
Para generar los archivos de los idiomas:
make
Elige un tema para dudle de aquí, yo he elegido TUD:
sudo mkdir css && cd css && sudo wget https://dudle.inf.tu-dresden.de/css/TUD.css && cd ..

Con esto ya podrías acceder desde http://localhost/dudle, si como yo, quieres crear un subdominio en vuestro servidor para dudle sigue estos pasos:

Para el siguiente ejemplo crearé el subdominio sub en ejemplo.com. Crea el archivo subdominio.ejemplo.com en /etc/apache2/sites-available:
touch  /etc/apache2/sites-available/sub.ejemplo.com
Y añade lo siguiente, cambiando lo que está en negrita por tu configuración:

<VirtualHost *:80>
        ServerName      sub.ejemplo.com
        ServerAlias     *.
sub.ejemplo.com        
        ServerAdmin     soporte@ejemplo.com
        DocumentRoot    /var/www/dudle/

        #DirectoryIndex  index.cgi

        ErrorLog        /var/log/apache2/sub.ejemplo.com-error.log
        CustomLog       /var/log/apache2/
sub.ejemplo.com-access.log combined

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>

        <Directory /var/www/dudle/>
                Options +ExecCGI Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
</VirtualHost>
Activa el sitio y reinicia apache:
sudo a2ensite sub.ejemplo.com && sudo a2enmod rewrite && sudo service apache2 reload
Ahora ya deberías de poner acceder desde sub.ejemplo.com.

Demo: dudle