mount.ceph – mount a ceph file system


mount.ceph [monaddr1,monaddr2,…]:/[subdir] dir [ -o options ]


mount.ceph is a helper for mounting the Ceph file system on a Linux host. It serves to resolve monitor hostname(s) into IP addresses and read authentication keys from disk; the Linux kernel client component does most of the real work. In fact, it is possible to mount a non-authenticated Ceph file system without mount.ceph by specifying monitor address(es) by IP:

mount -t ceph mountpoint

Each monitor address monaddr takes the form host[:port]. If the port is not specified, the Ceph default of 6789 is assumed.

Multiple monitor addresses can be separated by commas. Only one responsible monitor is needed to successfully mount; the client will learn about all monitors from any responsive monitor. However, it is a good idea to specify more than one in case one happens to be down at the time of mount.

If the host portion of the device is left blank, then mount.ceph will attempt to determine monitor addresses using local configuration files and/or DNS SRV records.

A subdirectory subdir may be specified if a subset of the file system is to be mounted.

Mount helper application conventions dictate that the first two options are device to be mounted and destination path. Options must be passed only after these fixed arguments.



int (bytes), max write size. Default: 16777216 (16*1024*1024) (writeback uses smaller of wsize and stripe unit)


int (bytes), max read size. Default: 16777216 (16*1024*1024)


int (bytes), max readahead. Default: 8388608 (8192*1024)


int (seconds), Default: 60


int, Default: 5


int (seconds), Default: 60


int (seconds), Default: 60


int, cap release delay, Default: 5


int, cap release delay, Default: 60


int, Default: calculated


int, Default: 1024


int, Default: 524288 (512*1024)


int (kb), max writeback in flight. scale with available memory. Default: calculated from available memory


string, set the name of the hidden snapdir. Default: .snap


RADOS user to authenticate as when using cephx. Default: guest


secret key for use with cephx. This option is insecure because it exposes the secret on the command line. To avoid this, use the secretfile option.


path to file containing the secret key to use with cephx


my ip


create a new client instance, instead of sharing an existing instance of a client mounting the same cluster


funky cat dirname for stats, Default: off


no funky cat dirname for stats


Report the recursive size of the directory contents for st_size on directories. Default: off


Do not report the recursive size of the directory contents for st_size on directories.


no data crc on writes


no dcache readdir


Path to a ceph.conf file. This is used to initialize the ceph context for autodiscovery of monitor addresses and auth secrets. The default is to use the standard search path for ceph.conf files.


Set auto reconnect mode in the case where the client is blacklisted. The available modes are no and clean. The default is no.

  • no: never attempt to reconnect when client detects that it has been blacklisted. Blacklisted clients will not attempt to reconnect and their operations will fail too.

  • clean: client reconnects to the ceph cluster automatically when it detects that it has been blacklisted. During reconnect, client drops dirty data/metadata, invalidates page caches and writable file handles. After reconnect, file locks become stale because the MDS loses track of them. If an inode contains any stale file locks, read/write on the inode is not allowed until applications release all stale file locks.

Mount Secrets

If the secret and secretfile options are not specified on the command-line then the mount helper will spawn a child process that will use the standard ceph library routines to find a keyring and fetch the secret from it.


Mount the full file system:

mount.ceph monhost:/ /mnt/foo

If there are multiple monitors:

mount.ceph monhost1,monhost2,monhost3:/ /mnt/foo

If ceph-mon(8) is running on a non-standard port:

mount.ceph monhost1:7000,monhost2:7000,monhost3:7000:/ /mnt/foo

To automatically determine the monitor addresses from local configuration:

mount.ceph :/ /mnt/foo

To mount only part of the namespace:

mount.ceph monhost1:/some/small/thing /mnt/thing

Assuming mount.ceph(8) is installed properly, it should be automatically invoked by mount(8) like so:

mount -t ceph monhost:/ /mnt/foo


mount.ceph is part of Ceph, a massively scalable, open-source, distributed storage system. Please refer to the Ceph documentation at for more information.

See also

ceph-fuse(8), ceph(8)