MOUNT.CEPH(8) | Ceph | MOUNT.CEPH(8) |
mount.ceph - mount a Ceph file system
mount.ceph [mon1_socket,mon2_socket,...]:/[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 1.2.3.4:/ /mnt/mycephfs
The first argument is the device part of the mount command. It includes host's socket and path within CephFS that will be mounted at the mount point. The socket, obviously, takes the form ip_address[:port]. If the port is not specified, the Ceph default of 6789 is assumed. Multiple monitor addresses can be passed by separating them by commas. Only one monitor is needed to mount successfully; the client will learn about all monitors from any responsive monitor. However, it is a good idea to specify more than one in case the 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. In similar way, if authentication is enabled on Ceph cluster (which is done using CephX) and options secret and secretfile are not specified in the command, 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.
A sub-directory of the file system can be mounted by specifying the (absolute) path to the sub-directory right after ":" after the socket in the device part of the mount command.
Mount helper application conventions dictate that the first two options are device to be mounted and the mountpoint for that device. Options must be passed only after these fixed arguments.
Mount the full file system:
mount.ceph :/ /mnt/mycephfs
Assuming mount.ceph is installed properly, it should be automatically invoked by mount(8):
mount -t ceph :/ /mnt/mycephfs
Mount only part of the namespace/file system:
mount.ceph :/some/directory/in/cephfs /mnt/mycephfs
or
mount -t ceph :/ /mnt/mycephfs2 -o mds_namespace=mycephfs2 # This option name is deprecated.
Pass the monitor host's IP address, optionally:
mount.ceph 192.168.0.1:/ /mnt/mycephfs
Pass the port along with IP address if it's running on a non-standard port:
mount.ceph 192.168.0.1:7000:/ /mnt/mycephfs
If there are multiple monitors, passes addresses separated by a comma:
mount.ceph 192.168.0.1,192.168.0.2,192.168.0.3:/ /mnt/mycephfs
If authentication is enabled on Ceph cluster:
mount.ceph :/ /mnt/mycephfs -o name=fs_username
Pass secret key for CephX user optionally:
mount.ceph :/ /mnt/mycephfs -o name=fs_username,secret=AQATSKdNGBnwLhAAnNDKnH65FmVKpXZJVasUeQ==
Pass file containing secret key to avoid leaving secret key in shell's command history:
mount.ceph :/ /mnt/mycephfs -o name=fs_username,secretfile=/etc/ceph/fs_username.secret
mount.ceph is part of Ceph, a massively scalable, open-source, distributed storage system. Please refer to the Ceph documentation at http://ceph.com/docs for more information.
The recover_session= option was added to mainline Linux kernels in v5.4. wsync and nowsync were added in v5.7.
2010-2023, Inktank Storage, Inc. and contributors. Licensed under Creative Commons Attribution Share Alike 3.0 (CC-BY-SA-3.0)
February 16, 2023 | dev |