#!/bin/bash OS=$(cat /etc/os-release | awk 'NR == 1 {print $1, $2}') if [ "$OS" == 'NAME="Rocky Linux"' ]; then dnf install ceph-mds elif [ "$OS" == 'NAME="Ubuntu"' ]; then apt install ceph-mds else echo "OS is not Ubuntu or Rocky Linux" exit fi BASE_HOSTNAME=$(hostname -s) HOSTNAME=$BASE_HOSTNAME COUNTER=1 DIR="/var/lib/ceph/mds/ceph-$HOSTNAME" while [ -d "$DIR" ]; do HOSTNAME="${BASE_HOSTNAME}-${COUNTER}" DIR="/var/lib/ceph/mds/ceph-$HOSTNAME" ((COUNTER++)) done mkdir "$DIR" chown ceph:ceph "$DIR" ceph auth get-or-create mds.$HOSTNAME mon 'profile mds' mgr 'profile mds' mds 'allow *' osd 'allow *' > "$DIR/keyring" chown ceph:ceph "$DIR/keyring" systemctl enable --now ceph-mds@$HOSTNAME ceph -s echo -e "\e[1;31mmds-$HOSTNAME\e[0m has been \e[1;32madded\e[0m"