Мне необходимо было указать точную папку, в которой бы лежали сессии. На сервере крутится один сайт на php в связке с Apache. В php.ini директива session.save_path была установлена на /tmp, поэтому я ожидал в папке /tmp увидеть файлы с сессиями, но увидел папки, внутри которых лежали сессии.
Мне думалось что во всем этом безобразии виноват Apache, но оказалось, что за это отвечает systemd, а именно директива PrivateTmp=true. Осталось её найти.
В папке /usr/lib/systemd ничего подходящего не нашлось, поэтому находим с помощью find.
sudo find / -mount -type f -exec grep -e "PrivateTmp" '{}' ';' -print
поиск показал что такая директива есть в /lib/systemd/apache2.service
Меняем там PrivateTmp=true на PrivateTmp=false и перегружаем сервисы.
systemctl daemon-reload
systemctl restart apache2
Сразу после этого все файлы сессий окажутся в одной папке без подпапок.
Источник:
why php can not see /tmp files