remove – remove a file from a server


size[4] Tremove tag[2] fid[4]
size[4] Rremove tag[2]


The remove request asks the file server both to remove the file represented by fid and to clunk the fid, even if the remove fails. This request will fail if the client does not have write permission in the parent directory.

It is correct to consider remove to be a clunk with the side effect of removing the file if permissions allow.

If a file has been opened as multiple fids, possibly on different connections, and one fid is used to remove the file, whether the other fids continue to provide access to the file is implementation-defined. The Plan 9 file servers (like fs(4)) remove the file immediately: attempts to use the other fids will yield a “phase error.” U9fs follows the semantics of the underlying Unix file system, so other fids typically remain usable.


Remove messages are generated by remove.