/tmp.В некоторых дистрибах эта папка монтируется в память. Но если оперативки мало, а чья-то софтина активно пишет в нее, есть смысл перенести папку
/tmp куда-нибудь на диск. Ну а если папка
/tmp лежит на корневом разделе, а на разделе нет места, то это тоже проблема.ㅤ
Самый распространенный и быстрый вариант:
1. Смонтировать новый диск в
/mnt/tmp2. Прокинуть симлинкой
/mnt/tmp → /tmpНо в некоторых случаях софт упоротый и скажет — я ебал писать в симлинку, давай мне нормальный локейшен в
/tmp.Упоротый софт в моем случае была некая многопоточная конвертилка pdf файлов, которая раздувала папку tmp до — я ебёшь! И пока она не сделает свои дела, за собой не уберет.
По опыту скажу — софт никто править не будет, а попросят инженера вбить костыль. Так быстрее и не нужно тратить время разработчика. Да! Так и живем в больших интерпрайзах.
Поэтому изобретают подобный велосипед.
Монтируют новый диск в
/mnt/tmpsudo mkdir /mnt/tmp
sudo chmod 1777 /mnt/tmp
Права 1777 важны для временных директорий, чтобы все пользователи могли создавать файлы, но не удаляли чужие. Единичка это — стинкибит.
Создаем файл и пишем в него:
/etc/systemd/system/mnt-tmp.mount[Unit]
Description=Mount tmpfs on /mnt/tmp
[Mount]
What=tmpfs
Where=/mnt/tmp
Type=tmpfs
Options=mode=1777,size=10G
[Install]
WantedBy=multi-user.target
Название файла не может быть любое, у нас есть путь /mnt/tmp в этом случае файл называем mnt-tmp.mount.
Если было бы /mnt/tmp/bashdays, то файл нам нужно обозвать mnt-tmp-bashdays.mount.
Ага, вот такие нюансы, иначе оно грязно выругается и нассыт тебе в глаз.
По юниту все интуитивно понятно, расписывать не буду.
А потом, как обычно:
sudo systemctl daemon-reload
sudo systemctl enable mnt-tmp.mount
sudo systemctl start mnt-tmp.mount
Да, чтобы процессы использовали новый каталог, в файле
/etc/environment указываем переменную.TMPDIR=/mnt/tmp
Не забываем применить:
source /etc/environment
Проверяем и зачищаем старье:
echo $TMPDIR
df -h /mnt/tmp
sudo rm -rf /tmp/*
Всё, дело в шляпе. Аналогично делается с папкой логов, но там есть свои нюансы, попозже расскажу.
tags: #linux
—
🔔 @bashdays➡️ @gitgate