
Estoy escribiendo/leyendo en un SSD a través de NVMe. Me gustaría desmontar las particiones SSD y volver a montarlas después de escribir y antes de leer para evitar problemas de almacenamiento en caché. Parece que cuando intento realizar esta operación, aparece un error que dice que el dispositivo está ocupado y no realiza esta acción.
Aquí están los comandos.
/root/bin/mountfs -u
sleep 5
/root/bin/mountfs -m
sleep 10
Aquí está Mountfs.
#!/bin/bash
# Mount/unmount ext4 file systems
exit_status=1
if [ "-m" = "$1" ]
then mount -t ext4 /fsmnt/fs1
mount -t ext4 /fsmnt/fs2
mount -t ext4 /fsmnt/fs3
mount -t ext4 /fsmnt/fs4
exit_status=0
elif [ "-u" = "$1" ]
then umount /fsmnt/fs1
umount /fsmnt/fs2
umount /fsmnt/fs3
umount /fsmnt/fs4
exit_status=0
else echo "mountfs -m | -u"
fi
exit $exit_status
¿Hay alguna forma en bash de esperar mediante programación a que se completen todas las lecturas/escrituras, de modo que los dispositivos no estén ocupados y pueda volver a montar con éxito las particiones para borrar los cachés del controlador NVMe/OS?