Archivo

Archive for 24 febrero 2016

Apuntes sobre Arch

Después de unos días con Arch estoy bastante contento, tiene muchas aplicaciones debido a sus 2 sistemas de paquetería y  su ingente documentación debido, supongo, a su amplia comunidad.

Su sistema de paquetería principal es pacman (similar a apt) el cual tiene unos reposistorios y unos comandos:

pacman <comando> [nombre_paquete]

Los comandos son combinables sobre todo los de sincronizar repositorios con el resto.(extraído de sobrebits)

Instalar paquetes

pacman -S “paquete”      #Instala un paquete.
pacman -Sy [“paquete”] #Sincroniza repositorios [e instala el paquete].
pacman -Su                    #Actualiza los paquetes
pacman -Syu                  #Sincroniza repositorios y actualiza paquetes.
pacman -Syyu                #Fuerza sincronización y actualiza paquetes.
(vemos la combinación de comando para actualizar)

Eliminar paquetes

pacman -R “paquete”     #Borra paquete sin sus dependencias.
pacman -Rs “paquete”   #Borra paquete y sus dependencias no utilizadas.

Buscar paquetes

Para buscar paquetes se diferencia la base de datos local y los repositorios:
Desde repositorios:

pacman -Ss <string1> <string2>    #Busca los strings como nombre del paquete o su descripción.
pacman -Si “paquete”   #Muestra información detallada de un paquete.
pacman -Sg “grupo”     #Lista los paquetes que pertenecen a un grupo.

Si sustituimos -S por -Q nos da la misma información pero de paquetes YA INSTALADOS

pacman -Qdt                #Muestra paquetes huérfanos.

Y luego tenemos los paquetes AUR que son unos binarios preparados para compilar e instalar con pacman, para usarlos es necesario instalar:


pacman -S --needed base-devel

El procedimiento es el siguiente:

  • Descargar el paquete AUR (.tar.gz) mediante:
    • la interfaz web de AUR con algún navegador gráfico o de texto
    • curl, wget, git o cualquier gestor de repositorios…
  • Descomprimir el paquete en un directorio (tar -xvf fichero.tar.gz)
  • Revisar el PKGBUILD y/o *.install en busca de posibles comandos maliciosos
  • Ejecutar dentro del directorio:
     makepkg -sri 
  • y listo!

Esta manera nos proporciona una cantidad inmensa de aplicaciones.

Existe un gestor de paquetes AUR  que hace más cómodo el proceso anterior llamado yaourt

Para instalarlo:

git clone https://aur.archlinux.org/package-query.git
cd package-query
makepkg -si
cd ..
git clone https://aur.archlinux.org/yaourt.git
cd yaourt
makepkg -si
cd ..

Para usarlo es como pacman (las mismas opciones)

yaourt -h

Y como ejemplo vamos a instalar chrome (extraído de Odomera) en luyaougar de chromium (navegador donde google saca el fuente para chrome, pero obviamente sin su integración) desde un paquete AUR con yaourt.

yaourt -S google-chrome --noconfirm

A lo mejor necesitamos instalar alguna otra dependencia que nos pida yaourt al final de la instalación.

Anuncios
Categorías:Linux, Sistemas Operativos Etiquetas: , , ,

Mi aventura con Arch linux…y su…

Un día, como en otras ocaciones me había ocurrido,  me aburrí de Windows y decidí instalar Linux, esto desencadena un torrente de posibilidades que logré filtrar hasta determinar si instalaba Debian (ya conocida) o Arch Linux (nunca instalada). Después de leer infinidad de páginas la conclusión es que las dos están muy bien, pero Arch es más ligera debido a que no instala paquetes adicionales (algunos innecesarios) y además el rolling release y no freeze release, es decir, que se actualiza a las últimas versiones. Por estas razones y por la novedad de aprender algo nuevo decido Arch y es aquí donde empieza mi aventura.

Un vez con la distro en una unidad USB

dd bs=4M if=/archiso.iso of=/dev/sdxx

arranco desde la misma (el root no tienen pass) y el primer problema que encuentro es la distribución del teclado que cambiamos con

loadkeys es

luego surge otra duda, EFI vs BIOS. En este caso EFI es más moderna que BIOS y supera sus limitaciones. Resumiendo (ver este artículo) una EFI necesita un pequeña partición FAT al principio del disco donde se encuentran los archivos necesarios para arrancar los posibles distintos sistemas operativos para esa máquina o gestor de arranque para EFI, pero (me adelanto un poco y luego retrocedo hasta este punto) tras varios intentos instalando Arch mi EFI decía que no reconoce la partición vfat de la EFI (oO) (posiblemente por que le dí sólo 200Mb en lugar de 300Mb como dice el artículo), así que cuando la desesperación superó a la desmotivación active el modo Legacy (BIOS y no EFI) y lo instale de forma convencional (usando BIOS).

Nota: tener en cuenta que el disco tiene que estar configurado (antes de particionar) en GPT para EFI o en msdos para BIOS

Y continua la aventura. Como no tengo ni idea de Arch me base en este tutorial que resumo a continuación pero que es importante ojear.

Bien, una vez particionado el disco (recomiendo familiarizarse con parted) procedemos a montar las particiones en la carpeta /mnt. Ojo con la jerarquía, según el esquema de particiones elegido, ya que /boot suele ser la primera partición (sda1) y el raíz (/) la segunda (sda2)(En este caso montar sda2 en mnt y luego crear las carpetas para montar boot y home, por ejemplo).

Necesitamos una conexión a internet para la descarga de los paquetes, si tienes una red cableada el demonio dhcpcd se inicia automáticamente, pero si tienes una conexión inalámbrica debes ejecutar wifi-menu para configurar tu red inalámbrica (utilidad fantástica donde las haya).

Ahora descargamos los paquetes:

pacstrap /mnt base base-devel

como ya tenemos el esquema de particiones logrado y montado sobre /mnt generamos nuestro fstab

genfstab -U /mnt > /mnt/etc/fstab
-U - es para que coja los UUID de los discos.

como no hemos hecho demasiadas configuraciones salvo la red wifi copiamos la configuración de ésta a nuestro directorio

cp -r /etc/netctl /mnt/etc

y situamos nuestra carpeta como inicio para trabajar sobre nuestro Arch

arch-chroot /mnt /bin/bash

Ajustamos la configuración regional y de idioma

Descomentamos la linea correspondiente en /etc/locale.gen (es_ES.UTF-8) y ejecutamos:

locale-gen

Creamos /etc/locale.conf

echo LANG=es_ES.UTF-8 > /etc/locale.conf

Para hacer persistente en nuestra instalación el comando loadkeys es creamos el archivo /etc/vconsole.conf

echo LANG=es > /etc/vconsole.conf

Ahora seleccionamos el uso horario creando un enlace simbólico desde /usr/share/zoneinfo/<Zona>/<SubZona> a /etc/localtime

ln -s /usr/share/zoneinfo/Greenwich /etc/localtime

Procedemos ahora a configurar las redes

pacman -S NetworkManager netctl dialog iw wpa_supplicant
systemctl enable dhcpcd
systemctl enable netctl
systemctl enable NetworkManager
echo <nombreMaquina> > /etc/hostname

Si solo vamos a tener un sistema operativo no hace falta gestor de arranque pero siempre es interesante. Como nos hemos decantado por BIOS/MBR

Instalamos grub y os-prober (para hacer que GRUB busque otros sistemas operativos instalados):

pacman -S grub os-prober

El gestor de paquetes de Arch instala grub en el sistema pero no en la partición:

grub-install --recheck /dev/sda

Generamos automáticamente el archivo grub.cfg:

grub-mkconfig -o /boot/grub/grub.cfg

Y por fin salimos de chroot, desmontamos y reiniciamos.

exit
umount -R /mnt
reboot

Si todo ha ido bien (que debería) tendremos un Arch base instalado con conexión de red, pero como a nadie le gusta trabajar en modo texto vamos a instalar un entorno gráfico (me decante por gnome3 que me parece genial)

Como no queremos trabajar como root creamos un usuario, que nos servirá luego para acceder al entorno gráfico.

useradd phernandez -p

Ahora instalamos el paquete gnome (ver paquetería de Arch)

pacman -S gnome

Una vez instalado le decimos a Arch que arranque el entorno gráfico por defecto, mediante el gestor de sesiones gdm.

systemctl enable gdm

Yo tuve algún problema con las redes porque nunca hice

systemctl enable netctl
systemctl enable NetworkManager

Y ahora toca personalizar o ajustar Gnome 3 (ver)

pacman -S gnome-tweak-tool

Eliminar tiempo de apagado cuando apagamos:

gsettings set org.gnome.SessionManager logout-prompt 'false'

Y listo! a partir de aquí personalizar como deseen aunque hay una serie paquetes recomendables:

dosfstools , ntfstools, gparted, tlp (si la maquina es un portatil),….

espero que les sea de ayuda.

Categorías:Linux, Sistemas Operativos

Mi servidor Linux (raspian)

Empezar por el principio

El servidor se inicia con SSH activado y por defecto el login es pi/raspberry así que la primera tarea es cambiar esto

 passwd 

Luego cambiar la ip por defecto que está en DHCP ver este artículo

Luego procederemos a actualizar los repositorios

sudo apt-get update 

Mejorar el editor vi

sudo apt-get install vim 

Instalar NGINX (ver configurar nginx)

 sudo apt-get install nginx 

Instalar PHP5

 sudo apt-get install php5 php5-fpm php5-cgi php5-mysql php5-curl php5-gd php-pear php5-imagick php5-mcrypt php5-sqlite 

Instalar MariaDB

 sudo apt-get install mariadb-server 

Instalar phpmyadmin

sudo apt-get install phpmyadmin

Para lograr que funcione en NGINX, hay que crear un enlace simbólico en el directorio web:

sudo ln -s /var/lib/phpmyadmin phpmyadmin

Si resulta un error sobre el usercontroller, editar /etc/phpmyadmin/config.inc.php y buscar la linea:

$cfg[‘Servers’][$i][‘user’] = ”;
$cfg[‘Servers’][$i][‘password’] = ”;
ó
$cfg[‘Servers’][$i][‘controluser’] = ”;
$cfg[‘Servers’][$i][‘controlpass’] = ”;

y asegurarse de que los valores estén vacíos.

Para resolver el error SQL1146 al crear tablas o realizar consultar, editar /etc/phpmyadmin/config.inc.php y buscar la linea:

$cfg['Servers'][$i]['table_uiprefs'] = 'pma_table_uiprefs';

y sustituirla por:

$cfg['Servers'][$i]['pma__table_uiprefs'] = pma__table_uiprefs’;

Instalar MLDonkey (ver)

apt-get install mldonkey-server

Ahora debemos permitir la entrada de cualquier ip al servidor, para ello usamos y aprovechamos para configurar el usuario de acceso a la interfaz web.


telnet  localhost 4000

set allowed_ips "255.255.255.255"

useradd admin <password>

o podemos modificar /var/lib/mldonkey/downloads.ini para permitir cualquier ip, pero antes debemos parar el servicio (ojo systemd)

sudo systemctl stop mldonkey-server

después editar /var/lib/mldonkey/downloads.ini y en la seccion “allowed ips” añadir:

allowed_ips = [
“127.0.0.1”;
“255.255.255.255”;]

Arrancamos otra vez el server…

sudo systemctl start mldonkey-server

Debido a la que la capacidad de la tarjeta SD donde se encuentra Raspian, no será demasiado grande cambiaremos la ubicación del almacenamiento del servidor. Para no tocar el archivo anterior demasiado (que es muy delicado, la verdad) cambiaremos las carpetas reales por enlaces simbólicos hacia las carpetas que nosotros querramos (las carpetas de descargas podemos unirlas en una sola):

  • /var/lib/mldonkey/incoming/files
  • /var/lib/mldonkey/incoming/directories

este proceso lo repetimos para los temporales (donde se irán acumulando las descargas incompletas en curso):

  • /var/lib/mldonkey/temp

 

Y listo! el servidor esta escuchando en el puerto 4080.

Ver instalar servidor DNS aqui

Nubes personales (Pydio vs owncloud)

Tanto Pydio como Owncloud son nubes personales y las dos cumplen con su cometido. Para mi uso personal prefiero owncloud porque:

  • Aunque Pydio acepta enlaces simbólicos a otras carpetas desde su carpeta de datos (owcloud 8.2 no, pero yo uso la versión 8.1 que si lo hace) se hace complicado de configurar para que lo que subas no lo haga su carpeta raíz.
  • El cliente para android es bastante lento y pobre en opciones de administración.
  • Este cliente no permite compartir contenido con su nube en otras aplicaciones, por lo que hay que subir todo desde el cliente lento.
  • Es complicado crear un repositorio.

Instalar Pydio

Instalar pydio es muy simple, copiar a la carpeta y seguir el asistente de instalación. Necesita una base de datos MySQL

Instalar Owncloud

Es exactamente igual que instalar pydio, tambien requiere de una base de datos mysql. Pero owncloud requiere alguna cosilla más como un host especifico dentro de tu dominio y alguna configuración específica de carpetas. (la configuración está en /config/config.php). Recordar que la versión 8.1 admite enlaces simbólicos. Aunque he decidido instalar la ultima versión que aunque no admite enlaces simbólicos, he resuelto esta situación poniendo los archivos en la estructura de carpetas que la aplicación propone y hacer los montajes de las unidades pertinentes en dicho lugar.

Categorías:Linux Etiquetas: , , , ,