Páginas

martes, 7 de julio de 2015

Particiones gpart FreeBSD bsdtar

FreeBSD y gpart para reparticionar la particion de 364GB destinada a datos y crear dos particiones, la primera dedicada a guardar un archivo tar.gz del sistema root y la segunda de datos.

Como crear una imagen del sistema raiz completo archivo.tar.gz con bsdtar
Como restaurar el sistema raiz con bsdtar.

Enumerar las particiónes del disco para ver la configuracion actual:
# gpart show ada0


El esquema de partición actual.

/dev/ada0p1 freebsd-boot - 512G
/dev/ada0p2 freebsd-ufs - 98G
/dev/ada0p3 freebsd-swap - 4G
/dev/ada0p4 freebsd-ufs - 364G

/dev/ada0p4 es la partición a modificar.

Lo primero es hacer copia de seguridad de todos los datos al servidor con rsync.

$ rsync -avz --stats /mnt/datos/* root@192.168.1.254:/volume1/NetBackup/datos-HD-500-dell/
...
Number of files: 33,909 (reg: 24,404, dir: 9,505)
Number of created files: 33,848 (reg: 24,360, dir: 9,488)
Number of regular files transferred: 24,360
Total file size: 94,221,107,499 bytes
Total transferred file size: 94,055,122,224 bytes
Literal data: 94,055,122,224 bytes
Matched data: 0 bytes
File list size: 1,260,226
File list generation time: 0.003 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 91,464,319,664
Total bytes received: 577,095

sent 91,464,319,664 bytes  received 577,095 bytes  4,876,437.33 bytes/sec
total size is 94,221,107,499  speedup is 1.03

Eliminar la partición de datos (364G):
# gpart delete -i 4 ada0

Tengo 364G libres

Crear una partición de 100G:
# gpart add -s 100G -t freebsd-ufs ada0
ada0p4 added


La siguiente partición ocupa el resto de espacio libre:
# gpart add -t freebsd-ufs ada0
ada0p5 added

/dev/ada0p5 (264G) es la partición de datos.
/dev/ada0p4 (100G) la partición donde se guardarán las imagenes de copia de seguridad del sistema raiz (tar.gz).

Por ultimo crear los sistemas de ficheros:
# newfs -U /dev/ada0p4


# newfs -U /dev/ada0p5


Poner etiquetas (label):

$ glabel label systemtar /dev/ada0p4
$ glabel label datos /dev/ada0p5

# ls /dev/label/
datos  systemtar

Montar la partición de datos:

# mkdir /mnt/datos

Cambiar los permisos del directorio /mnt/datos a un usuario sin privilegios
# chown carles /mnt/datos

# mount -t -o rw /dev/ada0p5 /mnt/datos
# chown carles /mnt/datos

 Copiar los datos con rsync desde el servidor al directorio local:
$ rsync -avz --stats root@192.168.1.254:/volume1/NetBackup/datos-HD-500-dell/ /mnt/datos/

Number of files: 33,910 (reg: 24,404, dir: 9,506)
Number of created files: 2,637 (reg: 2,560, dir: 77)
Number of regular files transferred: 2,560
Total file size: 94,221,107,499 bytes
Total transferred file size: 7,147,728,070 bytes
Literal data: 7,147,728,070 bytes
Matched data: 0 bytes
File list size: 365,294
File list generation time: 0.014 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 58,503
Total bytes received: 7,151,528,689
...

Copia de seguridad con bsdtar del sistema raiz:

Iniciar el sistema en modo single user:

Pulsar la barra espaciadora para detener la cuenta atrás y luego la tecla 2 (single user)

Presionar Intro para la shell por defecto y teclee la contraseña de root si la ha implementado en su servidor.

Copia de seguridad del sistema:

En el símbolo del sistema teclear:

# fsck -p
# mount -u /
# swapon -a
# adjkerntz -i

Crear el directorio donde se guarda el archivo tar.gz
# mkdir /mnt/sysbsdtar

Montar la particion  (100G), a la que volcaremos la copia bsdtar del
sistema raiz freebsd, para recuperarlo en caso de querer volver a un estado
anterior:

# mount -t ufs -o rw /dev/ada0p4 /mnt/sysbsdtar

Cambiar al directorio raiz (particion a respaldar):
# cd /

Realizar la copia de respaldo:
# bsdtar cvfz /mnt/sysbsdtar/ada0p2-7-7-2015.tar.gz --exclude=home *

Despues de finalizar la copia desmontamos la particion:
# umount /mnt/sysbsdtar
# reboot


Restaurar la copia del sistema:

Iniciar en modo single user

Presionar Intro para la shell por defecto.

En el símbolo del sistema teclear:

# fsck -p
# mount -u /
# swapon -a
# adjkerntz -i

Formatear el sistema de ficheros a restaurar (Perdera todos los datos)
# newfs -U /dev/ada0p2

Crear el directorio
# mkdir /mnt/raiz
# mkdir /mnt/copia

Montar particiones
# mount -t ufs -o rw /dev/ada0p2 /mnt/raiz
# mount -t ufs -o ro /dev/ada0p4 /mnt/copia

# cd /mnt/raiz

Restaurar particion raiz
# bsdtar xvzf /mnt/copia/ada0p2-7-7-2015.tar.gz .

# cd /
Desmontar particion:
# umount /mnt/copia
# reboot

Unix es genial!.

domingo, 5 de julio de 2015

Flash Java FreeBSD 10

Chrome

# pkg install chromium
# pkg install icedtea-web
# rehash
# ln -s /usr/local/lib/IcedTeaPlugin.so /usr/local/share/chromium/plugins/

Firefox
# pkg install firefox
# pkg install nspluginwrapper
# mkdir -p /home/carles/.mozilla/plugins
# chown carles:carles /home/carles/.mozilla/plugins
# ln -s /usr/local/lib/IcedTeaPlugin.so /home/carles/.mozilla/plugins/
# exit
$ nspluginwrapper -v -a -i

# su
# cd /usr/ports/www/swfdec-plugin
# make install clean
# rehash
# ln -s /usr/local/lib/browser_plugins/swfdec-plugin/libswfdecmozilla.so /home/carles/.mozilla/plugins/
# exit
$ nspluginwrapper -v -a -u


Unix es genial!.

sábado, 4 de julio de 2015

Actualizar pkg

Corregir errores del sistema

No encuentra una librería:

shared library libcfitsio.so.0.1 not found

Buscar la libreria:
# pkg info -x cfitsio
cfitsio-3.350

Crear el enlace:
# ln -s /usr/local/lib/libcfitsio.so /usr/local/lib/libcfitsio.0.1

Forzar la actualización de pkg:

Versión actual de pkg:
# pkg info pkg
pkg-1.2.4_1

# cd /usr/ports/ports-mgmt/pkg
# make deinstall; make reinstall

# pkg info pkg
pkg-1.3.8_3

Se recomienda reconstruir todos los paquetes ejecutando los siguientes comandos, en sus servidores:
# pkg check -Ba
Checking all packages: 100%

# pkg upgrade

FreeBSD es genial!.

viernes, 3 de julio de 2015

FreeBSD 10.1 configurar repositorios

Configurar repositorios FreeBSD 10.1 después de finalizar la instalación base del sistema:

Solo tiene que modificar el fichero /etc/pkg/FreeBSD.conf y cambiar::
latest por release/0/

# ee /etc/pkg/FreeBSD.conf


# pkg update

Crear el index
# cd /usr/ports
# make index

Instalar fuentes del kernel FreeBSD 10.1
# fetch ftp://ftp6.freebsd.org/pub/FreeBSD/releases/amd64/10.1-RELEASE/src.txz
# tar -C / -xzvf src.txz

Instalar entorno gráfico kde:
# pkg install xorg
# pkg install kde

Archivo /etc/rc.conf
dbus_enable="YES"
hald_enable="YES"
kdm4_enable="YES"

Paquete idioma castellano kde4
# pkg install es-kde-l10n-4.10.5

FreeBSD 10.1 + kde4 instalado.


FreeBSD ha simplificado el proceso de aplicación de parches de seguridad. Permite a un administrador mantener un sistema actualizado utilizando freebsd-update.

# freebsd-update fetch
# freebsd-update install

El sistema puede comprobar automáticamente las actualizaciones una vez al día mediante la adición de esta entrada al archivo /etc/crontab:

@daily root freebsd-update cron

Serán descargados automáticamente los parches, si existen, pero no se aplican. El usuario root enviará  un correo electronico para que los parches puedan ser revisados e instalados manualmente con freebsd-update install.

Puede desinstalar las mas recientes actualizaciones en caso de problema:
# freebsd-update rollback
uninstalling ...


Unix es genial!.

Montar almacenamieto USB FreeBSD

El soporte para dispositivos de almacenamiento USB esta integrado en el kernel GENERIC.

Utilice dmesg para confirmar que la unidad aparece en el buffer de mensajes del sistema:


Para que el dispositivo sea mountable como un usuario normal, hacer al usuario miembro del grupo operator utilizando pw.
# pw usermod carles -G operator

Lo siguiente es asegurarse que operator está habilitado para leer y escribir en el dispositivo
# ee /etc/devfs.rules
[localrules=5]
add path 'da*' mode 0660 group operator

# pkg install fusefs-ntfs

Habilitar la regla en /etc/rc.conf
# ee /etc/rc.config
devfs_system_ruleset="localrules"

Indicar al sistema que permita a usuarios regulares montar sistemas de archivos agregando a /etc/sysctl.config
# ee /etc/sysctl.conf
vfs.usermount=1

# sysctl vfs.usermount=1
vfs.usermount: 0 -> 1

Crear un directorio y hacer que pertenezca user group primario del usuario.
# mkdir /mnt/carles
# chown carles:carles /mnt/carles
# ls -ld /mnt/carles/
drwxr-xr-x  2 carles  carles  512 Jul  3 03:24 /mnt/carles/

Suponiendo que el dispositivo USB esta conectado, aparece como /dev/da0 y formateado con el sistema de archivos FAT32, montamos como usuario normal (read write).
$ mount_msdosfs -o rw /dev/da0 /mnt/carles/


Antes de desconectarlo puede desmontar el dispositivo:
# umount /mnt/carles

En caso de dispositivo de almacenamiento USB formateado con el sistema de archivos NTFS
# pkg install fusefs-ntfs
# kldload fuse
# mkdir /mnt/ntfs
# chown carles:carles /mnt/ntfs
$ ntfs-3g -o rw /dev/da0s1 /mnt/ntfs

Cargar el modulo con el sistema, agregar al archivo /boot/loader.conf
# ee /boot/loader.conf
fuse_load="YES"

Unix es genial!.