Solusi 1:
FHS tidak menyediakan direktori kosong "standar".
Biasanya sistem Linux menyediakan direktori /var/empty , tetapi direktori ini tidak ditentukan dalam FHS dan mungkin sebenarnya tidak kosong. Sebaliknya, daemon tertentu akan membuat direktori kosong mereka sendiri di sini. Misalnya, openssh menggunakan direktori kosong /var/empty/sshd untuk pemisahan hak istimewa.
Jika kebutuhan Anda akan direktori kosong bersifat sementara, Anda dapat membuat direktori kosong sendiri, sebagai subdirektori dari /run atau /tmp . Jika Anda melakukannya di luar program, Anda dapat menggunakan mktemp -d untuk ini, atau gunakan mkdtemp(3) fungsi C di dalam program Anda. Meskipun jika Anda selalu membutuhkan direktori kosong untuk hadir, pertimbangkan untuk membuatnya di bawah /var/empty seperti yang dilakukan openssh.
Untuk kasus penggunaan ini, buat direktori di bawah /tmp mungkin yang paling cocok, meskipun dalam praktiknya tidak masalah di mana Anda meletakkannya.
Solusi 2:
Anda dapat menggunakan mktemp -d untuk membuat direktori sementara kosong baru dengan izin aman, secara default di /tmp/ . Utilitas akan menampilkan jalur direktori baru pada STDOUT , jadi berguna di shell.
Ini lebih portabel daripada file unit systemd.
Solusi 3:
Pertanyaan Unix ini memiliki beberapa saran untuk membuat direktori "lubang hitam", termasuk sistem file nullfs FUSE.
Solusi 4:
Untuk layanan systemd menyediakan opsi PrivateTmp untuk membuat /tmp pribadi dan /var/tmp direktori yang tidak digunakan bersama oleh proses di luar namespace untuk layanan tersebut dan yang seharusnya kosong (awalnya).
[Service]
ExecStart=...
PrivateTmp=yes