如果我有一个打开文件的句柄,是否可以在从文件系统中删除对该文件的所有引用后创建指向该文件的硬链接?
例如,像这样:
fd = fopen("/tmp/foo", "w");
unlink("/tmp/foo");
fwrite(fd, "Hello, world!\n");
create_link_from_fd(fd, "/tmp/hello");
fclose(fd);
具体来说,我想这样做,以便我可以安全地写入大型数据文件,然后将它们原子地移动到位,而不必担心如果我的程序在写入文件的过程中被杀死,我自己会进行清理。