docs-simoncor-net/docs/linux/disk-management.md

119 lines
1.9 KiB
Markdown

# Disk management
## Show filesystems
```shell
df -h
```
Example output:
```shell
Filesystem Size Used Avail Use% Mounted on
udev 456M 0 456M 0% /dev
tmpfs 97M 9.4M 87M 10% /run
/dev/vda1 19G 2.6G 16G 15% /
tmpfs 481M 0 481M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 97M 0 97M 0% /run/user/1003
```
## List block devices
```shell
lsblk
```
Example output:
```shell
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─vg0-root 253:0 0 15G 0 lvm /
└─vg0-swap 253:1 0 4G 0 lvm [SWAP]
```
## Partition management (fdisk)
```shell
# Interactive partition tool
fdisk /dev/sda
# List partitions
fdisk -l /dev/sda
```
## LVM management
```shell
# Physical volumes
pvdisplay
pvcreate /dev/sda2
pvremove /dev/sda2
# Volume groups
vgdisplay
vgcreate vg0 /dev/sda2
vgextend vg0 /dev/sdb1
vgreduce vg0 /dev/sdb1
# Logical volumes
lvdisplay
lvcreate -L 10G -n lv_data vg0
lvextend -L +5G /dev/vg0/lv_data
lvreduce -L -2G /dev/vg0/lv_data
lvremove /dev/vg0/lv_data
# Resize filesystem after extending LV
resize2fs /dev/vg0/lv_data # ext4
xfs_growfs /mount/point # xfs
```
## Create filesystems
```shell
# ext4
mkfs.ext4 /dev/sda1
# xfs
mkfs.xfs /dev/sda1
# btrfs
mkfs.btrfs /dev/sda1
# With label
mkfs.ext4 -L mydata /dev/sda1
```
## Disk usage
```shell
# Show inode usage
df -i
# List folders
du -h -d 1 | sort -h
# Find large files
find / -type f -size +100M -exec ls -lh {} \;
```
## Mount operations
```shell
# Mount filesystem
mount /dev/sda1 /mnt
# Unmount
umount /mnt
# Show all mounts
mount | column -t
# Persistent mounts (add to /etc/fstab)
/dev/vg0/lv_data /data ext4 defaults 0 2
UUID=xxx /data ext4 defaults 0 2
```