Contents
fs commands
fs ls
% fs ls /afs/ifh.de/testsuite/testosd/ m rwxnieprask 2048 2009-06-04 14:18:08 . m rwxnieprask 2048 2009-06-04 13:39:15 .. l rwx ffrank 9 2009-06-09 09:18:13 symli -> testfile1 f rw- ffrank 1000000000 2009-06-04 13:46:01 testfile1 o rw- ffrank 1000000000 2009-06-04 13:55:40 testfile2 o rw- ffrank 1000000000 2009-06-04 13:59:27 testfile3 o rw- ffrank 1000000000 2009-06-04 14:18:17 testfile4
The initial letter signifies the type of entry
m
mountpoint
d
directory
l
symlinks
f
file
o
file in online object storage
w
wiped OSD files (i.e., in object storage, but only archival copies, no online ones available)
- Helpful switches
-fid, display file IDs, alternative to fs getfid
fs osd / fs fidosd
Display file's metadata. Works only for OSD files (i.e., entries with o or w from fs ls)
% fs ls | grep 'testfile[12]' f rw- ffrank 1000000000 2009-06-04 13:46:01 testfile1 o rw- ffrank 1000000000 2009-06-04 13:55:40 testfile2 % fs osd testfile1 Error 22 reading length of metadata % fs osd testfile2 testfile2 has 132 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536900068.4.5.0, osd=2, stripe=0
Most interesting fields:
obj
object id, same as fid plus tag
osd
id of the OSD that stores this object. resolve using osd l
There is more metadata to archived files, see fs archive.
- Helpful switches
-
-pathes: Display path on fileserver. Especially convenient in conjunction with vicep-access (as the path is local then, as well)
fs archive / fs fidarchive
Create an archival copy of a file (i.e., an additional object in an archival OSD).
Works only for OSD files:
# fs ls mini f rw- bin 5 2009-06-09 11:39:41 mini # fs arch mini Could not archive mini, error code was 22
Observe the addition of metadata:
# fs osd file5 file5 has 132 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=21, stripe=0 # fs arch file5 file5 done # fs osd file5 file5 has 284 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=21, stripe=0 Archive, dv=1, 2009-06-04 16:34:16, 1 segm, flags=0x0 segment: lng=3079608, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=22, stripe=0 metadata: md5=95078190456d834a8d1082fc25dcfbcb as from 2009-06-09 15:57:50
fs wipe / fs fidwipe
Remove the online copy(-ies) of an OSD file. This works only for files that have archival copies:
# fs osd testfile3 testfile3 has 132 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536900068.6.7.0, osd=2, stripe=0 # fs wipe testfile3 Could not wipe testfile3, error code was 22
This file can be wiped:
# fs osd file5 file5 has 284 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=21, stripe=0 Archive, dv=1, 2009-06-04 16:34:16, 1 segm, flags=0x0 segment: lng=3079608, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=22, stripe=0 metadata: md5=95078190456d834a8d1082fc25dcfbcb as from 2009-06-09 15:57:50 # fs osd file5 file5 has 160 bytes of osd metadata, v=3 Archive, dv=2, 2009-06-09 15:58:47, 1 segm, flags=0x2 segment: lng=3079613, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.1, osd=22, stripe=0 metadata: md5=736b005529288bbbd5b196ababbe9fd3 as from 2009-06-09 16:20:01
It is now gone from online OSD storage. Only the archival copy remains.
Of course, files with "online changes" are exempt from wiping:
# fs arch file5 file5 done # echo test >> file5 # fs wipe file5 Could not wipe file5, error code was 22
Granted, this response could be more elaborate.
fs prefetch / fs fidprefetch
Asynchronously restore an archival file copy (if no online copy is available).
This operation is the counterpart to fs wipe. It doesn't need to be called: Upon access to a file that is not online, the fileserver will see to it that an archival copy is restored and block until that operation is finished.
Using prefetch, users can shorten this delay.
Consider this wiped file:
# fs osd file5 file5 has 160 bytes of osd metadata, v=3 Archive, dv=3, 2009-06-09 16:28:22, 1 segm, flags=0x2 segment: lng=3079618, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=22, stripe=0 metadata: md5=706daff6e7cf2c9818edeea5448eb8a3 as from 2009-06-09 16:29:41 # fs prefetch file5 file5 was already on disk. # fs osd file5 file5 has 284 bytes of osd metadata, v=3 On-line, 1 segm, flags=0x0 segment: lng=0, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=21, stripe=0 Archive, dv=3, 2009-06-09 16:28:22, 1 fetches, last: 2009-06-09, 1 segm, flags=0x2 segment: lng=3079618, offs=0, stripes=1, strsize=0, cop=1, 1 objects object: obj=536871270.10.4209.0, osd=22, stripe=0 metadata: md5=706daff6e7cf2c9818edeea5448eb8a3 as from 2009-06-09 16:29:41
This was rather pointless, because osd 22 is not a tape archive but a mere disk instead. And AFS told us so.
FIXME: Show true tape restore example.
fs createstripedfile
Barring the use of policies, this is the only way to make use of striping/mirroring.
It can also be used to enforce creation of an OSD file.
Its uses are largely obsoleted by policies.
fs fetchqueue
When using OSD with HSM, see what files are being restored from tape to online OSDs.
FIXME: No example currently available.
fs protocol
fs protocol Enabled protocols are VICEP-ACCESS (with Lustre hack) RXOSD (1 parallel streams on connections with rtt > 10 ms).