Saltar al contenido

cuaderno de campo

anotaciones

Menú
  • casa
    • dinou del carrer nou
  • cocina
    • pan
    • repostería
    • verdura
  • huerto
    • instrucciones sobre el huerto
    • plano del número 29
    • huerto del año 2025
  • humanidades
    • fonoteca
    • galería
  • juego
    • colección de roms
    • steamos en steam deck
    • lista de juegos
    • dosbox
  • linux
    • bash
    • sistema operativo
    • ssh
  • web
    • apache
    • css
    • html5
    • javascript
    • mysql
    • php
Menú

tratamiento de archivos en FAT con rsync

Publicada el 1 de septiembre de 201529 de noviembre de 2023 por ernesto
  • sincronización de archivos con --size-only
  • orden de los archivos en FAT
    • rsync -r
    • fatsort
  • problemario
    • device_open: Dispositivo o recurso ocupado!
    • sortFileSystem: FATs don’t match! Please repair file system!
Puesto al día el 8 de setiembre de 2023.

sincronización de archivos con --size-only

dado que el sistema de archivos FAT no registra las fechas de modificación de los archivos, la sincronización de archivos mediante rsync puede suponer la transmisión (una vez tras otra) de todos los archivos implicados en la operación cada vez que se ejecute rsync (aunque no haya habido cambios).

puesto que rsync no tiene manera de saber si los archivos que envía son más recientes que los que encuentra en el destino, el comando vuelve a grabarlo todo (por si acaso). luego, es necesario recurrir a la bandera --size-only («skip files that match in size») para que rsync compare el tamaño del archivo de origen con el tamaño del archivo destino:

rsync -avzP --size-only /media/archivo/radio/ /media/ernesto/SD/

orden de los archivos en FAT

los archivos copiados al dispositivo FAT probablemente aparezcan según se los ha ido grabando y no según otros criterios como el alfabético, que es lo que cabría esperar.

rsync -r

esta cuestión puede solventarse con el uso de la bandera -r (recursivo) de rsync, en lugar de la habitual bandera -a (modo archivo, que equivale a -rlptgoD):

rsync -rvzP --stats /media/origen/ /media/destino

en este punto, cabe recordar que, en el trato con FAT, es conveniente el uso adicional de la bandera --size-only («skip files that match in size») para evitar la copia de los archivos recién copiados.

fatsort

fatsort es una aplicación que pone orden en el sistema de archivos FAT:

fatsort -h

FATSort sorts directory structures of FAT file systems. Many MP3 hardware players don't sort files automatically but play them in the order they were transferred to the device. FATSort can help here.

luego, si se quieren ordenar los archivos copiados al sistema de archivos FAT, basta con la siguiente orden:

fatsort -f /dev/sdb1

donde -f equivale a decir:

Force sorting even if file system is mounted

a 24 de setiembre de 2019, fatsort está en los repositorios de ubuntu 18.04:

sudo apt install fatsortsudo apt install fatsortsudo apt install fatsort

problemario

device_open: Dispositivo o recurso ocupado!

sudo fatsort -f /dev/sdb1

device_open: Dispositivo o recurso ocupado!
openFileSystem: Dispositivo o recurso ocupado!
sortFileSystem: Failed to open file system!
main: Failed to sort file system!

sudo umount /media/ernesto/SD

sudo fatsort -f /dev/sdb1

File system: FAT32.
Sorting directory /
Directory reordered. Writing changes.
[...]

sortFileSystem: FATs don’t match! Please repair file system!

sudo fatsort -f /media/ernesto/SD

sortFileSystem: FATs don't match! Please repair file system!
main: Failed to sort file system!

sudo dosfsck -v /dev/sdb1

fsck.fat 4.2 (2021-01-31)
Checking we can access the last sector of the filesystem
[...]

sudo fatsort -f /media/ernesto/SD

File system: FAT32.
Sorting directory /
Directory reordered. Writing changes.
[...]

Etiquetado como FAT, fatsort, rsync
  • renombrando archivos en bash

    sustiuye 1 por 2 en el nombre de todos los archivos (*): rename "s/1/2/g" *…

  • bin: archivos ejecutables en home

    Puesto al día el 11 de junio de 2025. mkdir ~/bin nano ~/.bashrc ## HOME/bin…

  • sudo en bash sin contraseña

    sudo nano /etc/sudoers nombre ALL=(root) NOPASSWD: /sbin/shutdown nombre ALL=(root) NOPASSWD: /sbin/reboot donde dice nombre debe…

RSS rutas fuera

  • Fight HIV/AIDS With the Hashtag #ChuckSchuldinerDiedOfAIDS 12 de junio de 2025 Paxton Jackson
  • Hoy, en Caminando entre Monstruos, el Saetón de Sierra Morena, con Javier Resines 12 de junio de 2025 Javier Resines
  • Evil Incarnate – Lucifer’s Crown (2023) 10 de junio de 2025 Brett Stevens
  • Talking Death Metal On The Aureus Press Podcast 6 de junio de 2025 Brett Stevens
  • Cruel – Desde las Profundidades del Infierno (2025) 6 de junio de 2025 Belisario
  • International Day of Slayer XX 6 de junio de 2025 Brett Stevens
  • Slayer Igloo Cooler “South of Heaven 16 Oz Can” 4 de junio de 2025 Brett Stevens
  • Beats and yelling: Hate Forest 4 de junio de 2025 Hate Meditations
  • Profanatica Tour Summer 2025 4 de junio de 2025 Brett Stevens

Categorías

apache bash casa cocina corral css fonoteca galería html5 huerto humanidades humanidades digitales jardín javascript juego linux mysql pan php repostería Sin categoría sistema operativo ssh verdura web

Archivo

cuaderno de campo 2011-2025