LINUX.ORG.RU

Пропадает место

 , ,


0

1

Всем привет. Не могу понять, куда пропадает место.

Запускаю: watch df и вижу, как каждые 2 секунды уменьшается место по 4-8килобайт на системном разделе. Подумал, что кушают логи, но в тоже время запустил: watch du -s /var/*, и увидел, что когда на системном разделе увеличилось заполнение на 20килобайт и более, то в логах прибавилось лишь 4килобайта. Также запускал на почти на все папки в корне диска du, чтобы увидеть где возрастает размер, но ничего не увидел. То есть, не могу найти папку, которая бы увеличивалась каждые 2 секунды. Увеличение конечно очень незначительное, но не дает мне покоя. Система используется под небольшой домашний медиа-сервер.

Куда копать?

Linux myNAS 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64 GNU/Linux

Также запускал на почти на все папки в корне диска du

Запусти на остальные. И смотри что у тебя примонтировано.

anonymous
()

atop запустить погонять систему и проанализировать лог

anonymous
()
Ответ на: комментарий от anonymous

примонтировано только в /srv/ на другое устройство. там постоянно растет, но на мегабайты - там сохраняются видео файлы с камер наблюдения. ни как не может влиять на основной раздел системы.

Я в стопе просто пока, не понимаю куда еще смотреть

DemonXpPro
() автор топика

когда на системном разделе увеличилось заполнение на 20килобайт и более, то в логах прибавилось лишь 4килобайта

открой для себя blocksize

hebiro8709
()
Ответ на: комментарий от anonymous

там растет, но очень медленно. общее место на диске уменьшается гараздо быстрее

DemonXpPro
() автор топика

Можно попробовать отловить с помощью systemtap. Гугли что-нибудь типа systemtap disk usage, из готовых примеров можно слепить мониторилку попробовать.

BackDoorLover
()

уже отключил логи через service rsyslog stop но место также пропадает по маленьку отключал все сервисы, которые крутятся (установленые мной) толку ноль

DemonXpPro
() автор топика
Ответ на: комментарий от mord0d

вроде нашел, но есть НО. приостановил запись с камер. место остановилось в наборе. в баш скрипте нет никаких записей на диск, лишь переменные и запуск процессов. Из-за чего может такое быть?

Скрипт ниже. Что с ним не так? Кто подскажет?

#!/bin/bash
# Скрипт в бесконечном цикле пингует удалённый хост в инете с интервалом 5 сек
# при первой удачной или неудачной попытке пинга пишется соответствующее сообщение в лог и на экран
# следующая запись в лог делается только при изменении состояния связи
SELF_NAME=`basename "$0"`
#LOG_FILE="/srv/disk1T/log/"$SELF_NAME".log"
#exec 1>>$LOG_FILE
#exec 2>&1

# Узел опроса
IP="#.#.#."
PORT="#"
# Название камеры
CAMERA_NAME="#"
# Кол-во пингов
count=1

DUR="120" # Время записи одного ролика
DUR_TIMEOUT="125"
#BIT="3096k   # битрейт -b $BIT
#FPS="25      # Кадров в секунду -r $FPS
RTSP="###############"$IP":"$PORT"/live/main" # Собственно ссылка rtsp потока, которую можно скопир$

WORK_PATH="/srv/disk1T/CAMERA/"

# бесконечный цикл
while [ true ]; do

        echo "-------------------------------------------------------------------------------------------"
        date
        # пинг с последующей проверкой на ошибки
        result=$(ping -c ${count} ${IP} 2<&1| grep -icE 'unknown|expired|unreachable|time out')
        echo $IP" lost packets: "$result

        if [ "$result" = 0 ]; then

                TIME_NOW=`date +%H-%M-%S`
                DATE_NOW=`date +%Y-%m-%d`

                FILE_NAME=$TIME_NOW".mp4" # название файла в виде 00-00-00.mp4
                CAMERA_DIR=$DATE_NOW"-"$CAMERA_NAME # название папки в виде 2020-01-01-DVOR
                CAMERA_PATH=$WORK_PATH$CAMERA_DIR"/" # папка камеры
                OUT_FILE_NAME=$CAMERA_PATH$FILE_NAME # путь к файлу записи

                mkdir $CAMERA_PATH
                timeout -k 5 $DUR_TIMEOUT ffmpeg -rtsp_transport tcp -t $DUR -i $RTSP -y -vcodec copy -f mp4 $OUT_FILE_NAME
        fi

        if [ "$result" != 0 ]; then

                echo "Camero OFF!"
                # 5 сек задержка
                sleep 5

        fi
done
DemonXpPro
() автор топика
Ответ на: комментарий от DemonXpPro

в баш скрипте нет никаких записей на диск, лишь переменные и запуск процессов. Из-за чего может такое быть?

systemd берёт stdout/stderr любого запускаемого им процесса и пайпает в journald. Чем больше у тебя всяких echo в скрипте, тем быстрее растёт лог, всё логично.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

они не запущены сейчай

root@myNAS:~# service journald stop Failed to stop journald.service: Unit journald.service not loaded. root@myNAS:~# service systemd stop Failed to stop systemd.service: Unit systemd.service not loaded. root@myNAS:~#

DemonXpPro
() автор топика
Ответ на: комментарий от anonymous

Он по умолчанию не пишется не диск.

Я знаю что пишу. Дефолт Debian 10:

% grep 'Storage' /etc/systemd/journald.conf
#Storage=auto

journald.conf(5):

… «auto» is similar to «persistent» …

Defaults to «auto».

А за то что мне пришлось врубать виртуалку с Debian ради копипасты конфига и мана ты мне должен кофе! ☺

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

не знал про это) спасибо) перенаправил весь вывод на /dev/null потестирую, но пока вроде не уменьшается место) похоже проблема решена) Всем ОГРОМНОЕ СПАСИБИЩЕ! В особенности mord0d

DemonXpPro
() автор топика
Ответ на: комментарий от DemonXpPro

service systemd stop

Это делается только так:

% systemctl poweroff

Или канонично:

% shutdown -p now

Потому что systemd — это PID 1, грохнешь его, помрут все.

service journald stop

Он называется systemd-journald (вроде; виртуалку я уже потушил, так что дальше сам ☺), и я не рекомендую его останавливать: если у тебя что-то загнётся, диагностировать будет нечем.

и кстати, в какой файл всё попадает в journald?

journald делит логи (типа logrotate или newsyslog), присваивая им хэш. Путь не помню, но ты их лучше не трогай, а настрой лимиты в конфиге, оно само почистит.

mord0d ★★★★★
()
Ответ на: комментарий от DemonXpPro

В особенности mord0d

Ты не поверишь, я вообще не линуксоид и линукс вижу нечасто. ☺

но пока вроде не уменьшается место

Настрой лимиты в journald, оно выше этих лимитов расти не будет, старые логи будут тереться, новые писаться.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Я знаю что пишу.

Не знаешь. «Auto» означает запись только если существует /var/log/journal/, которого по умолчанию нет. А перенаправление в syslog там как раз включено.

anonymous
()
Ответ на: комментарий от anonymous

«Auto» означает запись только если существует /var/log/journal/, которого по умолчанию нет.

Нуок. Я проверять не буду, мне лень. :3

mord0d ★★★★★
()

Кеши, логи, базы данных… Там куча всего может быть. Сохрани куда нибудь развесовку папок и подожди месяц, потом сравни.

kirill_rrr ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.