mount lvm
文章出自个人博客https://applelin8.github.io/2020/11/27/mount-lvm,转载请申明
content
vgscan
~$ sudo vgscan
Reading all physical volumes. This may take a while...
Found volume group "centos" using metadata type lvm2
vgchange
~$ sudo vgchange -a y centos
3 logical volume(s) in volume group "centos" now active
ls /dev/centos
~$ ls -ahl /dev/centos/
总用量 0
drwxr-xr-x 2 root root 100 11月 27 10:55 .
drwxr-xr-x 20 root root 4.9K 11月 27 16:46 ..
lrwxrwxrwx 1 root root 7 11月 27 10:55 home -> ../dm-1
lrwxrwxrwx 1 root root 7 11月 27 10:55 root -> ../dm-2
lrwxrwxrwx 1 root root 7 11月 27 10:55 swap -> ../dm-0
mount lvm
mount_lvm.sh
#!/bin/bash
#set -xve
declare -a volume_groups
function get_volume_groups()
{
id=0
i=0
for line in $(sudo vgscan)
do
eval result[$i]='$line'
let i++
done
len=${#result[@]}
for (( i=0;i<$len;i++))
do
if [ ${result[$i]} == 'Found' ]
then
volume_groups[$id]=`echo ${result[$i+3]}|sed 's/\"//g'`
let id++
let i+=3
fi
done
}
function mount_dir()
{
volume_group=$1
NR=$2
dir=$(ls /dev/$volume_group/|awk "NR==$NR")
echo mount dir : /opt/mnt/$volume_group/$dir
sudo mkdir -p /opt/mnt/$volume_group/$dir
sudo mount /dev/$volume_group/$dir /opt/mnt/$volume_group/$dir
}
function umount_dir()
{
volume_group=$1
NR=$2
dir=$(ls /dev/$volume_group/|awk "NR==$NR")
echo umount dir : /opt/mnt/$volume_group/$dir
sudo umount /opt/mnt/$volume_group/$dir
}
function mount_volume_groups()
{
bool=$1
for (( i=0;i<${#volume_groups[@]};i++ ))
do
echo $i: ${volume_groups[$i]}
volume_group=${volume_groups[$i]}
sudo vgchange -a y $volume_group
dir_count=`ls /dev/$volume_group|sed -n '$='`
for((j=1;j<$dir_count;j++))
do
if [ ${bool} == "y" ];then
mount_dir $volume_group $j
else
umount_dir $volume_group $j
fi
done
done
}
function main()
{
get_volume_groups
mount_volume_groups $1
}
main $@
mount
mount_lvm.sh y
ls
:~$ ls /opt/mnt/centos/home/
apple
:~$ ls /opt/mnt/centos/root/
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
tree
:~$ tree -L 2 /opt/mnt/centos/
/opt/mnt/centos/
├── home
│ └── apple
└── root
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
22 directories, 0 files
umount
mount_lvm.sh n
ls
:~$ ls /opt/mnt/centos/home
:~$ ls /opt/mnt/centos/root
tree
:~$ tree -L 2 /opt/mnt/centos/
/opt/mnt/centos/
├── home
└── root
2 directories, 0 files
评论:
技术文章推送
手机、电脑实用软件分享
微信公众号:farmer in city