概述
磁盘分区:
为了实验,给虚拟机添加几个虚拟硬盘。
sata类型:5G,sata类型:3G,nvme类型:5G
[root@localhost redhat]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 5G 0 disk
sdb 8:16 0 3G 0 disk
sr0 11:0 1 9.4G 0 rom /run/media/redhat/RHEL-8-4-0-BaseOS-x86_6
nvme0n1 259:0 0 20G 0 disk
├─nvme0n1p1 259:1 0 1G 0 part /boot
└─nvme0n1p2 259:2 0 19G 0 part
├─rhel-root 253:0 0 17G 0 lvm /
└─rhel-swap 253:1 0 2G 0 lvm [SWAP]
nvme0n2 259:3 0 5G 0 disk
Linux系统中,对于磁盘分区的管理,常用命令为fdisk,gdisk,parted。通常情况下,parted命令一般只用在自动化脚本功能中使用。
磁盘的分区依赖于分区表。
mbr与gpt分布表( 见鸟哥linux P70)
目前fdisk命令支持mbr分区表磁盘和gpt分区表磁盘,gdisk一般只用作于gpt分区表磁盘或者是将mbr转gpt使用。
无论是fdisk还是gdisk,在操作磁盘的时候,均是在内存空间进行模拟。
[root@localhost redhat]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x46e0c955.
Command (m for help):
Help:
DOS (MBR)
a toggle a bootable flag
b edit nested BSD disklabel
c toggle the dos compatibility flag
Generic
d delete a partition
F list free unpartitioned space
l list known partition types
n add a new partition
p print the partition table
t change a partition type
v verify the partition table
i print information about a partition
Misc
m print this menu
u change display/entry units
x extra functionality (experts only)
Script
I load disk layout from sfdisk script file
O dump disk layout to sfdisk script file
Save & Exit
w write table to disk and exit
q quit without saving changes
Create a new label
g create a new empty GPT partition table
G create a new empty SGI (IRIX) partition table
o create a new empty DOS partition table
s create a new empty Sun partition table
Command (m for help): p
Disk /dev/sdb: 3 GiB, 3221225472 bytes, 6291456 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x46e0c955
n:添加一个分区
fdisk /dev/sdb
n,defalut,+1G,w
添加两个分区(sdb1,sdb2)每个分区大小为1G
w:保存修改 d:删除一个分区
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
安装文件系统:
安装文件系统的本质是格式化。分区上面不能直接存放文件,需要由文件系统才可以。
操作系统访问存储设备中的数据,是通过调用文件系统来实现的。
mkfs.+两次tab
[root@localhost redhat]# mkfs.
mkfs.cramfs mkfs.ext3 mkfs.fat mkfs.msdos mkfs.xfs
mkfs.ext2 mkfs.ext4 mkfs.minix mkfs.vfat
常用ext4,xfs。
[root@localhost redhat]# mkfs.ext4 /dev/sdb1
mke2fs 1.45.6 (20-Mar-2020)
Found a dos partition table in /dev/sdb1
Proceed anyway? (y,N) y
Creating filesystem with 262144 4k blocks and 65536 inodes
Filesystem UUID: f8a0e0a8-de5c-4f5e-8792-a2cf56486de8
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
linux操作系统上的文件系统有block和inodes两个数值
●block决定了存放的文件数据的大小
●inodes决定了存放的文件数量的多少
当有了文件系统之后,就可以进行挂载操作
[root@localhost redhat]# mkdir -p /mnt/data
[root@localhost redhat]# mount /dev/sdb1 /mnt/data
[root@localhost redhat]# df -TH
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 908M 0 908M 0% /dev
tmpfs tmpfs 939M 0 939M 0% /dev/shm
tmpfs tmpfs 939M 10M 929M 2% /run
tmpfs tmpfs 939M 0 939M 0% /sys/fs/cgroup
/dev/mapper/rhel-root xfs 19G 5.6G 13G 31% /
/dev/nvme0n1p1 xfs 1.1G 255M 810M 24% /boot
tmpfs tmpfs 188M 4.8M 183M 3% /run/user/1000
/dev/sr0 iso9660 11G 11G 0 100% /run/media/redhat/RHEL-8-4-0-BaseOS-x86_64
/dev/sdb1 ext4 1.1G 2.7M 951M 1% /mnt/data
交换分区:
linux系统上面会在硬盘设备上划分特定的一部分区域用作于交换分区(swap),用于存放内存空间中不常用的一些冷数据。
交换分区可以保证Linux系统在运行过程中,防止出现因为物理内存不够用导致程序直接被中断的可能。
交换分区使用特殊的文件系统,为swap文件系统,使用命令mkswap创建
[root@localhost redhat]# mkswap /dev/sdb2
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=10ff6bad-01f1-4735-8933-b22e407d8198
free -h:查看系统的memory,swap
[root@localhost redhat]# free -h
total used free shared buff/cache available
Mem: 1.7Gi 1.1Gi 83Mi 14Mi 624Mi 538Mi
Swap: 2.0Gi 7.0Mi 2.0Gi
swapon:挂载交换分区
[root@localhost redhat]# swapon /dev/sdb2
[root@localhost redhat]# free -h
total used free shared buff/cache available
Mem: 1.7Gi 1.1Gi 85Mi 14Mi 622Mi 537Mi
Swap: 3.0Gi 7.0Mi 3.0Gi
swapoff :卸载交换分区
[root@localhost redhat]# swapoff /dev/sdb2
[root@localhost redhat]# free -h
total used free shared buff/cache available
Mem: 1.7Gi 1.1Gi 90Mi 14Mi 614Mi 538Mi
Swap: 2.0Gi 6.0Mi 2.0Gi
最后
以上就是无辜白开水为你收集整理的【linux】管理基本存储的全部内容,希望文章能够帮你解决【linux】管理基本存储所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复