1 .. SPDX-License-Identifier: GPL-2.0 2 3 ======================================= 4 v9fs: Plan 9 Resource Sharing for Linux 5 ======================================= 6 7 About 8 ===== 9 10 v9fs is a Unix implementation of the Plan 9 9p 11 12 This software was originally developed by Ron < 13 and Maya Gokhale. Additional development by G 14 <gwatson@lanl.gov> and most recently Eric Van H 15 <ericvh@gmail.com>, Latchesar Ionkov <lucho@ion 16 <rsc@swtch.com>. 17 18 The best detailed explanation of the Linux imp 19 the 9p client is available in the form of a US 20 21 https://www.usenix.org/events/usenix05/tech 22 23 Other applications are described in the follow 24 25 * XCPU & Clustering 26 http://xcpu.org/papers/xcpu-talk.pdf 27 * KVMFS: control file system for KVM 28 http://xcpu.org/papers/kvmfs.pdf 29 * CellFS: A New Programming Model for 30 http://xcpu.org/papers/cellfs-talk.p 31 * PROSE I/O: Using 9p to enable Applic 32 http://plan9.escet.urjc.es/iwp9/crea 33 * VirtFS: A Virtualization Aware File 34 http://goo.gl/3WPDg 35 36 Usage 37 ===== 38 39 For remote file server:: 40 41 mount -t 9p 10.10.1.2 /mnt/9 42 43 For Plan 9 From User Space applications (http: 44 45 mount -t 9p `namespace`/acme /mnt/9 -o 46 47 For server running on QEMU host with virtio tr 48 49 mount -t 9p -o trans=virtio <mount_tag 50 51 where mount_tag is the tag associated by the s 52 mount points. Each 9P export is seen by the cl 53 associated "mount_tag" property. Available mou 54 seen by reading /sys/bus/virtio/drivers/9pnet_ 55 56 Options 57 ======= 58 59 ============= ============================== 60 trans=name select an alternative transpor 61 currently: 62 63 ======== ============ 64 unix specifying a 65 tcp specifying a 66 fd used passed 67 (see rfdno a 68 virtio connect to t 69 (from QEMU w 70 rdma connect to a 71 ======== ============ 72 73 uname=name user name to attempt mount as 74 server may override or ignore 75 names may require authenticati 76 77 aname=name aname specifies the file tree 78 offering several exported file 79 80 cache=mode specifies a caching policy. B 81 The mode can be specified as a 82 preexisting common 'shortcuts' 83 The bitmask is described below 84 85 ========== ========== 86 0b00000000 all caches 87 0b00000001 file cache 88 0b00000010 meta-data 89 0b00000100 writeback 90 0b00001000 loose cach 91 0b10000000 fscache en 92 ========== ========== 93 94 The current shortcuts and thei 95 96 ========= ========== 97 none 0b00000000 98 readahead 0b00000001 99 mmap 0b00000101 100 loose 0b00001111 101 fscache 0b10001111 102 ========= ========== 103 104 NOTE: only these shortcuts are 105 moment, so using other combina 106 known to work. Work on better 107 108 IMPORTANT: loose caches (and b 109 do not necessarily validate ca 110 words changes on the server ar 111 on the client system. Only us 112 have an exclusive mount and th 113 underneath you. 114 115 debug=n specifies debug level. The de 116 117 ===== ============== 118 0x01 display verbos 119 0x02 developer debu 120 0x04 display 9p tra 121 0x08 display VFS tr 122 0x10 display Marsha 123 0x20 display RPC de 124 0x40 display transp 125 0x80 display alloca 126 0x100 display protoc 127 0x200 display Fid de 128 0x400 display packet 129 0x800 display fscach 130 ===== ============== 131 132 rfdno=n the file descriptor for readin 133 134 wfdno=n the file descriptor for writin 135 136 msize=n the number of bytes to use for 137 138 port=n port to connect to on the remo 139 140 noextend force legacy mode (no 9p2000.u 141 142 version=name Select 9P protocol version. Va 143 144 ======== ====== 145 9p2000 Legacy 146 9p2000.u Use 9P 147 9p2000.L Use 9P 148 ======== ====== 149 150 dfltuid attempt to mount as a particul 151 152 dfltgid attempt to mount with a partic 153 154 afid security channel - used by Pla 155 156 nodevmap do not map special files - rep 157 This can be used to share devi 158 hosts. This functionality wil 159 160 directio bypass page cache on all read/ 161 162 ignoreqv ignore qid.version==0 as a mar 163 164 noxattr do not offer xattr functions o 165 166 access there are four access modes. 167 user 168 if a user trie 169 filesystem for 170 attach command 171 This is the de 172 <uid> 173 allows only us 174 the files on t 175 any 176 v9fs does sing 177 operations as 178 clien 179 ACL based acc 180 side for acce 181 182 cachetag cache tag to use the specified 183 cache tags for existing cache 184 /sys/fs/9p/caches. (applies on 185 ============= ============================== 186 187 Behavior 188 ======== 189 190 This section aims at describing 9p 'quirks' th 191 from a local filesystem behaviors. 192 193 - Setting O_NONBLOCK on a file will make clie 194 as the server returns some data instead of 195 buffer with the requested amount of bytes o 196 197 Resources 198 ========= 199 200 Protocol specifications are maintained on gith 201 http://ericvh.github.com/9p-rfc/ 202 203 9p client and server implementations are liste 204 http://9p.cat-v.org/implementations 205 206 A 9p2000.L server is being developed by LLNL a 207 at http://code.google.com/p/diod/ 208 209 There are user and developer mailing lists ava 210 on sourceforge (http://sourceforge.net/project 211 212 News and other information is maintained on a 213 (http://sf.net/apps/mediawiki/v9fs/index.php). 214 215 Bug reports are best issued via the mailing li 216 217 For more information on the Plan 9 Operating S 218 http://plan9.bell-labs.com/plan9 219 220 For information on Plan 9 from User Space (Pla 221 ported to Linux/BSD/OSX/etc) check out https:/
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.