Itu bekerja untuk saya, apa hasilnya strace ln -f -s /var/www/html/releases/build1390 app-current
?
Oh, karena ini adalah direktori yang perlu Anda tambahkan -n
tanpa dereferensi dan ini harus menyelesaikan masalah. -f
benar-benar lebih nyaman karena menambahkan -f hanya menyebabkannya memutuskan tautan. Walaupun saya kira itu mungkin akan terjadi beberapa ratus ms lebih cepat pada sistem yang biasanya dimuat.
Misalnya, jika ARF sudah menunjuk ke / home:
strace Dengan -n
:
strace ln -n -f -s / arf
...
symlink("/", "arf") = -1 EEXIST (File exists)
unlink("arf") = 0
symlink("/", "arf") = 0
strace Tanpa -n
:
strace ln -f -s / arf
...
write(2, "ln: "..., 4ln: ) = 4
write(2, "`arf/': cannot overwrite director"..., 34`arf/': cannot overwrite directory) = 34
write(2, "\n"..., 1) = 1
Jadi tanpa -n
arf akan direferensi, maka memperlakukannya seolah-olah itu sebenarnya /
. Dalam contoh khusus Anda, jika tidak ada kesalahan, saya pikir Anda mungkin telah membuat tautan simbolis baru di dalamnya /var/www/html/releases/build1390 app-current
dan ingin membersihkannya.