Hi!
On 26-Jan-99 Khimenko Victor wrote:
>>> UNIX'ы добавляют 1-цу к количеству ссылок в i-node (hard links)
>>> при открытии файла и вычитают ее при закрытии. Пока количество
>>> ссылок в i-node не станет равным нулю, файл с диска стерт не
>>> будет и с ним можно продолжать работать.
> MS> Это на самом деле так?
...
> после чего rpm запускается, стирает себя и записывает на то же место новый
> исполняемый файл (ни и конечно изменяет базу -- это уж само собой). Как это
Очень удобно также делать гарантировано-временные файлы как
$fp=fopen('file.txt','w+'); // Создает файл на диске
unlink('file.txt'); // УДАЛЯЕТ этот файл
... // Здесь можно писать и читать этот файл итп...
fclose($fp); // Закрыть файл - файл тут же исчезает из каталога
// так как он уже давно удален...
Если программа прервалась по какой-то причине (уср нажал "стоп"), то файло не
остается, а также удаляется тк дескриптор будет закрыт...
> P.P.S. BTW именно поэтому нельзя стереть подкаталог, который является текущим
> для какой-либо программы: у подкаталогов вышеописанный счетчик изменяется
> и при смене текущего каталога, а удалять подкаталог разрешается только тогда,
> когда счетчик будет равен 2 (в Linux'е -- в некоторых других *nix'ах (обычно
> старых) дело обстоит не так и путем команд
> -- cut --
> mkdir testdir
> ln testdir testdir/newlink
Ээээ... Нельза делать хардлинк на каталог! Извини. Только симлинк.
> можно чудно тратить память на диске впустую; иногда прямо так не проходит,
> но аналогичная программа на C срабатывает; иногда такие шутки доступны только
> root'у :-)
Ага, еще прикольно:
$fp=fopen('text.txt','w+'); // создать файл - размер=0
fputs($fp,' '); // Запишем что-ньть...
fseek($fp,1024*1024,0); // сикнуть на мегабайт вперед
fputs($fp,' '); // там запишем что-то
fclose($fp); // закроем файло
Вопрос:
1. На сколько меньше стало места на диске?
2. Какой размер файла?
Ответ:
1. на 512 байт.
2. 1Мб+1 байт.
Вот так.... создали метровый файл, а места не убавилось....
PS. Масдай отсасывает...
SKiller
--
No matter who you are, some scholar can show you the great idea you had
was had by someone before you.
--------------------------
Sergei Keler
WebMaster of "ComSet"
E-Mail: skiller@comset.net
http://www.comset.net
--------------------------
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =