자,이 문제는 이상한 것처럼 보일 수 있습니다, 그것은 아마도,하지만, 내가 저자는 흥미로운 예를 제공하는 I-노드에 대해 배울 this을 읽어 봤는데 어떤 컨텍스트를 제공하기 위해 :열린 파일 설명자에서 파일을 다시 만들 수 있습니까?
{
FILE *fp;
fp = fopen("some.hidden.file","w");
unlink("some.hidden.file"); /* deletes the filename part */
/* some.hidden.file no longer has a filename and is truly hidden */
fprintf(fp,"This data won't be found\n"); /* access the data part */
/*etc*/
fclose(fp); /* finally release the data part */
}
이를 "숨겨진"임시 파일을 만들 수 있습니다.
내 질문은 여기에있는 : 아이 노드를 가리키는 이름unlink()
호출 후 fp
열 개최를 재현 할 수있는 방법이있다?
면책 조항 : 본인은 실제 코드에서이를 수행하지 않습니다. 나는 i-node에 대해 배우는 것만으로도 가능하며 이것이 가능한지 궁금해합니다.
AFAIK, 열린 파일 설명 자에 이름을 제공 할 방법이 없습니다. –
[맨 페이지] (http://linux.die.net/man/2/unlink)에서 : "이름이 파일의 마지막 링크이지만 어떤 프로세스가 여전히 파일을 열었 으면 파일은 계속 존재합니다. 그것을 가리키는 마지막 파일 기술자는 닫혀있다. " –
@ BartFriederichs : 물론, 내가 준 링크에서 설명 된 것입니다. 하지만 실제로 내 질문에 답하지 않습니다. "파일이 파괴되기 전에 현재 열리는"i- 노드 "를 가리키는 파일을 다시 만드는 방법이 있습니까? – ereOn