Linux 内存磁盘管理命令笔记
内存查看命令
free 使用free可以查看内存和交换分区使用情况
为了更人性化的显示 可以使用参数 -mgt 将结果按照(M G T)显示 默认为kb
top 使用top命令可以显示动态的内存和交换分区使用情况
磁盘查看命令
fdisk -l 可以查看磁盘和分区情况
df -h 还可以查看磁盘挂载情况
du file 查看file文件大小 可以使用-mgt
du 查看文件实际占用空间大小 ls 查看文件inode节点中的信息大小
dd if=/dev/zero bs=4M count=10 seek=20 of=bfile 从if 复制字节到of
bs为blocksize count为多少个bs seek为从bfile哪儿开始 seek用来创建文件空洞
文件系统 常见的文件系统有 ext4(manjaro) xfs(centos) ntfs(windows) 这儿记录的是ext4基本信息:
超级块 磁盘开头部分记录磁盘分区信息 比较重要 会有超级块副本
inode为i节点 保存除文件名以外的文件信息(文件名保存在父目录的inode中) 可使用ls -i查看文件inode编号
datablock 保存文件内容 inode节点会有指针指向datablock 一个形象的比喻 inode 为火车头 datablock为火车车厢
一些操作中inode的变化:
cp 复制 会创建一个文件 两个文件inode 编号不同
mv 重命名时 同一个目录内 inode编号不变 不在同一个目录内操作时 要视在不在同一个分区而定 在同一块分区时操作很快 只是重命名而已 不再同一分区就需要复制
vim 文件使用vim前后inode编号不同 在vim时 目录内会产生一个.swp文件.退出vim才会保存至原文件
rm 断开文件名和inode之间的链接 所以无论文件多大 删除文件总是很快
ln 增加文件名和inode之间的链接 只使用ln时不能跨区操作 叫做普通连接
ln -s 可以跨区操作 叫做符号连接 会产生新的inode 777权限 对链接文件权限修改会影响被链接文件 而不会影响符号链接文件
facl问文件访问控制表 记录文件权限信息
getfacl file 获得file文件的权限信息
setfacl -m u:user1:rw file 设置user1对file的权限为rw -m为赋予权限 相应-x撤销权限 u:表示设置用户权限 相应 g:设置组权限
配置文件在 /etc/fstab/
/dev/sda /mnt/sdc1 ext4(文件类型) defaults(读写设置默认) 0(是否备份) 0(是否开机自检)
分区和挂载
fdisk /dev/sda 对sda磁盘进行分区
mkfs.ext4 /dev/sda 将sda磁盘格式化 为ext4类型 (格式化为其他格式时将mkfs.ext4中的ext4更换为其他格式
mount -t ext4 /dev/sda /mnt/sdc1 将sda挂载到sdc1 -t指定文件系统的类型
上面步骤只是临时的分区(记录保存在内存中) 若想系统重启之后仍然有效需修改配置文件 /etc/fstab
parted 对T单位级别的磁盘操作
用户磁盘配额 限制用户使用系统磁盘资源
在挂载时使用 mount -o uqota,gqota 支持磁盘配额
然后使用 xfs_quota 命令操作 i限制inode个数 b限制datablock个数
交换分区补充 当现有交换分区不够使用时 可以使用磁盘扩充也可以使用文件扩充
mkswap 用新硬盘扩充 然后再格式化挂载
swapon 打开交换分区 swapoff关闭交换分区
文件扩充可以使用dd 命令创建文件 然后再格式化挂载
RAID磁盘整列
RAID0 striping 条带方式 两块磁盘操作 提高吞吐率
RAID1 mirroring 镜像方式 一般用来备份 可靠性高 容量降低了
RAID5 奇偶校验 三块磁盘
RAID10 综合了RAID0 和RAID1 的方法 需要四块磁盘
软件RAID mdadm命令
逻辑卷 将物理卷组成一个卷组 然后按照需要再分配逻辑卷 可能会用到 pvcreate vgcreate lvcreate pvs lvs 等命令