У меня есть приложение Django с бэкэндом postgresql. Postgresql время от времени создает временные файлы - это может быть убийственно, если место на диске критично (как в моем случае).
Один из способов решить эту проблему - создать символическую ссылку на другое место хранения, где дисковое пространство не является узким местом. В моем случае postgresql хранит временные файлы в /$PGDATA/base/pgsql_tmp
. У меня большой SSD, смонтированный в /mnt
, поэтому я хочу, чтобы временные файлы находились там. Следующее должно позаботиться об этом:
ln -sTf /mnt/pgsql_tmp $PGDATA/base/pgsql_tmp
chown -R postgres /mnt/pgsql_tmp #ensuring user 'postgres' has the right perms
chmod o+x /mnt
Прежде чем я сделаю это в производстве, я решил проверить это на месте. Я создал /mnt
и /pgsql_tmp
на своем рабочем столе, а затем попробовал ln -sTf /home/hassan/Desktop/mnt/pgsql_tmp /home/hassan/Desktop/pgsql_tmp
.
Но это приводит к тому, что ln: ‘/home/hassan/Desktop/pgsql_tmp’: cannot overwrite directory
. Кто-нибудь может указать, что я делаю не так? Будучи новичком, я действительно пытаюсь понять, как это работает.