2015-04-07 10:11:29 +00:00
:orphan:
2011-09-09 23:21:52 +00:00
========================================
mount.ceph -- mount a ceph file system
========================================
.. program :: mount.ceph
Synopsis
========
2019-08-13 11:32:00 +00:00
| **mount.ceph** [*monaddr1* \ ,\ *monaddr2* \ ,...]:/[*subdir* ] *dir* [
2011-09-09 23:21:52 +00:00
-o *options* ]
Description
===========
2019-08-13 11:32:00 +00:00
**mount.ceph** is a helper for mounting the Ceph file system on
2012-08-02 23:00:15 +00:00
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::
2011-09-09 23:21:52 +00:00
mount -t ceph 1.2.3.4:/ 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.
2019-08-13 11:32:00 +00:00
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.
2011-09-09 23:21:52 +00:00
A subdirectory subdir may be specified if a subset of the file system
is to be mounted.
2012-08-02 23:03:19 +00:00
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.
2011-09-09 23:21:52 +00:00
Options
=======
:command: `wsize`
2018-05-31 12:07:28 +00:00
int (bytes), max write size. Default: 16777216 (16*1024* 1024) (writeback uses smaller of wsize
2011-09-09 23:21:52 +00:00
and stripe unit)
:command: `rsize`
2018-05-31 12:07:28 +00:00
int (bytes), max read size. Default: 16777216 (16*1024* 1024)
2016-09-15 20:02:23 +00:00
:command: `rasize`
2018-05-31 12:07:28 +00:00
int (bytes), max readahead. Default: 8388608 (8192*1024)
2011-09-09 23:21:52 +00:00
:command: `osdtimeout`
int (seconds), Default: 60
2016-08-24 09:59:15 +00:00
:command: `osdkeepalive`
2011-09-09 23:21:52 +00:00
int, Default: 5
:command: `mount_timeout`
int (seconds), Default: 60
:command: `osd_idle_ttl`
int (seconds), Default: 60
:command: `caps_wanted_delay_min`
int, cap release delay, Default: 5
:command: `caps_wanted_delay_max`
int, cap release delay, Default: 60
:command: `cap_release_safety`
int, Default: calculated
:command: `readdir_max_entries`
int, Default: 1024
:command: `readdir_max_bytes`
int, Default: 524288 (512*1024)
:command: `write_congestion_kb`
int (kb), max writeback in flight. scale with available
memory. Default: calculated from available memory
:command: `snapdirname`
string, set the name of the hidden snapdir. Default: .snap
:command: `name`
2011-12-15 22:03:00 +00:00
RADOS user to authenticate as when using cephx. Default: guest
2011-09-09 23:21:52 +00:00
:command: `secret`
2011-12-15 22:03:00 +00:00
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.
:command: `secretfile`
path to file containing the secret key to use with cephx
2011-09-09 23:21:52 +00:00
:command: `ip`
my ip
:command: `noshare`
create a new client instance, instead of sharing an existing
instance of a client mounting the same cluster
:command: `dirstat`
funky `cat dirname` for stats, Default: off
:command: `nodirstat`
no funky `cat dirname` for stats
:command: `rbytes`
Report the recursive size of the directory contents for st_size on
2018-11-07 09:17:30 +00:00
directories. Default: off
2011-09-09 23:21:52 +00:00
:command: `norbytes`
Do not report the recursive size of the directory contents for
st_size on directories.
:command: `nocrc`
no data crc on writes
:command: `noasyncreaddir`
no dcache readdir
2019-08-13 11:32:00 +00:00
:command: `conf`
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.
2019-09-30 11:00:16 +00:00
:command: `recover_session=<no|clean>`
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.
2019-10-21 14:37:57 +00:00
:command: `mds_namespace=<fs-name>`
Specify the non-default file system to be mounted. Not passing this option
mounts the default file system.
2019-08-13 11:32:00 +00:00
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.
2011-09-09 23:21:52 +00:00
Examples
========
Mount the full file system::
mount.ceph monhost:/ /mnt/foo
If there are multiple monitors::
mount.ceph monhost1,monhost2,monhost3:/ /mnt/foo
2015-04-07 10:15:01 +00:00
If :doc: `ceph-mon <ceph-mon>` \(8) is running on a non-standard
2011-09-23 20:39:05 +00:00
port::
2011-09-09 23:21:52 +00:00
mount.ceph monhost1:7000,monhost2:7000,monhost3:7000:/ /mnt/foo
2019-08-13 11:32:00 +00:00
To automatically determine the monitor addresses from local configuration::
mount.ceph :/ /mnt/foo
2011-09-09 23:21:52 +00:00
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
2019-10-21 14:37:57 +00:00
If you have more than one file system on your Ceph cluster, you can mount the
non-default FS on your local FS as follows::
mount -t ceph :/ /mnt/mycephfs2 -o name=fs,mds_namespace=mycephfs2
2011-09-09 23:21:52 +00:00
Availability
============
2015-01-22 02:16:35 +00:00
**mount.ceph** is part of Ceph, a massively scalable, open-source, distributed storage system. Please
2012-06-16 21:50:29 +00:00
refer to the Ceph documentation at http://ceph.com/docs for more
2011-09-09 23:21:52 +00:00
information.
See also
========
2011-09-21 23:28:43 +00:00
:doc: `ceph-fuse <ceph-fuse>` \(8),
2011-09-09 23:21:52 +00:00
:doc: `ceph <ceph>` \(8)