即使以root用户身份使用chown也无法更改所有权。

问题描述 投票:0回答:1

下面是我的一段自动化脚本,目录(或)挂载点--deployumbro$Client的所有权按照预期被改变为ind$Client:ind,但另一方面,目录(或)挂载点的所有权,在case语句下没有被改变。仍然是root:root

不知道自己到底哪里出了问题。

#!/bin/bash

Client=$1
Region=$2

sudo mkfs -t xfs /dev/nvme1n1
sudo mkfs -t xfs /dev/nvme2n1

#Mount point creation for nvme2n1

mkdir -p /deploy/umbro/$Client

mount -t xfs /dev/nvme2n1 /deploy/umbro/$Client
sudo echo UUID=$(sudo blkid | grep /dev/nvme2n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"') /deploy/umbro/$Client  xfs  defaults,nofail  0  2 >> /etc/fstab

perm=ind$Client:ind
chown -R $perm /deploy/umbro/$Client

#Mount point creation for nvme1n1, based on region

case $Region in
  AUS)
    mkdir -p /deploy/umbro/$Client/checkpoint/default/logs
    chown -R ind$Client:ind /deploy/umbro/$Client/checkpoint/default/logs
    mount -t xfs /dev/nvme1n1 /deploy/umbro/$Client/checkpoint/default/logs
    sudo echo UUID=$(sudo blkid | grep /dev/nvme1n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"')   /deploy/umbro/$Client/checkpoint/default/logs   xfs defaults,nofail 0   2 >> /etc/fstab
    ;;

  EUR)
    mkdir -p /deploy/umbro/$Client/checkpoint/arm/logs
    chown -R ind$Client:ind /deploy/umbro/$Client/checkpoint/arm/logs
    mount -t xfs /dev/nvme1n1 /deploy/umbro/$Client/checkpoint/arm/logs
    sudo echo UUID=$(sudo blkid | grep /dev/nvme1n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"')   /deploy/umbro/$Client/checkpoint/arm/logs   xfs defaults,nofail 0   2 >> /etc/fstab
    ;;
 ......
 ......
esac#!/bin/bash

Client=$1
Region=$2

sudo mkfs -t xfs /dev/nvme1n1
sudo mkfs -t xfs /dev/nvme2n1

#Mount point creation for nvme2n1

mkdir -p /deploy/umbro/$Client

mount -t xfs /dev/nvme2n1 /deploy/umbro/$Client
sudo echo UUID=$(sudo blkid | grep /dev/nvme2n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"') /deploy/umbro/$Client  xfs  defaults,nofail  0  2 >> /etc/fstab

perm=ind$Client:ind
chown -R $perm /deploy/umbro/$Client

#Mount point creation for nvme1n1, based on region

case $Region in
  AUS)
    mkdir -p /deploy/umbro/$Client/checkpoint/default/logs
    chown -R ind$Client:ind /deploy/umbro/$Client/checkpoint/default/logs
    mount -t xfs /dev/nvme1n1 /deploy/umbro/$Client/checkpoint/default/logs
    sudo echo UUID=$(sudo blkid | grep /dev/nvme1n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"')   /deploy/umbro/$Client/checkpoint/default/logs   xfs defaults,nofail 0   2 >> /etc/fstab
    ;;

  EUR)
    mkdir -p /deploy/umbro/$Client/checkpoint/arm/logs
    chown -R ind$Client:ind /deploy/umbro/$Client/checkpoint/arm/logs
    mount -t xfs /dev/nvme1n1 /deploy/umbro/$Client/checkpoint/arm/logs
    sudo echo UUID=$(sudo blkid | grep /dev/nvme1n1 | grep -Eo [\"].*[\"] | awk '{print $1}'|  tr -d '"')   /deploy/umbro/$Client/checkpoint/arm/logs   xfs defaults,nofail 0   2 >> /etc/fstab
    ;;
 ......
 ......
esac

AWS EC2 - Red Hat Enterprise Linux Server 7.7版本,用户 - root。

奇怪的是,如果我手动执行下面的步骤,所有权会循环地改变,直到logs文件夹。

cd /deploy/umbro/$Client
chown -R ind$Client:ind checkpoint/
bash shell amazon-ec2 chown
1个回答
0
投票

chown后,挂载成功了。感谢 @thatotherguy 的精彩解释。

© www.soinside.com 2019 - 2024. All rights reserved.