Как изменить папку для временных файлов 1с сервера взаимодействия на linux
Имеется запущенный 1с сервер взаимодействие на линукс. Столкнулись с проблемой при загрузке информационной базы из .dt (файловый формат хранения) в postgreSQL:
"Ошибка загрузки информационной базы. В информационную базу загружены не все данные по причине: На устройстве нет свободного места '/tmp/v8_1xeSwD_a.tmp'. 28(0x0000001C): No space left on device"
По нашим предположениям - это связанно с небольшим количеством места на системном диске (чуть меньше 4Гб). Хочется изменить место хранения и взаимодействия с временными файлами на другой диск, но как это сделать?
В /home/usr1cv8/.bashrc и /home/usr1cv8/.profile добавлена переменная TMPDIR с нужным каталогом для хранения. И команда env отображает эту переменную с корректным значением, но всё равно при рестарте службы, временные файлы пишутся в /tmp папку
Ответы (3 шт):
Выключи tmpfs
systemctl disable tmp.mount
Или удали строчку в fstab.
Добавление свапа и увеличение tmpfs в случае с одинес не поможет.
Если и в этом случае не хватит, то самое надежное монтирование другого каталога поверх темпа в корне.
mount -o bind /data/tmp /tmp
(можно добавить в fstab)
По переменной - её надо прописать /etc/init.d/srv1cv83 стартовом скрипте. В моей установке это bash скрипт и переменная добавляется через перед #invoke function main
export TMPDIR=/data/tmp/
Но я не видел такой переменной в документации к серверу.
всегда хороший вариант обратиться к официальной документации.
https://its.1c.ru/db/metod8dev/content/1736/hdoc гласит, что можно указать отдельный каталог для временных файлов для пользователя, под которым выполняется 1С.
достаточно в .bash_profile внести:
export TMPDIR=/path/to/drive/for/temp
и 1с будет писать все туда, а системный каталог для временных файлов останется на месте
Получилось изменить путь для хранения временных файлов путем указания переменной среды TMPDIR в файле, который в моем случае назывался "/etc/systemd/system/[email protected]" (Операционная система Debian11, версия сервера 1С 8.3.21.1674) в блоке [Service] прописал строчку Environment=TMPDIR=Путь
