Sistema de paquetes en Slackware

Este va a ser el primer artículo sobre Slack (sin contar con la presentación).

Lo primero que me llamó la atención de Slack era el sistema de instalación de programas o paquetes, mientras en Ubuntu o Debian, se basa en el famoso apt-get, en Slack tenemos   installpkg “programa”, lo malo de este sistema es que no te instala las dependencias que necesita el programa, y las tienes que ir instalando una a una. Era muy engorroso.

Buscando por “san google”, encontré el programa swaret, te lo puedes descargar del siguiente “link

Lo instalamos con el comando installpkg swaret-…

Al final de la instalación nos saldrá el siguiente mensaje:

YOU MUST EDIT /etc/swaret.conf.new! (man swaret.conf)
Rename it to /etc/swaret.conf and start using swaret.

La solución es sencilla, debemos ir al directorio y renombrar el archivo mencionado a swaret.conf.

Siguiente paso es editar el archivo swaret.conf

# nano /etc/swaret.conf

Sección: REPOS_ROOT
Vamos a añadir los repositorios desde donde queremos descargar los paquetes. Por defecto todas estas líneas están comentados así que podemos hacer nuevas líneas.

Sección NIC

Aquí tenemos que poner nuestra tarjeta de red, normalmente es eth0

Una vez modificado esto podemos lanzar los siguientes comandos:

–update (Actualizar)
# swaret –update
Recupera la lista de los últimos archivos disponibles.

–upgrade (Actualizar)
# swaret –upgrade
Actualiza manualmente todos los paquetes instalados.

# swaret –upgrade -a
Actualiza automáticamente todos los paquetes instalados.

# swaret –upgrade paquete
Actualiza manualmente todos los paquetes instalados de un paquete específico.

# swaret –upgrade -a paquete
Actualiza automáticamente todos los paquetes instalados de un paquete específico.

—install (Instalar)
# swaret –install
Instala todos los paquetes disponibles manualmente.

# swaret –install -a
Instala todos los paquetes disponibles automáticamente.

# swaret –install -p
Instala todos los parches disponibles manualmente.

# swaret –install -ap
Instala todos los parches disponibles automáticamente.

# swaret –install
Instala todos los paquetes disponibles manualmente.

# swaret –install -a
Instala todos los paquetes disponibles automáticamente.

# swaret –install -p
Instala todos los parches disponibles manualmente.

# swaret –install -ap
Instala todos los parches disponibles automáticamente.

# swaret –install paquete
Instalar el paquete manualmente.

# swaret –install paquete -a
Instalar el paquete automáticamente

# swaret –install paquete -p
Instalar todos los parches del paquete manualmente.

# swaret –install paquete -ap
Instalar todos los parches del paquete automáticamente.

–reinstall (Reinstalar)
# swaret –reinstall
Reinstalar todo manualmente.

# swaret –reinstall -a
Reinstalar todo automáticamente

# swaret –reinstall -p
Reinstalar todos los parches manualmente.

# swaret –reinstall -ap
Reinstalar todos los parches automáticamente.

# swaret –reinstall paquete
Reinstalar el paquete manualmente.

# swaret –reinstall paquete -a
Reinstalar el paquete automáticamente

# swaret –reinstall paquete -p
Reinstalar todos los parches del paquete manualmente.

# swaret –reinstall paquete -ap
Reinstalar todos los parches del paquete automáticamente.

–remove (Desinstalar)
# swaret –remove paquete
Desinstalar el paquete manualmente.

# swaret –remove paquete -a
Desinstalar el paquete automáticamente.

–get (Conseguir)
# swaret –get
Conseguir todos los paquetes manualmente.

# swaret –get -a
Conseguir todos los paquetes automáticamente.

# swaret –get -p
Conseguir todos los parches manualmente.

# swaret –get -ap
Conseguir todos los parches automáticamente.

# swaret –get -s
Conseguir todas las fuentes manualmente.

# swaret –get -as
Conseguir todas las fuentes automáticamente.

# swaret –get -u
Conseguir todos los paquetes actualizados manualmente.

# swaret –get -au
Conseguir todos los paquetes actualizados automáticamente.

# swaret –get paquete
Conseguir el paquete manualmente.

# swaret –get paquete -a
Conseguir el paquete automáticamente.

# swaret –get paquete -p
Conseguir todos los parches del paquete manualmente.

# swaret –get paquete -ap
Conseguir todos los parches del paquete automáticamente.

# swaret –get paquete -s
Conseguir todas las fuentes del paquete manualmente.

# swaret –get paquete -as
Conseguir todas las fuentes del paquete automáticamente.

# swaret –get paquete -u
Conseguir la actualización del paquete manualmente.

# swaret –get paquete -au
Conseguir la actualización del paquete automáticamente.

–compile (Compilar)
# swaret –compile paquete
Descargar, compilar e instalar el código fuente.
*En el momento de elaborar este manual esta opción es experimental. No funciona con todos los paquetes.

–dep (Librerías perdidas)
# swaret –dep
Fija y arregla todas las librerías perdidas.

# swaret –dep paquete
Fija y arregla todas las librerías perdidas del paquete.

–resume (Resumir)
# swaret –resume
Resume los paquetes rotos.

# swaret –resume -p
Resume los parches rotos.

# swaret –resume -s
Resume las fuentes rotas.

–list (Listar)
# swaret –list
Lista todos los paquetes disponibles

# swaret –list -p
Lista todos los parches disponibles

# swaret –list -s
Lista todas las fuentes disponibles

# swaret –list -i
Lista todos los paquetes instalados

# swaret –list -u
Lista todos los paquetes instalados preparados para actualizar

# swaret –list -n
Lista todos los paquetes no instalados

# swaret –list -np
Lista todos los parches no instalados

–search (Buscar)
# swaret –search paquete
Busca si el paquete está disponible.

# swaret –search paquete -p
Busca parches disponibles para el paquete.

# swaret –search paquete -s
Busca fuentes disponibles para el paquete.

# swaret –search paquete -i
Busca si el paquete está instalado.

# swaret –search paquete -u
Busca si el paquete instalado está preparado para actualizarse.

# swaret –search paquete -n
Busca si el paquete no está instalado

# swaret –search paquete -np
Busca si los parches del paquete no están instalados

–show (Mostrar)
# swaret –show
Muestra la descripción de los paquetes disponibles.

# swaret –show -p
Muestra la descripción de los parches disponibles.

# swaret –show -i
Muestra la descripción de los paquetes instalados.

# swaret –show paquete
Muestra la descripción del paquete disponibles.

# swaret –show paquete -p
Muestra la descripción del parche disponible del paquete.

# swaret –show paquete -i
Muestra la descripción del paquete instalado.

Para ver más opciones de swaret, tenemos la ayuda en línea.
 


Slackware Linux

Después de varios años utilizando Ubuntu, voy a cambiar de distribución, voy a empezar a utilizar Slackware, no es que me vaya a olvidar de Ubuntu.

Según la Wikipedia:

Slackware Linux es la distribución Linux más antigua que tiene vigencia. En su última versión, la 13.37, Slackware incluye la versión del núcleo Linux 2.6.37.6 y Glibc 2.11.1. Contiene un programa de instalación sencillo de utilizar aunque puede ser compleja para los nuevos en sistemas linux, extensa documentación aunque poca en español, y un sistema de gestión de paquetes basado en menús.

Estas vacaciones he estado trasteando un poco en serio con Slackware, con la versión 12.2, que es la distro que trae Wifiway, que como sabreis es una distro destinada a la auditorias wifi.

Me he bajado la última revisión en DVD, que es la 13,37; esta es una distribución a la vieja usanza, se utiliza mucho la línea de comandos, en cambio Ubuntu es una distro muy amigable, te lo da “casi” todo hecho, muy al estilo “windows”.

Dentro de la categoría Slackware, os iré explicando mis logros con Slackware, el sistema de instalación de paquetes, secretos y trucos…

Panel de control: ISPConfig (1ªparte)

Hoy toca hablar de un panel de control para nuestro servidor web; algunos son de pago como cpanel y otros gratuitos como ISPConfig, y la verdad, no tienen nada que envidiar los gratuitos a los de pago.

Su instalación es sencilla si se sigue todos los pasos, y esperando ha que no halla errores o falta de algún programa, en mi caso estuve a punto de tirar “la toalla”, al intentar instalar otro panel de control llamado IspCP Omega, me dió muchos quebraderos de cabeza y al final me decidí por ISPConfig, que también tuvo lo suyo pero al final lo conseguí.

Lo voy a dividir en un par o tres de capítulos, hay mucho código…

Capítulo 1

La instalación la realicé en mi Ubuntu 10.10, los pasos a seguir son los siguientes:

Primero autentificarse como root.

Instalación de paquetes:

aptitude install ssh openssh-server        {este no es necesario, pero no está de más}

aptitude install vim-nox

Editar el siguiente archivo:

gedit /etc/hosts

127.0.0.1       localhost.localdomain   localhost
192.168.0.100   server1.example.com     server1

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Siguiente paso:

echo server1.example.com > /etc/hostname
/etc/init.d/hostname restart

Seguimos:

hostname
hostname -f

Editamos el source.list

gedit /etc/apt/sources.list

y añadimos los siguientes repositorios:

deb http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-src http://security.ubuntu.com/ubuntu maverick-security main restricted
deb http://security.ubuntu.com/ubuntu maverick-security universe
deb-src http://security.ubuntu.com/ubuntu maverick-security universe
deb http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-src http://security.ubuntu.com/ubuntu maverick-security multiverse

Actualizamos sistema:
aptitude update
aptitude safe-upgrade

Reiniciamos el pc.

Cambiamos la shell por defecto:

dpkg-reconfigure dash

Nos preguntará: Install dash as /bin/sh?  le respondemos que NO.

Ahora vamos a desabilitar AppArmor:

/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
aptitude remove apparmor apparmor-utils

Sincronizamos el reloj (NTP (network time protocol)):

aptitude install ntp ntpdate

Instalamos los siguientes paquetes:

aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

Editamos el siguiente archivo:

gedit /etc/mysql/my.cnf

[...]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address           = 127.0.0.1
[...]

Hemos añadido la dirección 127.0.0.1

Reiniciamos Mysql:  /etc/init.d/mysql restart

netstat -tap | grep mysql

Nos debe salir un resultado parecido a este:

root@amd_linux:~# netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      9815/mysqld
root@amd_linux:~#

Durante la instalación los certificados de SSL y POP3-SSL serán creados como localhost, tu debes cambiarlos por el tuyo.

cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem

Y ahora modificar el archivo con gedit.

sudo  /etc/courier/imapd.cnf

Ponemos la siguiente línea:

[...]
CN=server1.example.com
[...]

Editamos el siguiente archivo:

gedit  /etc/courier/pop3d.cnf

[...] CN=server1.example.com [...]

Recreamos los certificados:

mkimapdcert
mkpop3dcert

… y restauramos Courier-IMAP-SSL y Courier-POP3-SSL:

/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop-ssl restart

Ahora nos toca instalar mavisd-new, SpamAssassin y Clamav:

aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

También Apache2,PHP5,phpMyadmin, etc….

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby

Nos preguntará un par de “cosillas”

Web server to reconfigure automatically: <– apache2
Configure database for phpmyadmin with dbconfig-common? <– No

Introducimos los siguientes comandos:

a2enmod suexec rewrite ssl actions include

a2enmod dav_fs dav auth_digest

Reiniciamos Apache:

/etc/init.d/apache2 restart

Bueno pues con esto acabo la primera parte.

 

Control remoto con hamachi

Hoy toca hablar de un programa para controlar nuestros pc’s vía internet. El programa en cuestión es “hamachi“.

Claro, la instalación va a ser sobre nuestro linux, en mi caso es Ubuntu.

Había probado con varios programas para controlar mis pc’s, uno de ellos es logmein, este solo es para windows, también con ntrconnect, este funciona en linux, el incoveniente, que solo en la versión gratuita te dá acceso a 2 pc’s; yo quería controlar 3, uno de ellos es el netbook. Así que al final me decanté por hamachi.

El programa en si, es a través de la consola, pero para hacerlo más amigable, también instalaremos hamachi-gui, que nos creará una interfaz para poder controlarlo.

Vamos por faena:

Nos lo descargamos desde el siguiente enlace: http://files.hamachi.cc/linux/hamachi-0.9.9.9-20-lnx.tar.gz

Vamos al directorio de descarga de nuestro archivo; y ejecutamos los siguientes comandos:

$ tar -zxvf hamachi-0.9.9.9-**.tar.gz

$ cd hamachi-0.9.9.9-xx/

$ sudo make install

$ sudo tuncfg

Ya está instalado!

Ahora vamos a crear un usuario para hamachi, así solo lo podremos iniciar usuarios del grupo (esto es por seguridad):

$ sudo groupadd hamachi

Añadimos nuestro usuario al grupo:

$ sudo gpasswd -a usuario hamachi

Y añadimos root al grupo:

$ sudo gpasswd -a root hamachi

Ahora vienen los permisos:

$ sudo chmod 760 /var/run/tuncfg.sock

Cargamos el grupo:

$ sudo chgrp hamachi /var/run/tuncfg.sock

Ahora crearemos una configuración base:

$ sudo hamachi-init -c /etc/hamachi

En la consola nos saldrá el siguiente resultado:

Initializing Hamachi configuration (/etc/hamachi). Please wait ..

  generating 2048-bit RSA keypair .. ok
  making /etc/hamachi directory .. ok
  saving /etc/hamachi/client.pub .. ok
  saving /etc/hamachi/client.pri .. ok
  saving /etc/hamachi/state .. ok

Pues ya está, ahora podemos bajarnos hamachi-gui, para tener la interfaz gráfica y desde ahí podemos crear redes, unirnos a otras redes creadas, etc…

Error Nvidia:”Unable to find the kernel source”

Antes de  nada, os voy a comentar como instalar los drives de nuestra tarjeta NVidia y luego a resolver un error que me daba al instalarlos, el famoso:

Unable to find the kernel source tree for the currently running kernel

Digo “famoso“, porque buscando por google e visto muchas preguntas al respecto en varios foros.

Primero nos iremos a la página de descarga de nvidia, nos descargaremos el driver específico de nuestra tarjeta, yo recomiendo en nuestro home. Una observación, si al descargar el driver se nos habre una página html, volvemos hacia atrás y pinchamos en el enlace con el botón derecho de nuestro ratón, la opción de “guardar como”.

Una vez finalizada la descarga, tendremos un archivos con este nombre (según nuestra tarjeta):  “NVIDIA-Linux-x86-173.14.28-pkg1.run“.

Para no tener que teclear en la consola un nombre tan largo, lo renombramos a “NVIDIA.run”

Ejecutamos el siguiente comando:

$ sudo service gdm stop

Tenemos una sesión en modo consola, nos autentificamos con nuestro user y pas (ojo en el “pass num” lock activado).

$ sudo sh NVIDIA.run

Empieza la instalación de NVidia, si todo va bien “aleluyaaaa”, pero si os sale el siguiente mensaje:

Unable to find the kernel source tree for the currently running kernel, etc…

Nos dirá también que revisemos el archivo /var/log/nvidia-installer.log

Me fuí a la consola y escribí el siguiente comando:

$ sudo apt-get install linux-headers-`uname-r`

Si todo ba bién, pues solucionado; pero si te sale el mensaje de que “linux-headers”, no está instalado (como me pasó a mi), tendrás que ir a la consola y teclear el comando:

$ uname -a

Aquí te dirá la versión de kernel instalada en tu Ubuntu, te vas la página web de ubuntu, y te descarga la versión de tu linux-headers (la versión es la que te ha dado el comando uname -a).

La instalas y te tiene que funcionar!!!

Luego te descargas el nvidia-settings

$ sudo apt-get install nvidia-settings

Y ya está todo funcionado.

Espero que este articulo os sirva.

___________________________________________________________________________

Administración con XAMPP

Aquí tenemos una buena herramienta para gestionar nuestro servidor web, lo integra casi todo (Apache, MySQL, PHP, ProFTPD, phpMyAdmin, SQLite, Webalizer, SQlite, etc…), es un todo en uno. Si no tenemos ganas de instalar programas uno a uno, con sus conseguientes problemas y dependencias, con solo instalar Xampp lo tenemos todo.

Visitamos su web y nos descargamos la última versión que aparece en su página, en mi caso esta: XAMPP Linux 1.7.3a.

Una vez descargado, lo descomprimimos con el comando:

sudo tar xvfz xampp-linux-1.7.3a.tar.gz -C /opt

ha sido fácil, ahora solo nos queda iniciarlo, escribimos el siguiente comando:

sudo /opt/lampp/lampp start

Nos toca abrir nuestro navegador, e introducimos:

http://localhost

Si nos hemos dado cuenta, veremos que está todo en inglés, clickeamos en idioma preferido y lo cambiamos y veremos el area de administración de nuestra bases de datos con  phpMyAdmin y ver nuestras estadísticas con Webalizer.

También podemos ver si corre bien todos los programas del server, seleccionando  “status”

Para detener el servicio, volvemos a una consola

sudo /opt/lampp/lampp stop