Páginas

Mostrando entradas con la etiqueta Particion. Mostrar todas las entradas
Mostrando entradas con la etiqueta Particion. Mostrar todas las entradas

martes, 10 de marzo de 2026

Formatear y montar dispositivo USB exFAT en FreeBSD 14.3

Fuente:

https://docs.freebsd.org/en/books/handbook/filesystems/

En FreeBSD 14.3, el sistema no tiene soporte nativo para exFAT en el kernel. Para el montaje de un disco USB exFAT (/dev/da0 o /dev/da0p1 /dev/da0s1), se necesita utilizar FUSE y el puerto fusefs-exfat.

Instalar los paquetes necesarios

pkg install fusefs-libs fusefs-exfat

pkg info | grep -i exfat
exfat-utils-1.4.0_1    Utilities to create, check, label and dump exFAT filesystem
fusefs-exfat-1.4.0_1   Full-featured exFAT FS implementation as a FUSE module

Cargar el módulo FUSE

kldload fusefs

Para cargar siempre al inicio

sysrc kld_list+="fusefs"

Identificar correctamente el dispositivo

dmesg
da0 at umass-sim0 bus 0 scbus1 target 0 lun 0
da0: <ASMT USB 3.0 TOSATA 0> Fixed Direct Access SPC-4 SCSI device
da0: Serial Number 0000000000A3
da0: 400.000MB/s transfers
da0: 38166MB (78165360 512 byte sectors)
da0: quirks=0x2

Particionar /dev/da0 desde FreeBSD 14.3

Desmontar si está montado (por seguridad)

umount /dev/da0p1 2>/dev/null || true 

Formatear dispositivo /dev/da0

Borrar todo y crear tabla GPT (destructivo)

sudo gpart destroy -F da0
da0 destroyed

gpart create -s gpt da0 
da0 created

Agregar una partición que ocupe todo el disco con el tipo ms-basic-data que Windows/macOS reconocen como exFAT

gpart add -t ms-basic-data -l "MiSSD" da0
da0p1 added

Formatear la partición (da0p1)

mkexfatfs /dev/da0p1
mkexfatfs 1.4.0
Creating... done.
Flushing... done.
File system created successfully.

Crear punto de montaje y montar la particion

mkdir /mnt/usb
mount.exfat /dev/da0p1 /mnt/usb
FUSE exfat 1.4.0 (libfuse2)

Mostrar espacio libre en disco

df -h /mnt/usb 
Filesystem    Size   Used   Avail Capacity  Mounted on
/dev/da0p1     37G   1.6M     37G     0%    /mnt/usb

Listar las particiones

gpart show da0
=>      40  78165280  da0  GPT  (37G)
        40  78165280    1  ms-basic-data  (37G)

El dispositivo real suele ser

/dev/da0p1 (GPT con letra p)
/dev/da0s1 (MBR/slice con letra s)

Es importante desmontar antes de desconectar

umount /mnt/usb
FreeBSD es genial!.

jueves, 19 de febrero de 2026

Migración de SSD a disco de mayor capacidad en FreeBSD 14.3 send receive vía USB

Estado actual del sistema

zpool status
zpool list 
zpool list -t all

Identificar discos

geom disk list
camcomtrol devlist

Anotar el disco actual (ada0) y el nuevo disco USB (da0)


Limpiar el disco nuevo completamente

gpart destroy -F da0
dd -if=/dev/zero of=/dev/da0 bs=1M count=100

Crear tabla de particiones GPT

gpart create -s gpt da0

Partición de arranque EFI (si el sistema usa UEFI)

gpart add -t efi -s 260M -l efiboot-new da0

Partición de arranque BIOS/GPT (para compatibilidad legacy)

gpart add -t freebsd-boot -s 512k -l gptboot-new da0

Partición swap

gpart add -t freebsd-swap -s 8G -a 1M -l swap0 da0

Particion ZFS (el resto del disco)

gpart add -t freebsd-zfs -a 1M -l zroot-new da0

Para sistemas UEFI


Montar partición EFI del disco nuevo

newfs_msdos -F 32 -c 1 /dev/da0p1
mount -t msdosfs /dev/da0p1 /mnt

Copiar EFI loader desde el actual disco

mkdir -p /mnt/EFI/BOOT
cp -r /boot/efi/EFI/BOOT /mnt/EFI/

umount /mnt

Crear pool temporal en el nuevo disco

Crear pool temporal con nombre diferente para evitar conflictos
zpool create -o altroot=/mnt \
             -o ashift=12 \
             -O compression=lz4 \
             -O atime=off \
             -O xattr=sa \
             -O acltype=posix \
             -m none \
             zroot-new /dev/da0p3

Verificar

zpool status zroot-new

Listar todos los datasets a migrar

zfs list -H -o name -t filesystem,volume

Tomar snapshot recursivo de todo el pool (Shell zsh)

sudo zfs snapshot -r zroot@migracion

Verificar snapshot creado

zfs list -t snapshot -o name | grep "$migracion" 
zroot@migracion
zroot/ROOT@migracion
zroot/ROOT/14.3-RELEASE-filebrowser-tailscale-serve-certs-https@migracion
zroot/ROOT/14.3-RELEASE_2026-02-14_193200@migracion
zroot/ROOT/default@2026-02-14-19:32:00-0
zroot/ROOT/default@2026-02-17-17:48:09-0
zroot/ROOT/default@migracion
zroot/home@migracion
zroot/home/carlos@migracion
zroot/tmp@migracion
zroot/usr@migracion
zroot/usr/ports@migracion
zroot/usr/src@migracion
zroot/var@migracion
zroot/var/audit@migracion
zroot/var/crash@migracion
zroot/var/log@migracion
zroot/var/mail@migracion
zroot/var/tmp@migracion

Enviar snapshot raíz primero

zfs send -Lec zroot@migration-$(date +%Y%m%d) | \
    zfs receive -Fuv zroot-new

Enviar recursivamente todos los datasets hijos

zfs send -RLec zroot@migration-$(date +%Y%m%d) | \
    zfs receive -Fuv zroot-new

Banderas (flags)

-R Recursivo (todos los datasets hijos)
-L Incluye large blocks
-e Embed data (bloques pequeños inline)
-c Comprime el stream
-F En receive: fuerza rollback si es necesario
-u No monta los datasets al recibirlos
-v Verbose

Comprobar la replicación


Comparar conjuntos de datos entre pools

zfs list -r zroot
zfs list -r zroot-new

Verificar propiedades

zfs get all zroot
zfs get all zroot-new

Cantidad de instantáneas

zfs list -t snapshot -r zroot | wc -l
zfs list -t snapshot -r zroot-new | wc -l

Configurar bootfs en el nuevo pool

zpool set bootfs=zroot-new/ROOT/default zroot-new

Verificar

zpool get bootfs zroot-new

Ajustar cachefile y otros parámetros del pool

zpool set cachefile=/boot/zfs/zpool.cache zroot-new

Ver propiedades del pool original para replicarlas

zpool get all zroot

Montar el dataset raíz del nuevo disco

zfs set mountpoint=/mnt zroot-new/ROOT/default
zfs mount zroot-new/ROOT/default

Verificar /boot/loader.conf

cat /mnt/boot/loader.conf

Debe contener algo como:

zfs_load="YES"
vfs.root.mountfrom="zfs:zroot/ROOT/default"

Si el nombre del pool cambió, actualizar:

sed -i '' 's/zroot-new/zroot/g' /mnt/boot/loader.conf

También verificar /etc/fstab (en ZFS puro suele estar sin referencias a ada0)

cat /mnt/etc/fstab

Cambiar el disco y primer arranque


Apagar el sistema

shutdown -p now

Desconectar el disco viejo Conectar el nuevo disco en el slot interno (ya no como USB) Comprobar en BIOS/UEFI que el nuevo disco sea el primero en el orden de arranque Arrancar

Verificación después del arranque


Comprobar salud del pool

zpool status
zpool list

Verificar que todos los datasets montaron

zfs list -t filesystem

Verificar espacio disponible (debe reflejar el disco nuevo mayor)

df -h

Verificar que el sistema arrancó desde el disco correcto

geom disk list
camcontrol devlist

Limpiar snapshots de migración

zfs destroy -r zroot@migracion

Problemas y posibles soluciones después del primer arranque


Renombrar zpool zroot-new a zroot

zpool import -f zroot-new zroot

Error

zpool export zroot-new Cannot unmount /

Es el error clásico: el dataset raíz (/) está montado desde zroot-new, así que ZFS no puede desmontarlo en caliente

Solución Desde loader prompt o LiveCD


Desde el LiveCD

zpool import -f zroot-new zroot
zpool set bootfs=zroot/ROOT/default zroot
zpool export zroot

zpool import -f zroot-new zroot
   zpool set bootfs=zroot/ROOT/default zroot
   zpool export zroot hecho.

Reiniciar

shutdown -r now

FreeBSD al arrancar y no encontrar zroot buscará pools disponibles. Si el disco nuevo ya está interno, lo encontrará como zroot-new y podrás importarlo con el nombre correcto.

Después de reiniciar sin el LiveCD el sistema arranca desde el nuevo disco duro.

Estos dos errores son normales y esperables en este proceso.

1. swapon: /dev/da0p3: No such file or directory, 
2. Import of zpool cache /etc/zfs/zpool.cache failed

El archivo /etc/fstab del sistema nuevo todavía referencia el dispositivo del disco USB (da0) que ya no existe. Ahora el disco está interno, probablemente como ada0 o nvme0ns1.

Montar el sistema de ficheros rw

mount -u -o rw /

Averiguar cómo se llama el disco ahora geom disk list o camcontrol devlist.

geom disk list                                    
Geom name: ada0
Providers:
1. Name: ada0
   Mediasize: 250059350016 (233G)
   Sectorsize: 512
   Mode: r3w3e7
   descr: WDC WDS250G2B0A-00SM50
   lunid: 5001b448b8a2a91f
   ident: 192686806761
   rotationrate: 0
   fwsectors: 63
   fwheads: 16

Cambiar la línea de swap, por ejemplo

/dev/da0p3  none   swap  sw   0   0
 por
/dev/ada0p3  none   swap  sw   0   0

Mejor aún, usar la etiqueta (label) GPT que es independiente del nombre del dispositivo

gpart show -l ada0
=>       40  488397088  ada0  GPT  (233G)
         40     532480     1  efiboot0  (260M)
     532520       1024     2  gptboot0  (512K)
     533544        984        - free -  (492K)
     534528   16777216     3  swap0  (8.0G)
   17311744  471085056     4  zroot-new  (225G)
  488396800        328        - free -  (164K)
ls /dev/gpt/
efiboot0 gptboot0 swap0

En el archivo /etc/fstab usar la etiqueta en lugar del dispositivo

...
/dev/gpt/swap0	  none	  swap	  sw	 0	0
...

Error 2

Import of zpool cache /etc/zfs/zpool.cache failed

El zpool.cache fue generado cuando el pool se llamaba zroot-new y estaba en da0. Ahora el pool se llama zroot y el dispositivo cambió. El caché está obsoleto.

Sencillamente borrarlo, ZFS lo regenera automáticamente

rm /etc/zfs/zpool.cache

Antes de reiniciar para verificar el nombre correcto del dispositivo

swapinfo -h
Device              Size     Used    Avail Capacity
/dev/gpt/swap0      8.0G       0B     8.0G     0%

Si el sistema arrancó pero con errores no críticos Ambos errores no impiden el funcionamiento del sistema. El swap simplemente no está activo hasta que corrijas el fstab, y el zpool.cache se regenera solo. Si llegaste al prompt de login, la migración fue exitosa.

Reiniciar

shutdown -r now

Error 3.

Can't open /dev/gpt/efiboot0

Ese error indica que el bootloader está buscando la partición EFI por su label GPT (efiboot0) pero no la encuentra, probablemente porque el label en el disco nuevo es diferente o no se asignó correctamente

ls /dev/gpt
efiboot0 gptboot0 swap0

Montar el sistema de ficheros rw

mount -u -o rw /

Solución. Renombrar el label al esperado

...
/dev/gpt/efiboot0    /boot/efi	  msdosfs    rw	   2	2
...

Corregir el label

gpart modify -i 1 -l efiboot0 ada0

Si la partición EFI estaba vacía, reinstalar loader

newfs_msdos -F 32 -c 1 /dev/ada0p1
mount -t msdosfs /dev/ada0p1 /mnt
mkdir -p /mnt/EFI/BOOT
cp /boot/loader.efi /mnt/EFI/BOOT/BOOTX64.EFI

umount /mnt

 

FreeBSD es genial!.

martes, 25 de marzo de 2025

Crear Particiones en Disco Duro USB Sistema de Archivos ZFS con gpart en FreeBSD 14

# Identificar el disco USB

Primero, verifica el nombre del disco USB conectado:

 gpart show

O también:

 camcontrol devlist

El disco USB generalmente aparecerá como daX (por ejemplo: da0).


# Eliminar particiones existentes (si es necesario)

Si el disco ya tiene particiones, puedes limpiarlo con:

 gpart destroy -F /dev/daX

(Reemplaza daX con tu dispositivo, como da0).


# Crear tabla de particiones (GPT)

Crea una tabla de particiones GPT en el disco:

 gpart create -s GPT /dev/daX

# Crear partición para ZFS

Crea una partición que ocupe todo el disco (o el espacio deseado):

 gpart add -t freebsd-zfs -a 1M -l ZFSBACKUP /dev/daX

-t freebsd-zfs: Tipo de partición para ZFS.
-a 1M: Alineación a 1 MiB (mejor rendimiento en discos modernos).
-l ZFSBACKUP`: Etiqueta de la partición (opcional pero útil para identificación).

# Verificar la partición creada

 gpart show /dev/daX

Deberías ver algo como:

=>   40  625142368  da0  GPT  (298G)
     40  625142368    1  freebsd-zfs  (298G)  [ZFSBACKUP]

# Crear el pool ZFS en la partición

Ahora crea un pool ZFS en la partición (no en el disco completo, `/dev/daX`, sino en la partición, /dev/daXp1 o /dev/gpt/ZFSBACKUP si usaste etiqueta):

 zpool create -f zbackup /dev/gpt/ZFSBACKUP

- zbackup: Nombre del pool (cámbialo si lo prefieres).
- f Fuerza la creación si hay restos de particiones anteriores.

# Configurar propiedades del pool (opcional)

Para mejorar la compatibilidad y rendimiento:

 zfs set mountpoint=none zbackup
 zpool set autoexpand=on zbackup
 zpool set listsnapshots=on zbackup

# Habilitar compresión (recomendado)

 zfs set compression=lz4 zbackup

# Verificar el pool ZFS

 zpool status

zfs list

# Enviar instantáneas (snapshots) al disco USB

Desde el sistema origen (donde está el ZFS con los datos), usa zfs send y zfs receive:


# En el sistema origen:

zfs snapshot pool/dataset@backup1
zfs send pool/dataset@backup1 | zfs receive zbackup/dataset

Si el disco está conectado a otro sistema, usa ssh:

 zfs send pool/dataset@backup1 | ssh user@host "zfs receive zbackup/dataset"

# Notas importantes:

USB y ZFS: ZFS en discos USB puede ser lento y no es ideal para uso intensivo. Se recomienda usar discos con conexión SATA o NVMe si es posible.
- Montaje automático: Si deseas que el pool se monte al conectar el disco, agrega zfs_enable="YES" en /etc/rc.conf.
- Exportar el pool: Antes de desconectar el disco, ejecuta:

 zpool export zbackup

Esto asegura que el pool se cierre correctamente y se liberen todos los recursos asociados. Luego, el disco puede ser desconectado de forma segura.

¡Listo! Ahora tienes un disco USB con ZFS listo para recibir snapshots de FreeBSD.

 

FreeBSD es genial!.

jueves, 28 de octubre de 2021

Crear particiones e instalar FreeBSD 13.0 zfs UEFI

A diferencia del valor predeterminado de bsdinstall para ZFS, no establece puntos de montaje explícitos para conjuntos de datos, sino que se basa en la herencia.

Este conjunto de instrucciones configura partición freebsd-boot, una particion ESP para la instalacion UEFI, intercambio cifrado con GELI y un grupo raíz.  

Iniciar el instalador de FreeBSD


Elegir shell para el particionado manual

Limpiar disco - Esta es una operación destructiva


# gpart destroy -F ada0
ada0 destroyed

Configurar nueva tabla de partición GPT.

Antes de poder crear particiones de disco, se debe marcar el disco con el tipo de esquema de partición que utilizará, gpart create con la marca -s y el esquema, como gpt o mbr. Aquí, el disco usa el esquema GPT


# gpart create -s gpt ada0
ada0 created

Añadir particiones con etiquetas (label -l) para acceder a ellas por su nombre.

Crear partición boot para arranque Legacy (aunque no será utilizada). No puede ser mayor de 545k.

 # gpart add -t freebsd-boot -s 512k -l boot0 ada0
ada0p1 added

UEFI ESP arranque UEFI.


# gpart add -t efi -s 200M -l efi0 ada0 
ada0p2 added

ESP debe ser vfat/fat32:


# newfs_msdos -F 32 -c 1 /dev/ada0p2
/dev/gpt/efi0: 2003 sectors in 2003 FAT12 clusters (512 bytes/cluster)
BytesPerSec=512 SecPerClust=1 ResSectors=1 FATs=2 RootDirEnts=512 Sectors=2048 \
Media=0xf0 FATsecs=6 SecPerTrack=63 Heads=255 HiddenSecs=0

Partición swap

# gpart add -t freebsd-swap -l swap0 -a 1m -s 2048m ada0

Resto del disco

# gpart add -t freebsd-zfs -l zroot0 -a 1m ada0

Crear el root pool

.
# zpool create -R /mnt -o cachefile=/tmp/zpool.cache -O mountpoint=/ \
    -O atime=off -O canmount=off -O compression=on \
    zroot gpt/zroot0
# zfs create -o canmount=off -o mountpoint=none zroot/ROOT
# zfs create -o mountpoint=/ zroot/ROOT/default

Definir el conjunto de datos de arranque predeterminado para este zpool

# zpool set bootfs=zroot/ROOT/default zroot

Crear el resto de los sistemas de archivos


# zfs create -o canmount=off zroot/usr
# zfs create zroot/usr/home
# zfs create zroot/usr/local
# zfs create zroot/usr/obj
# zfs create zroot/usr/src
# zfs create zroot/usr/ports
# zfs create -o canmount=off zroot/var
# zfs create zroot/var/jail
# zfs create zroot/var/log
# zfs create zroot/var/tmp
# zfs create zroot/tmp
# zfs set setuid=off zroot/tmp
# zfs set setuid=off zroot/var
# zfs set exec=off zroot/var
# zfs set setuid=off zroot/usr/src 
# zfs set exec=off zroot/usr/src
# zfs set setuid=off zroot/usr/ports
# zfs set exec=on zroot/var/tmp

Copiar el caché de zpool


# mkdir -p /mnt/boot/zfs
# cp /tmp/zpool.cache /mnt/boot/zfs

No olvide elegir la opción shell para terminar la configuración al final de la instalación.


# exit

Elegir

 Install  

Keymap Selection

Set Hostname

Distribution Select 

Partitioning

En este punto elegir la opción:

open a shell and partition by hand

# exit

Fetching Distribution

Comprobing checksum

Archive Extraction 

New Password

Retype New Password

Network Configuration

Would you like to configure
IPv6..? No

Resolver Configuration

Select local or UTC (Greenwich Mean Time) clock

System Configuration 

System Hardening

Add User Accounts (Yes)

Final Configuration 

Exit (Apply configuration and exit installer) OK

Manual Configuration Yes

Elegir Yes para seguir con la configuración


# cat >> /boot/loader.conf<<EOF
zfs_load="YES"

zpool_cache_load="YES"
zpool_cache_name="/boot/zfs/zpool.cache"
zpool_cache_type="/boot/zfs/zpool.cache"

vfs.root.mountfrom="zfs:zroot/ROOT/default"
EOF

# cat >> /etc/rc.conf<<EOF
zfs_enable="YES"
zfsd_enable="YES"
EOF

# cat >> /etc/fstab<<EOF
/dev/gpt/efi0 /boot/efi0 msdosfs rw,late 0 0
/dev/swap.eli none swap sw 0 0
EOF

# mount -t devfs devfs /dev
# rm /dev/null

Crear punto de montaje y montar ESP


# mkdir /boot/efi0 
# mount -t msdosfs /dev/gpt/efi0 /boot/efi0 

UEFI con nomenclatura de reserva:


mkdir -p /boot/efi0/efi/boot
cp /boot/loader.efi /boot/efi0/efi/boot/bootx64.efi

Llegados a este punto debería estar listo.


# exit

# Reboot


# zfs create zroot/usr/home/carlos

Enlace simbólico y permisos.


# ln -s /usr/home /home
# chmod 1777 /var/tmp
# chmod 1777 /tmp

Usar git para obtener el código fuente de FreeBSD 13.0

(Si necesita construir módulos del kernel)


# pkg install git
# git clone -b releng/13.0 https://git.freebsd.org/src.git /usr/src

Clonar colección de puertos con git


# git clone https://git.freebsd.org/ports.git /usr/ports

Crear Directorios de usuario


# pkg install xdg-user-dirs
$ xdg-user-dirs-update

# cat /etc/fstab
/dev/gpt/efi0 /boot/efi0 msdosfs rw,late 2 2
/dev/swap.eli none swap sw 0 0

# cat /boot/loader.conf
security.bsd.allow_destructive_dtrace=0
cryptodev_load="YES"
zfs_load="YES"
zpool_cache_load="YES"
zpool_cache_name="/boot/zfs/zpool.cache"
zpool_cache_type="/boot/zfs/zpool.cache"

vfs.root.mountfrom="zfs:zroot/ROOT/default"
# cat /etc/rc.conf
clear_tmp_enable="YES"
syslogd_flags="-ss"
sendmail_enable="NONE"
hostname="bsdzfs"
ifconfig_ue0="DHCP"
sshd_enable="YES"
ntpd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"
zfs_enable="YES"
zfsd_enable="YES"
# gpart show
=>       40  976773088  ada0  GPT  (466G)
         40       1088     1  freebsd-boot  (544K)
       1128       2048     2  efi  (1.0M)
       3176        920        - free -  (460K)
       4096    4194304     3  freebsd-swap  (2.0G)
    4198400  972574720     4  freebsd-zfs  (464G)
  976773120          8        - free -  (4.0K)
# zfs list
NAME                        USED  AVAIL     REFER  MOUNTPOINT
zroot                      1.83G   444G       96K  /
zroot/ROOT                 1011M   444G       96K  none
zroot/ROOT/default         1011M   444G     1011M  /
zroot/tmp                   104K   444G      104K  /tmp
zroot/usr                   863M   444G       96K  /usr
zroot/usr/home               96K   444G       96K  /usr/home
zroot/usr/local             191M   444G      191M  /usr/local
zroot/usr/obj                96K   444G       96K  /usr/obj
zroot/usr/ports             192K   444G       96K  /usr/ports
zroot/usr/ports/distfiles    96K   444G       96K  /usr/ports/distfiles
zroot/usr/src               672M   444G      672M  /usr/src
zroot/var                   432K   444G       96K  /var
zroot/var/jail               96K   444G       96K  /var/jail
zroot/var/log               144K   444G      144K  /var/log
zroot/var/tmp                96K   444G       96K  /var/tmp

https://wiki.freebsd.org/MasonLoringBliss/ZFSandGELIbyHAND

FreeBSD es genial!.

domingo, 24 de octubre de 2021

Actualizar zpool en FreeBSD 13.0 UEFI partition

Después de actualizar el pool el código de inicio del disco duro también se debe actualizar, de manera que se pueda iniciar el sistema sin problemas.

El instalador de FreeBSD 13.0 con zfs elige una partición de arranque BIOS tradicional freebsd-boot y una partición UEFI efi .

gpart show
=>        40  1953525088  ada0  GPT  (932G)
          40      532480    1   efi  (260M)
      532520        1024    2   freebsd-boot  (512K)
      533544         984        - free -  (492K)
      534528     4194304    3   freebsd-swap  (2.0G)
     4728832  1948794880    4   freebsd-zfs  (929G)
  1953523712        1416        - free -  (708K)
# zpool upgrade -a
This system supports ZFS pool feature flags.

Enabled the following features on 'zroot':
  allocation_classes

If you boot from pool 'zroot', don't forget to update boot code.
Assuming you use GPT partitioning and da0 is your boot disk
the following command will do it:

        gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 2 da0

Si el arranque de su sistema es UEFI al ejecutar el código anterior y hacer un reboot el sistema no se iniciará.
    
Para actualizar una partición EFI:
# mount -t msdosfs /dev/ada0p1 /mnt
# mv /mnt/boot/efi0/efi/boot/bootx64.efi /mnt/efi/boot/bootx64.efi-old
# cp /boot/loader.efi /mnt/boot/efi0/efi/boot/bootx64.efi
# umount /mnt
# reboot

FreeBSD es genial!.

lunes, 24 de junio de 2019

Copiar restaurar particiones Linux


Instalar Arch Linux UEFI

Iniciar el sistema desde un usb live Sytem Rescue con soporte UEFI


lsblk lista información a cerca de todos los dispositivos de bloques disponibles


# lsblk

root@sysresccd /root % lsblk 

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT

sda      8:0    0  55.9G  0 disk 

├─sda1   8:1    0   512M  0 part 

├─sda2   8:2    0    30G  0 part 

└─sda3   8:3    0  25.4G  0 part 

sdb      8:16   0 465.8G  0 disk 

└─sdb1   8:17   0 211.5G  0 part 

sdc      8:32   1   1.9G  0 disk 

└─sdc1   8:33   1   1.9G  0 part /livemnt/boot

loop0    7:0    0 317.1M  1 loop /livemnt/squashfs

lsblk con la opción -f devuelve información sobre sistemas de archivos

# lsblk -f

NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT

sda                                                                   

├─sda1 vfat    CC3A-1EDB 

├─sda2  ext4    38b21575-cd76-4ff5-9733-654c1d50f30f   21,4G    22% /

└─sda3  ext4    e9774ab0-2d95-4820-8c1e-d76563970c86     21G    11% /home

sdb                                                                   

└─sdb1  vfat  SYSRCD-4_5_ 6843-DF82    /livemnt/boot

sdc                                                                

└─sdc1  ext4 ArchlinuxHP   d007c890-2620-44fc-aaeb-5e40f68fa40

loop0  squashfs                                               /livemnt/squashfs 

https://docs.freebsd.org/es/books/handbook/disks/#backup-basics

“No hacer nada” no es un programa, pero es la estrategia de respaldo más extendida. No tiene coste. No hay un calendario de respaldos a seguir. Simplemente hay que decir que no. Si algo le sucediera a sus datos sonría y acostúmbrese a su nueva situación.


Copia de seguridad con tar

Se crea el punto de montaje y se monta en modo rw (lectura y escritura) el disco duro externo donde se guardarán las copias de seguridad en formato tar.gz

root@sysresccd /root % mkdir /mnt/backuprestore
root@sysresccd /root % mount -t ext4 -o rw /dev/sdc1 /mnt/backuprestore

Se crean los puntos de montaje uno para cada partición con nombres que sirvan de referencia.

# mkdir /mnt/archlinuxboot
# mkdir /mnt/archlinuxraiz
# mkdir /mnt/archlinuxhome

Mantar en modo ro (sólo lectura) las particiones del sistema a respaldar

root@sysresccd /mnt % mount -o ro -t vfat /dev/sda1 /mnt/archlinuxboot
root@sysresccd /mnt % mount -o ro -t ext4 /dev/sda2 /mnt/archlinuxraiz
root@sysresccd /mnt % mount -o ro -t ext4 /dev/sda3 /mnt/archlinuxhome

Opciones y argumentos del comando tar
c crea la copia usando tar
v activa el modo verbose para mostrar información por pantalla
z comprime los datos utilizando el formato gzip
p preserva los permisos de los ficheros (predeterminado para root)
f manda la salida a un fichero en lugar de a la salida estandar
--exclude excluye ficheros y directorios de la copia

Se crea y exporta la variable temporal fecha
root@sysresccd /mnt % FECHA=$(date +%d%m%Y)
root@sysresccd /mnt % export FECHA
root@sysresccd /mnt % env | grep FECHA
FECHA=24062019
root@sysresccd /mnt % echo $FECHA
24062019

Una vez hecho esto se cambia al punto de montaje de la partición raiz (sda2) para realizar la copia.
root@sysresccd /mnt % cd /mnt/archlinuxraiz
root@sysresccd /mnt/archlinuxraiz % tar czvf /mnt/backuprestore/Archlinux/archlinuxsda2/archilinuxsda2-$FECHA.tar.gz *

Entrando en el punto de montaje de la partición boot (sda1) para la copia en formato tar.gz utilizando tar
root@sysresccd /mnt % cd /mnt/archlinuxboot
root@sysresccd /mnt/archlinuxboot % tar czvf /mnt/backuprestore/Archlinux/archlinuxsda1/archilinuxsda1-$FECHA.tar.gz *

Por último lo mismo para home (sda3)

root@sysresccd /mnt % cd /mnt/archlinuxhome
root@sysresccd /mnt/archlinuxraiz % tar czvf /mnt/backuprestore/Archlinux/archlinuxsda3/archilinuxsda3-$FECHA.tar.gz --exclude=lost+found *

Restaurar particiones

Iniciar un live usb System Rescue con soporte UEFI

Crear el punto de montaje y montar en modo ro (sólo lectura) la partición que contiene el o los archivos comprimidos a restaurar

# mkdir /mnt/backuprestore
# mount -t ext4 -o ro /dev/sdb1 /mnt/backuprestore

Restaurar la partición raiz

Formatear la partición a restaurar (se perderan todos los datos)
# mkfs.ext4 /dev/sda2

Crear el punto de montaje y montar en modo rw (lectura y escritura) la partición a restaurar

# mkdir /mnt/archraiz
# mount -t ext4 -o rw /dev/sda2 /mnt/archraiz

Entrar en la partición sda2
# cd /mnt/archraiz

Extraer el archivo (no olvide el punto final)
# tar xvzf /mnt/backuprestore/Archlinux/archlinuxsda2/archilinuxsda2-24062019.tar.gz .

Restaurar partición boot (sda1)

Formatear la partición a restaurar (se perderan todos los datos)
# mkfs.vfat /dev/sda1

Crear el punto de montaje y montar en modo rw (lectura y escritura) la partición a restaurar
# mkdir /mnt/archboot
# mount -t vfat -o rw /dev/sda1 /mnt/archboot

Entrar en la partición sda1
# cd /mnt/archboot

Extraer el archivo

# tar xvzf /mnt/backuprestore/Archlinux/archlinuxsda1/archilinuxsda1-24062019.tar.gz .

Restaurar partición home

Formatear la partición a restaurar (se perderan todos los datos)
# mkfs.ext4 /dev/sda3

Crear el punto de montaje y montar en modo rw (lectura y escritura) la partición a restaurar
# mkdir /mnt/archhome
# mount -t ext4 -o rw /dev/sda3 /mnt/archhome

Entrando en la partición sda3

# cd /mnt/archraiz

Extraer el archivo
# tar xvzf /mnt/backuprestore/Archlinux/archlinuxsda3/archilinuxsda3-24062019.tar.gz . 

Finalmente desmontar las particiones

# cd
# umount /mnt/archraiz
# umount /mnt/archboot
# umount /mnt/archhome
# umount /mnt/backuprestore

O desmontar recursivamente.
La relación entre los puntos de montaje está determinada por /proc/self/mountinfo. El sistema de archivos debe ser especificado por la ruta del punto de montaje. Un recursivo desmontado por el nombre del dispositivo o UUID es incompatible.

# umount -R /mnt/*

Reiniciar el sistema
# reboot

OpenBSD es genial!.

lunes, 10 de junio de 2019

Instalar Arch Linux UEFI

Instalar Arch Linux 2019 modo UEFI (Unified Extensible Firmware Interface) y tabla de particiones GPT necesaria para arrancar en modo UEFI desde la BIOS.



Descargar Arch Linux y grabar la instantánea de Arch Linux en una unidad USB (unidad flash). Arrancar el sistema desde el dispositivo USB cambiando el orden de arranque desde la BIOS o utilizando la tecla F12 o F9 (dependiendo de su sistema).

Al finalizar el proceso de arranque lo primero es comprobar la conexión a Internet:
root@archiso ~ # ping -c3 www.freebsd.org

Si en lugar de conexión por cable nos conectarnos mediante wifi Arch Linux pone a su disposición la herramienta wifi-menu.
root@archiso ~ # wifi-menu

Comprobamos con fdisk -l los discos del sistema disponible y las particiones creadas.

El particionado del disco /dev/sda (SSD) puede realizarse con diferentes herramientas en este caso se utiliza cfdisk.

root@archiso ~ # cfdisk /dev/sda
En el cuadro de diálogo (Select label type) se selecciona el tipo gpt.
Luego se crea una nueva partición de 512M (Partition size) partición 1 del tipo EFI system.
A continuación una segunda partición de 30G del tipo ext4
Por último una cuarta partición con el resto del espacio libre del disco tipo ext4. Se desplaza hasta Write y sale con Quit. Tendremos este esquema de particionado:

root@archiso ~ # fdisk -l
Disposit.  Comienzo     Final Sectores Tamaño Tipo
/dev/sda1      2048   1050623  1048576   512M Sistema EFI
/dev/sda2   1050624  63965183 62914560    30G Sistema de ficheros de Linux
/dev/sda3  63965184 117231374 53266191  25,4G Sistema de ficheros de Linux

Crear los sistemas de ficheros
root@archiso ~ # mkfs.fat -F32 /dev/sda1
root@archiso ~ # mkfs.ext4 /dev/sda2
root@archiso ~ # mkfs.ext4 /dev/sda3

Montar las particiones

root@archiso ~ # mount /dev/sda2 /mnt
root@archiso ~ # mkdir /mnt/home
root@archiso ~ # mount /dev/sda3 /mnt/home
root@archiso ~ # lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 55,9G  0 disk
├─sda1   8:1    0  512M  0 part
├─sda2   8:2    0   30G  0 part /
└─sda3   8:3    0 25,4G  0 part /home

Elegir lista de mirror

# pacman -Sy
# pacman -S reflector
# reflector --verbose -l 5 --sort rate --save /etc/pacman.d/mirrorlist

sda1 es nuestra partición UEFI, se usará más tarde. El comando pacstrap con la opción -i (ver la información) instala los paquetes base base-devel dentro de /mnt

root@archiso ~ # pacstrap -i /mnt base base-devel

El comando genfstab con las opciónes U (use UUIDs) y p (Excluye pseudofs montados)

root@archiso ~ # genfstab -U -p /mnt >> /mnt/etc/fstab

Se necesita chroot a mnt para entrar en el nuevo sistema instalado

root@archiso ~ # arch-chroot /mnt /bin/bash

Establecer la locale

root@archiso ~ # nano /etc/locale.gen descomentar la siguiente línea.
es_ES.UTF-8 UTF-8

Generar la locale
root@archiso ~ # locale-gen

Enlace a hora locale dentro de su zone

root@archiso ~ # ln -sf /usr/share/zoneinfo/Europe/Madrid /etc/localtime

Enlace a hora locale dentro de su time zone
root@archiso ~ # hwclock --systohc --utc

root@archiso ~ # echo archlinux > /etc/hostname

root@archiso ~ # nano /etc/hosts
127.0.0.1 localhost.localdomain archlinux.unix.bcn archlinux

Instalar networkmanager
root@archiso ~ # pacman -S networkmanager

Activar la conexión a Internet cableada
(wired) durante el arranque del sistema.
root@archiso ~ # systemctl enable NetworkManager

Establecer la contraseña de root
root@archiso ~ # passwd

Archivo /etc/pacman.conf descomentar:

 [multilib]
Include = /etc/pacman.d/mirrorlist

El siguiente paso donde se instala el group bootloader
es el más relevante  en el proceso de instalaciónn de UEFI:

1.- Instalar los paquetes necesarios

root@archiso ~ # pacman -S grub efibootmgr

2.- Crear el directorio efi y montar la partición efi sda1 a este directorio

root@archiso ~ # mkdir /boot/efi
root@archiso ~ # mount /dev/sda1 /boot/efi

Comprobar el punto de montaje con lsblk
root@archiso ~ # lsblk

3.- Iniciar la instalación de grub-install

root@archiso ~ # grub-install --target=x86_64-efi --bootloader-id=GRUB --efi-directory=/boot/efi

4.- Se necesita generar el archivo de configuración para el grub bootloader instalado.
root@archiso ~ # grub-mkconfig -o /boot/grub/grub.cfg

5.- Configuraión adicional.

root@archiso ~ # mkdir -p /boot/efi/EFI/BOOT
root@archiso ~ # cp /boot/efi/EFI/GRUB/grubx64.efi /boot/efi/EFI/BOOT/BOOTX64.EFI

BOOTX64.EFI es el bootloader reconocido por efi en caso de fallo durante el arranque del sistema.

6.- Crear script de inicio para efi /boot/efi/startup.nsh

root@archiso ~ # nano /boot/efi/startup.nsh
bcf boot add 1 fs0:\EFI\GRUB\grubx64.efi "Grub bootloader"
exit

Identificar los gráficos del sistema# lspci | grep VGA

Entorno gráfico
# pacman -S xorg-server xorg-xinit
# pacman -S xf86-video-intel
# pacman -S mesa mesa-demos

Para una computadora portátil o netbook necesita los controladores para el soporte de entrada del panel táctil
# pacman -S xf86-input-synaptics

Crear usuario
# useradd -m -g users -G audio,storage,optical,video,wheel -s /bin/bash carles

Montar las USB, Micro SD
# pacman -S gvfs

Montar iphone
# pacman -S gvfs-afc

Montar dispositivo android
# pacman -S gvfs-mtp

Crea las carpetas por defecto del usuario automáticamente
# pacman -S xdg-user-dirs

Instalar deepin
# pacman -S deepin-extra

Editar el archivo /etc/lightdm/lightdm.conf
# nano /etc/lightdm/lightdm.conf

Buscar la siguiente linea (Ctrl + W)
#greeter-session=example-gtk-gnome

Descomente y cambie como se muestra abajo
greeter-session=lightdm-deepin-greeter

Luego habilite el administrador de inicio de sesión de lightdm para que se inicie en el arranque.
# systemctl enable lightdm.service -f

El archivo .xinitrc se crea en el directorio del usuario sin privilegios
$ nano /home/carles/.xinitrc
exec startdde

Cambiar los permisos del archivo
# chown carles:users /home/carles/.xinitrc

Salir del entorno chroot
# exit

# exit

Desmontar las particiones
# umount /mnt/home
# umount /mnt/boot/efi
# umount /mnt

Reiniciar el sistema
#reboot

Instalar ifplugd. Un demonio que activa - desactiva las interfaces de red al insertar - quitar el cable.
# pacman -S ifplugd

Si hay algún problema como parpadeo o pantalla en blanco después de instalar Deepin, instalar lightdm-deepin-greeter usando el siguiente comando

# pacman -S lightdm-deepin-greeter

Y reinstalar deepin:

# pacman -Syu deepin

# reboot


Se prescinde de la partición Swap
Un portátil con 8 GB de memoria RAM y un diso duro SSD Intel de 60 GB. Los datos se guardan en el servidor de archivos de la LAN por lo que no se necesita mayor capacidad de almacenamiento.



OpenBSD es genial!.

viernes, 12 de mayo de 2017

Particionar instalar Arch Linux UEFI 2017 KDE

Arrancar el instalador en modo UEFI

Comprobar que está conectado a la red
# ping -c 2 www.freebsd.org

Instalar fuente terminus-font y activar durante la instalación


# pacman -S terminus-font
# pacman -Ql terminus-font
# setfont ter-v32n

Q = Consulta a la basde de datos de paquetes
l = listar todos los archivos pertenecientes a un paquete

Listar discos (dispositivos de bloque)

# lsblk

parted - linea de comando


# parted /dev/sda      # abrir parted y seleccionar el disco
# mklabel gpt          # configrurar disco GPT


Particionar disco


# mkpart ESP 1MiB 513MiB          # crear /boot 512MB /dev/sda1
# set 1 boot on                   # marcar /boot como partición de arranque
# mkpart linux-swap 513MiB 2.5GiB # crear swap 2.5GB (8GB RAM)
# mkpart ext4 2.5GiB 50GiB        # partición raiz /
# mkpart ext4 50GiB 100%          # resto espacio libre /home


salir parted

Crear los sistemas de ficheros

    mkfs.vfat /dev/sda1 # EF00
    mkfs.ext4 /dev/sda2 # 8300
    mkfs.ext4 /dev/sda4 # 8300


Activar partición swap

    mkswap /dev/sda3 # 8200
    swapon /dev/sda3


Montar particiones

    mount /dev/sda2 /mnt
    mkdir -p /mnt/boot
    mount /dev/sda1 /mnt/boot
    mkdir -p /mnt/home
    mount /dev/sda4 /mnt/home


Elegir lista de mirror

# pacman -Sy
# pacman -S reflector
# reflector --verbose -l 5 --sort rate --save /etc/pacman.d/mirrorlist

Install los paquetes básicos arch linux

# pacstrap -i /mnt base base-devel

Configurar fstab

# genfstab -U -p /mnt >> /mnt/etc/fstab

Entorno chroot

# arch-chroot /mnt

Configurar lenguaje y ubicación

nano /etc/locale.gen # descomentar


es_ES.UTF-8 UTF-8  
es_ES ISO-8859-1  
es_ES@euro ISO-8859-15
# locale-gen
# export LANG=es_ES.UTF8-8 > /etc/locale.conf
# export LC_TIME=es_ES.UTF-8 >> /etc/locale.conf


Zona horaria

# ln -s /usr/share/zoneinfo/Europe/Madrid > /etc/localtime

# hwclock --systohc --utc

# pacman -Sy

Nombre de host

# echo archlinux > /etc/hostname

Contraseña de root y crear un nuevo usuario

# passwd

# pacman -S sudo bash-completion

# useradd -m -s /bin/bash -g users -G wheel,storage,power carles

# passwd carles

Permitir a los usuarios del grupo wheel tareas administrativas con sudo

# visudo
Descomentar la linea %wheel% ALL=(ALL)

Consola en español

# echo KEYMAP=es >> /etc/vconsole.conf 
# echo FONT >> /etc/vconsole.conf
# echo FONT_MAP= >> /etc/vconsole.conf

# mkinitcpio -p linux

Instalar y Configurar bootloader

# bootctl --path=/boot install

Opciones por defecto bootloader

# nano /boot/loader/loader.conf

default arch
timeout 0 # segundos de espera Elegir kernel/OS
editor  0 # segundos de espera para editar parametros del kernel


Buscar PARTUUID de la partición raiz y crear una entrada en bootloader

# blkid -s PARTUUID -o value /dev/sda2 >> /boot/loader/entries/arch.conf

64f369f2-608a-4f5c-bb4c-27d7146ef482


Edite ese archivo

# nano /boot/loader/entries/arch.conf

title   Arch LInux
linux   /vmlinuz-linux
initrd  /initramfs-linux.img
options root=PARTUUID=64f369f2-608a-4f5c-bb4c-27d7146ef482 rw


Recrear Initramfs

# mkinitcpio -p linux

Actualizar el bootloader

# bootctl update

Salir del entorno chroot

# exit

Desmontar particiones

# umount -R /mnt

# reboot

Continuar con la instalación

username root
passwd

# ip addr

# systemctl enable dhcpcd

# systemctl start dhcpcd

# ping -c 2 www.freebsd.org

# pacman -S xorg

# pacman -S xterm xorg-xclock xorg-twm xorg-xinit xorg-server-utils

# pacman -S plasma kdebase

# pacman -S ttf-freefont ttf-linux-libertine-g artwiz-fonts

# pacman -S ttf-ubuntu-font-family cantarell-fonts freetype2

# pacman -S ttf-droid ttf-linux-libertine ttf-liberation

# pacman -S ttf-fira-mono ttf-fira-sans ttf-gentium fontsproto

# pacman -S ttf-dejavu noto-fonts font-bitstream-speedo

# systemctl enable sddm

# reboot

Intercambiar teclado es y us con la combinación de teclas alt-shift

# nano /etc/X11/xorg.conf.d/10-keyboard.conf

Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout"  "es,us"
        Option "XkbModel"   "pc104"
        Option "XkbVariant" "deadtilde,"
        Option "XkbOptions" "grp:alt_shift_toggle"
EndSection


# pacman -S libreoffice libreoffice-es

# pacman -S kdegraphics-okular firefox firefox-i18n-es-es

# pacman -S vlc gimp k3b kaffeine dia spectacle

VPN - PIA

Tunel VPN - Private Internet Access

Instalar openvpn

# pacman -S openvpn

Crear el directorio

# mkdir -p /etc/private-internet-access
# cd /etc/private-internet-access

Descargar el archivo openvpn.zip

# wget https://www.privateinternetaccess.com/openvpn/openvpn.zip
# unzip openvpn.zip

Copiar los archivos necesarios

# cd /etc/openvpn/
# cp /etc/private-internet-access/ca.rsa.2048.crt . # no olvide el punto final
# cp /etc/private-internet-access/crl.rsa.2048.pem .

El archivo que contiene el nombre de usuario y contraseña de PIA

# touch password.conf
# vi password.conf
username
password

# chown root:root /etc/openvpn/password.conf
# chmod 600 /etc/openvpn/password.conf

El archivo de configuración PIA

# cp /etc/private-internet-access/France.ovpn /etc/openvpn/pia_vpn.con
# nano /etc/openvpn/pia_vpn.conf

client
dev tun
proto udp4
remote france.privateinternetaccess.com 1198
resolv-retry infinite
nobind
persist-key
persist-tun
cipher aes-128-cbc
auth sha1
tls-client
remote-cert-tls server
auth-user-pass
comp-lzo
verb 1
reneg-sec 0
crl-verify /etc/openvpn/crl.rsa.2048.pem
ca /etc/openvpn/ca.rsa.2048.crt
disable-occ
auth-user-pass /etc/openvpn/password.conf
auth-nocache

Llegados a este punto vamos a comprobar openvpn

# openvpn --config /etc/openvpn/pia_vpn.conf


Crear un script de conexión:

# cd /home/carles
# vim openvpn-pia.sh
###################################
#!/bin/bash
openvpn --config /etc/openvpn/pia_vpn.conf > /dev/null 2>&1 &
###################################

Establecer permisos de ejecución

# chmod +x openvpn-pia.sh

Ejecutar el script
# ./openvpn-pia.sh

# ip addr
Como conectarse usando NetworkManager:

Haga clic derecho en el icono de NetworkManager en la bandeja del sistema
y clic en Configurar conexiones de red
luego haz clic en Agregar (Add)
elige la opción Importar VPN ...
vaya a /etc/openvpn/pia_vpn.conf (nuestro archivo de configuración)
ahora haga clic en Abrir
puerta de enlace (gateway), solo el nombre de dominio debe estar en esta casilla.
para el nombre de usuario, escriba su nombre de usuario p7654321
para la contraseña, escriba la contraseña que acompaña a su nombre de usuario V5thzg8X4C
luego haga clic en Avanzado
establecer puerto de la puerta de enlace y configurarelo en 1198
haga clic en la pestaña Seguridad
establecer el cifrado: a AES-128-CBC
establecer la autenticación HMAC: a SHA-1
haga clic en Aceptar y clic en Aceptar nuevamente.



Actualizar todo el sistema
# pacman -Su

Portátil con dos discos duros ssd, (Intel sata3 60GB y Samsumg EVO sata3 120GB) y dos S.O. instalados, FreeBSD 11 y Arch LInux 2017. Desde la BIOS elijo con cual arrancar. El segundo disdo duro (instalado con un adaptador CADDY) en el lugar reservado a la unidad óptica (DVD).

Listar discos (dispositivos de bloque)

# lsblk

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:16   0 111,8G  0 disk 
├─sda1   8:17   0   512M  0 part /boot
├─sda2   8:18   0  49,5G  0 part /
├─sda3   8:19   0   2,5G  0 part [SWAP]
└─sda4   8:20   0  59,3G  0 part /home
sdb      8:0    0  55,9G  0 disk 
├─sdb1   8:1    0   512K  0 part 
├─sdb2   8:2    0    53G  0 part 
└─sdb3   8:3    0   2,8G  0 part 


# pacman -S parted
# parted /dev/sda


Model: ATA Samsung SSD 840 (scsi)
Disk /dev/sda: 120GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Numero  Inicio  Fin     Tamaño  Sistema de ficheros  Nombre  Banderas
 1      1049kB  538MB   537MB   fat32                        arranque, esp
 2      538MB   53,7GB  53,1GB  ext4
 3      53,7GB  56,4GB  2684MB  linux-swap(v1)
 4      56,4GB  120GB   63,7GB  ext4


Ayuda parted

 (parted) m                                                                
  align-check TYPE N                        check partition N for TYPE(min|opt) alignment
  help [COMMAND]                           print general help, or help on COMMAND
  mklabel,mktable LABEL-TYPE               create a new disklabel (partition table)
  mkpart TIPO-PART [TIPO-SF] INICIO FIN     crea una partición
  name NUMBER NAME                         name partition NUMBER as NAME
  print [devices|free|list,all|NUMBER]     display the partition table, available devices, free
    space, all found partitions, or a particular partition
  quit                                     exit program
  rescue START END                         rescue a lost partition near START and END
  resizepart NUMBER END                    resize partition NUMBER
  rm NUMBER                                delete partition NUMBER
  select DEVICE                            choose the device to edit
  disk_set FLAG STATE                      change the FLAG on selected device
  disk_toggle [FLAG]                       toggle the state of FLAG on selected device
  set NUMBER FLAG STATE                    change the FLAG on partition NUMBER
  toggle [NUMBER [FLAG]]                   toggle the state of FLAG on partition NUMBER
  unit UNIT                                set the default unit to UNIT
  version                                  display the version number and copyright information
        of GNU Parted


FreeBSD es genial!.

domingo, 25 de septiembre de 2016

Instalar Arch Linux 64 bits UEFI KDE Plasma

Instalar Arch Linux x86_64 UEFI KDE Plasma en una máquina virtual.

Nota: En una instalación en disco, la partición raíz no debería ser menor de 50 Gb. Por lo demás el proceso es el mismo.  Con el tamaño actual de los discos esto no es un problema.


Cargar teclado español

# loadkeys es

Listar los dispositivos de bloque del sistema, discos duros, cd-rom, unidades flash, etc.

# lsblk


Particionado con cfdisk

Creamos una primera partición de 20G que será nuestra partición de sitema (root). de tipo linux filesystems.


# cfdisk /dev/sda
   gpt
new 20G  /dev/sda1
type linux filesystems

new 512M /dev/sda2
type Efi Systems

new 4G /dev/sda3
type linux-swap 

new 29G /dev/sda4
type linux filesystems

write quit











# lsblk


Vamos a crear los Sistema de Ficheros y montar particiones

# mkfs.ext4 /dev/sda1

# mount /dev/sda1 /mnt

# mkfs.vfat /dev/sda2

# mkdir -p /mnt/boot/efi

# mount /dev/sda2 /mnt/boot/efi

# mkswap /dev/sda3

# swapon /dev/sda3


# mkfs.ext4 /dev/sda4



# mkdir /mnt/home

# mount /dev/sda4 /mnt/home

# pacstrap /mnt base base-devel grub efibootmgr




# genfstab -U -p /mnt >> /mnt/etc/fstab

# cat /mnt/etc/fstab


Entrar al entorno de instalación

# arch-chroot /mnt /bin/bash


# nano /etc/locale.gen
 es_ES.UTF-8 UTF-8
 es_ES ISO-8859-1


# locale-gen

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

# echo KEYMAP=es > /etc/vconsole.conf

# ln -sf /usr/share/zoneinfo/Europe/Madrid > /etc/localtime

# echo archlinux > /etc/hostname

# mkinitcpio -p linux



# passwd root

Usuario no priveligiado

# useradd -m -g users -G wheel -s /bin/bash carles

# passwd carles

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


# grub-install /dev/sda

# umount /mnt -R

# exit

# exit

# reboot

# ip addr

# systemctl enable dhcpcd

# systemctl start dhcpcd

# ping -c 2 www.freebsd.org

# pacman -S xorg

# pacman -S xterm xorg-xclock xorg-twm xorg-xinit xorg-server-utils

# pacman -S plasma kdebase

# pacman -S ttf-freefont ttf-linux-libertine-g artwiz-fonts

# pacman -S ttf-ubuntu-font-family cantarell-fonts freetype2

# pacman -S ttf-droid ttf-linux-libertine ttf-liberation

# pacman -S ttf-fira-mono ttf-fira-sans ttf-gentium fontsproto

# pacman -S ttf-dejavu noto-fonts font-bitstream-speedo

# systemctl enable sddm

# reboot


Intercambiar teclado es y us con la combinación de teclas alt-shift

$ cat /etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout"  "es,us"
        Option "XkbModel"   "pc104"
        Option "XkbVariant" "deadtilde,"
        Option "XkbOptions" "grp:alt_shift_toggle"
EndSection
# pacman -S libreoffice libreoffice-es

# pacman -S kdegraphics-okular firefox firefox-i18n-es-es

# pacman -S vlc gimp k3b kaffeine gparted spectacle


Unix es genial!.