whio  whio_epfs_ls

ACHTUNG: AS OF 20110523, THIS PAGE IS NOW MAINTAINED IN THE NEW WIKI: http://whiki.wanderinghorse.net/wikis/whio/?page=whio_epfs_ls

See also: whio_epfs_tools

whio-epfs-ls

whio-epfs-ls is a tool for listing the contents of whio_epfs container files. Aside from the common tools arguments, it accepts these optional parameters:

  • -1 lists only the used inode IDs, without metadata, one per line.
  • -b adds data block information to the output.
  • -g or --gmt changes the output timestamps to assume GMT time instead of local time.
  • -f or --flags enables the displaying of the client-defined flags for each inode. By default they are not shown.
  • --freelist or -F displays the internal free-item lists for inodes and blocks. This is primarily for debugging.
  • --list or -l forces rendering of the inode list even if another action (e.g. --freelist) would normally suppress it.
  • --time-format=string sets the time field output format using a strftime(3)-compatible format string.
  • --dump-lib-magic prints the whio_epfs "magic bytes" to stdout. Unlike the other commands, this does not require that an EFS file be specified.
  • --dump-mkfs-command writes out a whio-epfs-mkfs command line which could be used for re-creating the EFS.
  • --dump-options-code writes out C code for a whio_epfs_fsopt object with the values used by the EFS.
  • -u If the EFS has an EPFS namer installed then this changes how unnamed inode names are displayed. If this argument is given then unnamed inodes are shown as "<unnamed>" instead of an empty string.

Examples

# Typical usage:
~> whio-epfs-ls my.epfs 
Inode #	   Size	  Modification Time
1         10552   2009.12.26 14:00:35
2          8943   2009.12.26 14:00:35
3          4010   2009.12.26 14:00:35
4         57125   2009.12.26 14:00:35
Totals: 4 of 200 inodes taking up 80630 bytes.

# List info about the blocks used by each inode:
~> whio-epfs-ls -b my.epfs 
Inode #	   Size	  Modification Time	Blocks:
1         10552   2009.12.26 14:00:35	(1, 2)
2          8943   2009.12.26 14:00:35	(3, 4)
3          4010   2009.12.26 14:00:35	(5)
4         57125   2009.12.26 14:00:35	(6, 7, 8, 9, 10, 11, 12, 13)
Totals: 4 of 200 inodes taking up 80630 bytes in 13 blocks.

# List inode IDs by themselves, one per line:
~> whio-epfs-ls -1 my.epfs
1
2
4

# For EPFS hackers: view the free-list tables:
~> whio-epfs-mkfs -i20 -c50 -f --force my.epfs 
whio-epfs-mkfs [my.epfs]: EFS container created (820512 bytes).
~> whio-epfs-ls -F my.epfs 
Data block free-list: (Block ID->Next free ID)

	(1->2), (2->3), (3->4), (4->5), (5->6), (6->7), 
	(7->8), (8->9), (9->10), (10->11), (11->12), (12->13), 
	(13->14), (14->15), (15->16), (16->17), (17->18), (18->19), 
	(19->20), (20->21), (21->22), (22->23), (23->24), (24->25), 
	(25->26), (26->27), (27->28), (28->29), (29->30), (30->31), 
	(31->32), (32->33), (33->34), (34->35), (35->36), (36->37), 
	(37->38), (38->39), (39->40), (40->41), (41->42), (42->43), 
	(43->44), (44->45), (45->46), (46->47), (47->48), (48->49), 
	(49->50), (50->0)

Inode free-list: (Previous Free<- Inode ID -> Next Free)

	(0<-1->2), (1<-2->3), (2<-3->4), (3<-4->5), (4<-5->6), (5<-6->7), 
	(6<-7->8), (7<-8->9), (8<-9->10), (9<-10->11), (10<-11->12), (11<-12->13), 
	(12<-13->14), (13<-14->15), (14<-15->16), (15<-16->17), (16<-17->18), (17<-18->19), 
	(18<-19->20), (19<-20->0)