Na kazdou jednoduchou otazku existuje kratka, jednoducha, snadno pochopitelna - a nespravna - odpoved ...

Pokud ti ale takova staci, tak FreeBSD zna tri casy a jsou to tyto ctyri:

atime       /* time of last access */
mtime       /* time of last modification */
ctime       /* time file changed */
birthtime   /* time file created */

Uz je to jasnejsi ? ;-)

az teraz zacinam do toho znova aspon trochu vidiet.

Neboj, to rychle napravime a zase prestanes.

Prikaz ls vie zobrazit dva casy:
a to nasledujici ctyri ;-) :

ls -lT   zobrazi last modification time
ls -lTu  zobrazi last access time
ls -lTU  # birthtime
ls -lTc  # ctime

Perl a php pozna tri casy:
atime    last access time in seconds since the epoch
mtime    last modify time in seconds since the epoch
ctime    inode change time in seconds since the epoch

Ano

Prikaz stat zobrazuje styri casy:
st_atime, st_mtime, st_ctime, st_birthtime

Jak se to vezme. Misto kterehokoliv udaje muze zobrazit VNOVAL (=-1) kdyz udaj nema k dispozici - takze realne zobrazuje ctyri NEBO MENE udaju.

Jake z tech ctyrech udaju ma a jake nema zalezi na filesystemu, na kterem je zkoumany objekt umisten.

1,Aky je to cas st_birthtime a jeho vyznam?

Na to by ti asi nejlepe odpovedel Kirk McKusick, ktery implementoval UFS/FFS a navrhl UFS2. Jiste to nekde najdes presne, takze jen velmi strucne:

Puvodne melo byt ctime casem vytvoreni souboru. Ukazalo se ale, ze dump v inkrementalnim rezimu potrebuje spis cas vytvoreni inode. Konecna implementace UFS1/FFS tak mela atime, mtime a ctime, kde posledni byl cas vytvoreni inode. Cas vytvoreni souboru ulozen nebyl, protoze po posane zmene vyznamu 'ctime' uz na nej "nezbylo misto". Cas vytvoreni souboru se objevil az na UFS2, a to prave jako birthtime.

To ale mluvime i UFS1/FFS/UFS2. Na jinych filesystemech jsou/mohou byt/presne vyznamy jednotlivych casu jine pripadne nemusi byt nektery z casu na konkretnim filesystemu k dispozici vubec (misto nej bude system vracet -1).

V podstate je to tak, ze chystas-li se pouzit nektery z techto casu, musis zvazit k jakemu presne ucelu a rozhodnout se, zda muzes nektery z udaji pouzit "vzdy", nebo zda proste neobejdes bez toho, abys musel pri zpracovani zohlednit i konkretni typ filesystemu.

Takze, ono to je trochu komplikovane - nejen s poctem dostupnych casu, ale i s presnym vyznamem kazdeho z nich.

A to je jeste uplny nic proti tomu, kdybys chtel svepomocne resit zalohovani a obnovu.

Dan


--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem