TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #560 702
Проверка доступности файловых систем (read/write test)

▪️ Базовая проверка записи


touch /mnt/data/.test && rm /mnt/data/.test


Если команда зависает или падает - есть проблемы с файловой системой.

▪️Проверка с таймаутом


timeout 3 bash -c 'touch /mnt/data/.test && rm /mnt/data/.test'


Теперь: если FS зависла - команда завершится по таймауту, скрипт не повиснет

▪️ Измерение latency. Можно измерить время операции:


start=$(date +%s%N)

touch /mnt/data/.test && rm /mnt/data/.test

end=$(date +%s%N)
echo $(( (end - start)/1000000 )) ms


Если операция занимает:

<10 ms - нормально
100–500 ms - уже подозрительно
секунды - проблема


🛠 Готовый скрипт


#!/usr/bin/env bash

MOUNT="/mnt/data"
TIMEOUT=3

start=$(date +%s%N)

if timeout "$TIMEOUT" bash -c "touch $MOUNT/.test && rm $MOUNT/.test"; then
end=$(date +%s%N)
latency=$(( (end - start)/1000000 ))
echo "OK ($latency ms)"
else
echo "FAIL: FS недоступна или зависла"
fi


▪️ Проверка нескольких точек


for m in /data /backup /nfs; do
echo -n "$m: "
timeout 3 bash -c "touch $m/.test && rm $m/.test" \
&& echo "OK" || echo "FAIL"
done


BashTex 📱 #scripts #filesystem
  • 👍 6
More from @bash_tex
  1. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  2. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  3. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  4. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
  5. Oct 1, 2026flock vs fcntl - почему две блокировки одного файла могут вести себя совершенно по-разному…
  6. Sep 30, 2026DEBUG trap - как Bash выполняет код перед каждой командой В Bash есть специальный DEBUG tr…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →