Eu estou escrevendo / lendo para um SSD sobre NVMe. Eu gostaria de desmontar as partições SSD e remontá-las depois de escrever e antes de ler, de modo a evitar problemas de cache. Parece que quando tento executar esta operação, recebo um erro dizendo que o dispositivo está ocupado e não executa esta ação.
Aqui estão os comandos
/root/bin/mountfs -u
sleep 5
/root/bin/mountfs -m
sleep 10
Aqui está o 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
Existe alguma maneira no bash de esperar programaticamente que todas as leituras / gravações sejam concluídas, para que os dispositivos não fiquem ocupados e eu possa remontar com êxito as partições para limpar os caches do Controlador NVMe / OS?
Tags ssd cache nvme scripting unmounting