Blackhold

Archive for the “Linux” Category

Arrancar una iso desde grub

Posted on desembre 7th, 2017 by admin

Tengo un servidor que tiene instalado debian, pero quiero instalar el sistema operativo en uno de los RAID que he creado en la controladora, para tener el sistema operativo ahí en lugar del disco duro IDE.
El servidor no me arranca ni los pinchos usb ni tampoco un cd con una lectora de CDs externa y no puedo instalar el sistema operativo directamente a los discos que están en el RAID, así que sólo me queda arrancar el cd de instalación desde grub.

Para ello vamos a editar el fichero /etc/grub/40_custom

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "debian" {
set isofile="/home/blackhold/firmware-9.2.1-amd64-i386-netinst.iso"
loopback loop (hd0,1)$isofile
echo "Starting $isofile..."
linux (loop)/install.386/vmlinuz
initrd (loop)/install.386/initrd.gz
}

La iso de instalación la tengo almacenada en /home/blackhold. Para mas información de como configurar el grub para otras distribuciones de linux seguid éste link y éste otro.

Y cargamos la configuración a grub

# update-grub

Reiniciamos y nos aparece la opción debian, entramos en ella y ya tendremos nuestra instalación :) para continuar con ella, deberemos tener la lectora de CDs conectada.

En ésta última captura voy a instalar en el RAID el sistema operativo nuevo y voy a dejar el otro indicandole no hacer nada con esta partición, de esta forma siempre voy a tener disponible un sistema … ||| Seguir leyendo... >>>

Instalar software controladora 3ware serie 9000

Posted on desembre 6th, 2017 by admin

Cuando queremos configurar el RAID de un servidor normalmente lo hacemos al arrancar el sistema, pero esto no nos permite saber remotamente si el RAID está correcto o no desde el propio sistema operativo, para ello, es posible instalar un software que se comunique con la controladora y permita realizar acciones con la misma desde terminal.

En mi caso tengo un servidor con dos controladoras raid 3ware serie 9000

# lspci |grep 3ware
00:01.0 RAID bus controller: 3ware Inc 9xxx-series SATA-RAID
00:03.0 RAID bus controller: 3ware Inc 9xxx-series SATA-RAID

El paquete que tendremos que instalar se llama tw-cli, y tendremos que añadir repositorios adicionales para poder instalarlo. hwraid contiene otro software de otras controladoras RAID

# vi /etc/apt/sources.list
# software controladora raid
deb http://hwraid.le-vert.net/debian stretch main

# wget -O - https://hwraid.le-vert.net/debian/hwraid.le-vert.net.gpg.key | apt-key add -
# apt-get update
# apt-get install tw-cli

En ésta página web encontramos información addicional y de funcionamiento sobre tw-cli

Algunos de los comandos básicos son:

Ver las controladoras disponibles

# tw-cli info

Ctl   Model        (V)Ports  Drives   Units   NotOpt  RRate   VRate  BBU
------------------------------------------------------------------------
c0    9500S-8      8         8        1       0       1       1      -        
c1    9500S-8      8         7        1       0       1       1      -  

Listar los discos disponibles en una controladora

# tw-cli /c1 show

Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-5    OK             -       -       64K     11175.8   ON     OFF    

Port   Status           Unit   Size        Blocks        Serial
---------------------------------------------------------------
p0     OK               u0     1.82 TB     3907029168    9WM7VLRJ            
p1     OK               u0     1.82 TB     3907029168    9WM69H87            
p2     OK               u0     1.82 
||| Seguir leyendo... >>>

Clonar un disco con errores

Posted on desembre 1st, 2017 by admin

Cuando los sistemas funcionan a diario es normal que con el tiempo los discos empiezan a dar errores, para ello tenemos a un buen aliado que se llama S.M.A.R.T. que nos avisa cuando la salud de un disco duro no es buena y cuando empiezan a salir errores, la recomendación es parar el disco y reemplazarlo.

Esta vez el disco que tengo tiene las configuraciones enteras de un sistema operativo y reinstalar y reconstruir el sistema operativo desde 0 sería mucho trabajo, así que la opción por la que he optado es clonar el disco duro a otro disco duro que no tiene errores (comprobado con badblocks!).

Al hacer el dd se me ha cortado a medio proceso porque se ha encontrado con la parte del disco defectuosa, así que he tenido que añadir un par de opciones para omitir los errores y seguir con el clonado:

# dd if=/dev/sda |pv |dd of=/dev/sdb conv=noerror,sync

El disco duro que estoy tratando de recuperar, realmente tiene varios sectores defectuosos que con dd no hay forma de clonar, así que he tenido que usar otra herramienta gddrescue

# apt-get install gddrescue
# ddrescue -d -r3 /dev/sda /dev/sdb clonacion.log

Con el -d le decimos a ddrescue que haga un acceso directo al disco e ignore el cache del kernel (clonación bit a bit)
Con el -r3 le indicamos que pruebe hasta 3 veces la lectura de los sectores defectuosos

Después de un buen rato finalmente el disco ha sido clonado con éxito y el … ||| Seguir leyendo... >>>

Vim: mostrar barra de %

Posted on setembre 14th, 2017 by admin

Hace unos días que instalé debian 9 y vim no tenía el comportamiento que me gustaba, en un post anterior expliqué como sacar por ejemplo el modo mouse que al seleccionar te activaba el mode visual.

Hace días quise activar la barra de % de lectura del fichero y también el nombre del fichero, pero no conseguía que se aplicase la configuración y tenía que usar el set ruler cada vez que abría el fichero. Hoy porfin en el mismo fichero que editábamos en el post referenciado, se me ha ocurrido comentar una línea

# vi /usr/share/vim/vim80/defaults.vim
set history=200         " keep 200 lines of command line history
set ruler               " show the cursor position all the time
set showcmd             " display incomplete commands
"set wildmenu           " display completion matches in a status line

El set wildmenu era el que no me permitía que apareciese el ruler por defecto.

Addicionalmente, la barra inferior, me gusta tenerla de color blanco para que se diferencie del fondo negro con el que suelo trabajar, para ello modifico el fichero de configuración de /etc/vim/vimrc y al final añado lo siguiente

# vi /etc/vim/vimrc
set modeline
set ls=2

Y listos! :)… ||| Seguir leyendo... >>>

LXC: Montar un directorio del host en un contenedor

Posted on agost 26th, 2017 by admin

Ésto hace tiempo lo documenté para openvz, pero con lxc cambia un poco la cosa. Voy a saco y pongo lo que se tiene que hacer hehe

Montas el punto de montaje que quieres, en mi caso estoy montando un dav con davfs2 (apt-get install davfs2) en el host en un punto de montaje:

# mkdir /mnt/dav_capa8
# mount -t davfs -o gid=www-data,uid=www-data https://cloud.capa8.net/remote.php/webdav/ /mnt/dav_capa8/

Previamente he puesto las credenciales en /etc/davfs2/secrets del acceso al webdav

y luego así se lo paso al contenedor:

# pct set 102 -mp0 /mnt/dav_capa8,mp=/mnt/dav_capa8

Reinicio el contenedor y el nuevo mountpoint ya está accesible

Sólo me falta comprobar si el usuario www-data que es quien tiene que escribir en éste punto de montaje tiene permisos suficientes.

Para que se monte el davfs al iniciar el sistema, editaremos el fichero /etc/fstab y la última línea:

# vi /etc/fstab
/dev/pve/root / ext4 errors=remount-ro 0 1
/dev/pve/swap none swap sw 0 0
proc /proc proc defaults 0 0
/dev/sdb1 /var/lib/vz2 ext4 defaults 0 0
https://cloud.capa8.net/remote.php/webdav/ /mnt/dav_capa8/ davfs noauto,user 0  0
||| Seguir leyendo... >>>

Convertir pdf a jpg

Posted on maig 11th, 2017 by admin

Normalmente cuando tengo que editar un pdf lo abro con inkscape, pero esta vez me encuentro un pdf que son unos planos y la conversión con inkscape se lo toma con la calmísima, así que total como sólo necesito una imagen, voy a convertir el contenido del pdf a imagen y me ahorro varias horas de espera…

¿Cómo?

# convert -verbose -density 150 -trim plano.pdf -quality 100 -flatten -sharpen 0x1.0 plano.jpg

Ahora a cargarlos en el inkscape como imagen y a redimensionar a mi gusto :)

EOF… ||| Seguir leyendo... >>>

dlna: cliente en debian (sólo audio)

Posted on abril 19th, 2017 by admin

Ya empezamos con las abreviaciones estas tan odiosas que usamos los informáticos, pues DLNA es una cosa que poco a poco van teniendo cada vez mas televisores y proyectores y uno de los primeros dispositivos que lo usó fue el chromecast de google, quien tenga alguno sabrá la maravilla que es éste servicio.

En pocas palabras sirve para mandar contenidos multimedia entre dispositivos, por ejemplo vídeos y audios.

La forma que hasta el momento he usado es el uso de una extensión de chrome para streamear al chromecast, me permite reproducir pestañas del navegador en el televisor, pero también youtube y netflix si detectan que hay un dispositivo dlna me da la opción de mandar el contenido al chromecast. Con el móvil android mas de lo mismo.
En resumen que puedo ver y escuchar lo que tengo en el portátil y en el móvil en el televisor y mi móvil pasa a ser otro mando de mi televisor. Vamos que chromecast es uno de los culpables porque mi tonto televisor tenga mucha guerra y una nueva vida :) -lo de usar el televisor para ver la TDT es agua pasada!-

Hace unos meses me percaté que dlna no era una cosa exclusiva de chromecast, sino que estaba cada vez mas en televisores e incluso proyectores. Así que me olí algún tipo de estandarización y efectivamente, dlna son las siglas de digital living network alliance, algo muy similar a lo que usan ya nuestras impresoras con el upnp. Empecé a buscar … ||| Seguir leyendo... >>>

El tiempo en la consola

Posted on febrer 16th, 2017 by admin

Navegando por las redes sociales me he encontrado una entrada curiosa:

Brutal alias per tenir el temps a la consola:
alias weather='curl -s wttr.in | sed -n "1,7p"'

Así que me he puesto a jugar :P la ciudad por defecto que me detecta es Madrid, pero no me gusta esta geolocalización:

$ curl -s wttr.in/Barcelona | sed -n "1,7p"
Weather for City: Barcelona, Spain

    \  /       Partly cloudy
  _ /"".-.     14 – 15 °C     
    \_(   ).   ↖ 11 km/h      
    /(___(__)  10 km          
               0.0 mm 

Además lo quiero en otro idioma que no sea inglés (en catalán no se deja, snif):

$ curl -H "Accept-Language: es" -s wttr.in/Barcelona | sed -n "1,7p"
El tiempo en: Barcelona, Spain

    \  /       Parcialmente nublado
  _ /"".-.     14 – 15 °C     
    \_(   ).   ↖ 11 km/h      
    /(___(__)  10 km          
               0.0 mm 

En ésta cuenta de twitter hay mas información sobre ésta página.

Tontería del día :)… ||| Seguir leyendo... >>>

Vim en debian 9 al seleccionar se pone en modo visual

Posted on desembre 4th, 2016 by admin

Poco a poco se acerca la fecha de lanzamiento de debian 9, en algunos sistemas ya estoy instalando debian 9 en previsión de que algún dia será la estable, pero me estoy encontrando con una cosa muy incomoda, y es que al seleccionar texto se me pone en modo visual y al no enterarme empiezo a liarla.

Para hacer que vim vuelva a tener un comportamiento esperado tenemos que modificar los parámetros por defecto de vim en /usr/share/vim/vim80/defaults.vim. El motivo de éste comportamiento es que detecta el uso del ratón.

Para volver a al comportamiento esperado, simplemente comentaremos las líneas que hacen referencia a éste comportamiento:

# vi /usr/share/vim/vim80/defaults.vim
" In many terminal emulators the mouse works just fine.  By enabling it you
" can position the cursor, Visually select and scroll with the mouse.
" if has('mouse')
"  set mouse=a
" endif

Guardamos y salimos. La próxima vez que abramos vim va a tener el comportamiento esperado, almenos con esto… si hay algún otro comportamiento raro, simplemente miramos como está configurado éste fichero en una versión antigua de debian y lo modificamos en éste fichero.… ||| Seguir leyendo... >>>

ssmtp: mandar mails con un smtp externo rápido y fácil!

Posted on octubre 10th, 2016 by admin

Que si exim, que si sendmail, que si la madre que los parió! configuraciones con ficheros de configuración quilométricos e inentendibles! llega la solución a vuestros problemas! ssmtp! rápido, sencillo y apto para cualquier administrador de sistemas, además que dispone de un fichero de configuración hyper corto!

Empezamos pues

# apt-get install ssmtp

Esto te va a borrar cualquier software que tengas de envío de correos electrónicos en el sistema.

Modificamos el fichero de configuración

# vi /etc/ssmtp/ssmtp.conf
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=nombre@dominio.com

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=SERVIDOR_SMTP
AuthUser=USUARIO
AuthPass=PASSWORD
UseTLS=YES
UseSTARTTLS=YES
# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=NOMBRESERVIDOR.DOMINIO.COM

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
#FromLineOverride=YES

Cerramos el fichero de configuración y listos (si, no hay nisiquiera servicio a reiniciar ni aplicar configuraciones!)

# echo "hola" | mail -s "test" admin@dominio.com
# mutt -a /var/log/backups/Backup_XXX-20161010.log -- admin@dominio.com

Lo primero a lo cutre y lo segundo adjuntando un mail.

Fuente: stackexchange

Notas:
Me he encontrado usando un servidor de correo que no me permitía mandar correos electrónicos si no le definía correctamente el from, para ello tendremos que modificar el fichero /etc/ssmtp/revaliases y dejarlo así:

root:info@xxx.cat:mail.xxx.cat

Luego si vamos a usar mutt en el crontab para mandar mails también se lo definimos

0  4    * * *   root /root/scripts/xxx-owncloud.sh /var/log/backups/Backup_xxx_cloud-$(date "+\%Y\%m\%d").log && mutt -a /var/log/backups/Backup_xxx_cloud-$(date "+\%Y\%m\%d.log") -e 'my_hdr From:info@xxx.cat' -s "[Backup-xxxCloud] xxx Cloud" -- info@xxx.cat
||| Seguir leyendo... >>>

Pàgina següent »

guy fawkes