2023年6月17日 星期六

[研究]Rocky Linux 9.2 / CentOS 把 /home 空間合併到 / 根目錄分割

[研究]Splunk - Rocky Linux 9.2 / CentOS 把 /home 空間合併到 / 根目錄分割

2023-06-17、2023-06-19更新

因為 Splunk Enterprise Server 的根目錄空間有些不夠,所以研究

********************************************************************************

請開放開放 root 本機登入,確認沒有其他使用者登入,或強制他們登出  (否則後面無法 umount  /home )

[研究]開放 root 本機登入 (Splunk - Rocky Linux 9.2 / CentOS)
https://shaurong.blogspot.com/2023/06/root-splunk-rocky-linux-92-centos.html

[研究]如何強制某帳號登出 ? (Rocky Linux 9 / CentOS)
https://shaurong.blogspot.com/2023/06/rocky-linux-9-centos_17.html

[研究]顯示目前有哪些使用者登入 (Rocky Linux 9 / CentOS)
https://shaurong.blogspot.com/2023/06/rocky-linux-9-centos_38.html

********************************************************************************

以 root 登入,檢視各磁碟分割空間 大小,考慮 /home 目錄內容要拷貝到哪去

[root@localhost ~]# df -h
檔案系統             容量  已用  可用 已用% 掛載點
devtmpfs             4.0M     0  4.0M    0% /dev
tmpfs                1.8G     0  1.8G    0% /dev/shm
tmpfs                727M   13M  715M    2% /run
/dev/mapper/rl-root   64G  4.5G   60G    7% /
/dev/mapper/rl-home   32G  260M   31G    1% /home
/dev/sda1           1014M  292M  723M   29% /boot
tmpfs                364M  100K  364M    1% /run/user/1000
[root@localhost ~]# 

檢視 /home 目錄及子目錄總大小

[root@localhost ~]# du -sh /home
4.5M	/home
[root@localhost ~]# 

注意,如果 /home 有使用者資料,要先打包拷貝走 (含權限),否則就不用備份:

sudo tar  --same-owner --preserve-permissions -czvf home_backup.tar.gz /home

****************************************

如果有一般使用者登入,或一般使用者登入再 su root 切換,是無法 umount  /home


[user1@localhost ~]$ umount /home
umount: /home: target is busy.
[user1@localhost ~]$

註:可以用下面指令列出哪個 ProcessID 正在使用 /home,然後 kill 掉,但實際測試太多了。

sudo lsof | grep '/home'

sudo kill PID

****************************************

註:如果不想整個 /home 併入根目錄磁碟分割,可用磁碟分割澃 fdisk 或 parted 對 /home 進行縮減,不在本篇研究。

****************************************

把 /home 掛載先卸載,編輯 /etc/fstab 註解掉 /home

[root@localhost ~]# umount /home
[root@localhost ~]# vi /etc/fstab  

fstab 內容,把 /home 那行最開始加讓 # 進行註解,存檔

#
# /etc/fstab
# Created by anaconda on Fri Jun  9 01:40:24 2023
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/rl-root     /                       xfs     defaults        0 0
UUID=9d7f7518-07d0-4539-8819-b985633fd2a3 /boot                   xfs     defaults        0 0
#/dev/mapper/rl-home     /home                   xfs     defaults        0 0
/dev/mapper/rl-swap     none                    swap    defaults        0 0
~      

接下來的操作,lv (Logic Volume) 的名稱要對應 /etc/fstab 的內容

lvremove /dev/mapper/rl-home  移除該 lv

lvextend -l +100%FREE /dev/mapper/rl-root   所有空間加到 另一個 lv 

xfs_growfs /dev/mapper/rl-root  延展該 lv 使用全部空間

[root@localhost ~]# umount /home

[root@localhost ~]# vi /etc/fstab

[root@localhost ~]# lvremove  /dev/mapper/rl-home
Do you really want to remove active logical volume rl/home? [y/n]: y
  Logical volume "home" successfully removed.

[root@localhost ~]# lvextend -l +100%FREE /dev/mapper/rl-root
  Size of logical volume rl/root changed from 63.88 GiB (16354 extents) to 95.07 GiB (24338 extents).
  Logical volume rl/root successfully resized.

[root@localhost ~]# xfs_growfs /dev/mapper/rl-root
meta-data=/dev/mapper/rl-root    isize=512    agcount=4, agsize=4186624 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1
data     =                       bsize=4096   blocks=16746496, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=8177, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 16746496 to 24922112

[root@localhost ~]# df -h
檔案系統             容量  已用  可用 已用% 掛載點
devtmpfs             4.0M     0  4.0M    0% /dev
tmpfs                1.8G     0  1.8G    0% /dev/shm
tmpfs                727M   13M  715M    2% /run
/dev/mapper/rl-root   96G  4.9G   91G    6% /
/dev/sda1           1014M  292M  723M   29% /boot
[root@localhost ~]# 


結果可見 /home 磁碟分割不存在了,空間全部合併到 根目錄磁碟分割了。


****************************************

如果 /home 有使用者資料,拷貝回來 (包含原來權限)

把 home 目錄解壓縮在 / 根目錄:

sudo tar  --same-owner --preserve-permissions xzvf home_backup.tar.gz  -C /

****************************************

/home 和使用者目錄、檔案權限

[user1@localhost /]$ ls -al  /
總用量 24
dr-xr-xr-x.  18 root root  235  6月  9 09:41 .
dr-xr-xr-x.  18 root root  235  6月  9 09:41 ..
dr-xr-xr-x.   2 root root    6  5月 16  2022 afs
lrwxrwxrwx.   1 root root    7  5月 16  2022 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096  6月  9 09:49 boot
drwxr-xr-x.  20 root root 3420  6月 19 09:33 dev
drwxr-xr-x. 130 root root 8192  6月 19 09:33 etc
drwxr-xr-x.   3 root root   19  6月  9 09:56 home
lrwxrwxrwx.   1 root root    7  5月 16  2022 lib -> usr/lib
lrwxrwxrwx.   1 root root    9  5月 16  2022 lib64 -> usr/lib64
drwxr-xr-x.   2 root root    6  5月 16  2022 media
drwxr-xr-x.   3 root root   18  6月  9 09:41 mnt
drwxr-xr-x.   2 root root    6  5月 16  2022 opt
dr-xr-xr-x. 339 root root    0  6月 19 09:33 proc
dr-xr-x---.   4 root root  161  6月  9 09:58 root
drwxr-xr-x.  46 root root 1220  6月 19 09:34 run
lrwxrwxrwx.   1 root root    8  5月 16  2022 sbin -> usr/sbin
drwxr-xr-x.   2 root root    6  5月 16  2022 srv
dr-xr-xr-x.  13 root root    0  6月 19 09:33 sys
drwxrwxrwt.  23 root root 4096  6月 19 09:34 tmp
drwxr-xr-x.  12 root root  144  6月  9 09:41 usr
drwxr-xr-x.  20 root root 4096  6月  9 09:49 var
[user1@localhost /]$ ls -al /home
總用量 4
drwxr-xr-x.  3 root  root    19  6月  9 09:56 .
dr-xr-xr-x. 18 root  root   235  6月  9 09:41 ..
drwx------. 14 user1 user1 4096  6月  9 09:56 user1
[user1@localhost /]$

(完)

相關

[研究]把 /home 打包複製、解壓複製回 (Rocky Linux 9、CentOS)
https://shaurong.blogspot.com/2023/06/home-rocky-linux-9centos.html

[研究]Rocky Linux 9.2 / CentOS 把 /home 空間合併到 / 根目錄分割https://shaurong.blogspot.com/2023/06/rocky-linux-92-centos-home.html

[研究] Rocky Linux 9 / CentOS 查詢磁碟分割上、目錄的空間佔用情況
https://shaurong.blogspot.com/2023/06/rocky-linux-9-centos.html

[研究]Rocky Linux 9.2 , CentOS 安裝時手動分割磁區
https://shaurong.blogspot.com/2023/06/rocky-linux-92-centos.html

[研究]Rocky Linux 8.8、9.2預設分割大小測試
https://shaurong.blogspot.com/2023/06/rocky-linux-8892.html

[研究]Splunk 9.0.5 (on Rocky Linux 9.2) 回傳停止之解決
https://shaurong.blogspot.com/2023/06/splunk-905-on-rocky-linux-92.html

沒有留言:

張貼留言