Подождите монтирования, пока процесс не будет занят

Подождите монтирования, пока процесс не будет занят

Я пишу/читаю на SSD через NVMe. Я хотел бы размонтировать разделы SSD и перемонтировать их после записи и перед чтением, чтобы избежать проблем с кэшированием. Кажется, когда я пытаюсь выполнить эту операцию, я получаю сообщение об ошибке, в котором говорится, что устройство занято, и оно не выполняет это действие.

Вот команды

/root/bin/mountfs -u
sleep 5
/root/bin/mountfs -m
sleep 10

Вот 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

Есть ли в bash способ программно дождаться завершения всех операций чтения/записи, чтобы устройства не были заняты и я мог успешно перемонтировать разделы для очистки кэшей контроллера NVMe/ОС?

Связанный контент