ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Re: [apache-talk] Re: [apache-talk] Как скопир



In <XFMail.990127151159.skiller@comset.net> skiller@comset.net 
(skiller@comset.net) wrote:
 s> Hi!

 s> On 26-Jan-99 Khimenko Victor wrote:
>>>> UNIX'ы добавляют 1-цу к количеству ссылок в i-node (hard links)
>>>> при открытии файла и вычитают ее при закрытии. Пока количество
>>>> ссылок в i-node не станет равным нулю, файл с диска стерт не
>>>> будет и с ним можно продолжать работать.
>> MS> Это на самом деле так?
 s> ...
>> после чего rpm запускается, стирает себя и записывает на то же место новый
>> исполняемый файл (ни и конечно изменяет базу -- это уж само собой). Как это

 s> Очень удобно также делать гарантировано-временные файлы как
 s> $fp=fopen('file.txt','w+'); // Создает файл на диске
 s> unlink('file.txt');         // УДАЛЯЕТ этот файл
 s> ...                         // Здесь можно писать и читать этот файл итп...
 s> fclose($fp);                // Закрыть файл - файл тут же исчезает из 
каталога
 s>                             // так как он уже давно удален...

 s> Если программа прервалась по какой-то причине (уср нажал "стоп"), то файло 
не
 s> остается, а также удаляется тк дескриптор будет закрыт...

Угу. Как я уже замечал при наличии прав можно файл все равно "поймать" в /proc 
...

>> P.P.S. BTW именно поэтому нельзя стереть подкаталог, который является текущим
>> для какой-либо программы: у подкаталогов вышеописанный счетчик изменяется
>> и при смене текущего каталога, а удалять подкаталог разрешается только тогда,
>> когда счетчик будет равен 2 (в Linux'е -- в некоторых других *nix'ах (обычно
>> старых) дело обстоит не так и путем команд
>> -- cut --
>> mkdir testdir
>> ln testdir testdir/newlink

 s> Ээээ... Нельза делать хардлинк на каталог! Извини. Только симлинк.

Эта, однака, да. Похоже у нас совсем с головкой плохо. Читать разучились.
Да, в Linux'е (да и в большинстве современных Linux'ов) -- только symlink'и.
Однако на Linux'е свет клином не сошелся.

>> можно чудно тратить память на диске впустую; иногда прямо так не проходит,
>> но аналогичная программа на C срабатывает; иногда такие шутки доступны только
>> root'у :-)

 s> Ага, еще прикольно:

 s> $fp=fopen('text.txt','w+'); // создать файл - размер=0
 s> fputs($fp,' ');             // Запишем что-ньть...
 s> fseek($fp,1024*1024,0);     // сикнуть на мегабайт вперед
 s> fputs($fp,' ');             // там запишем что-то
 s> fclose($fp);                // закроем файло

 s> Вопрос:
 s> 1. На сколько меньше стало места на диске?
 s> 2. Какой размер файла?
 s> Ответ:
 s> 1. на 512 байт.
На ext2fs -- на 4096 байт, на minix'е -- 1049600 байт, на vfat'е (FAT32) -- 
1052672 байт (не считая возможных потерь на расширение каталога).
 s> 2. 1Мб+1 байт.
 s> Вот так.... создали метровый файл, а места не убавилось....
Да хоть и гиговый. Только это не во всех *nix'ах так. И при чем тут Apache ?

 s> PS. Масдай отсасывает...
Насчет Windows -- не знаю, а в Novell'е, к примеру, это поддерживалось уже
давненько.



=============================================================================
=               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                 =



 




Copyright © Lexa Software, 1996-2009.