Linux 常用命令2
blkid 查询设备上所采用的文件系统类型 ( ubuntu 使用的 ext4,对于超大容量磁盘,建议使用 xfs)
cat /proc/filesystems 列出系统支持的文件类型
df 列出磁盘用量( df -h 更直观显示容量)
du 列出目录下的所有文件容量(du -h 更直观)-a 把文件也显示出来
刚装完系统时, /usr 容量最大
ln 建立链接文件 -s 是快捷方式 不加 -s 是实体链接(hard link)
rm 用于删除文件或目录,使用 rm 前建议使用 ll 确认要删除的内容,避免失误
lsblk 列出本系统下所有磁盘与磁盘内的分区信息
parted /dev/sda print 列出磁盘的相关数据
在 Win10 的 WSL 里,可以看到 ubuntu 的分区表格式是 loop ,而不是之前提到的 MBR / GPT
磁盘分区时 gdisk 对应 GPT / fdisk 对应 MBR 的分区表
partprobe -s 更新 Linux 核心的分区表信息
磁盘格式化时,如果要使用 xfs 文件系统,可以使用 mkfs.xfs 命令
xfs_admin 可修改 XFS 文件系统的 UUID 与 Label name
如果是使用 ext4 文件系统,可以使用 mkfs.ext4 命令
tune2fs 可修改 ext4 文件系统的 UUID 与 Label name
除此之外,mkfs 还支持许多命令,可以按 mkfs [tab][tab] 看到提示
grep 'processor' /proc/cpuinfo 查看电脑的 CPU 核心数
文件系统检验命令
xfs_repair 处理 XFS 文件系统
fsck 这个指令可以用来处理 ext4 等文件系统
这两个命令类似于 Windows 里的 scandisk ,在扫描过程中,被检查的 partition 不能被挂载到系统中,有必要的情况下,可以加 -d 进入单人模式强制扫描。
文件系统的挂载
单一文件系统不应该被重复挂载在不同的挂载点(目录)中
单一目录不应该重复挂载多个文件系统
要作为挂载点的目录,理论上应该是空目录
mount
使用 Shell 时,光驱一挂载之后就无法退出光盘片了,除非将它卸除
mount -o remount,rw,auto / 将 / 重新挂载,并加入参数为 rw 与 auto
mount -o loop /mnt/XXX /dev/dvd1 将 /mnt/XXX 文件挂载到 /dev/dvd1,挂载 ISO 镜像时常用
mount -n -o remount,rw / 用于单人维护模式时,将 / 重新挂载为可读写
umount 将挂载装置移除,在移除时,工作目录要切出来
mknod 指定装置的类型、major 、 minor 数值等参数
mknod /dev/vda10 b 252 10 表示建立装置 /dev/vda10 ,以可移除装置类型
b 可移除装置 c 周边输入设备,如鼠标键盘等 p FIFO文件
Major 主要装置代码 Minor 次要装置代码
使用 cat /etc/fstab 可以列出已挂卸信息
【Label Name】【挂载点】【文件系统】【文件系统参数】【dump】【fsck】
可以用 nano /etc/fstab 添加开机自动挂载的装置,建议使用 UUID
也就是加入一行 【UUID】【挂载点】【文件系统】【文件系统参数】【dump】【fsck】
uuidgen 生成一个UUID
利用 dd 命令,我们可以建立一个空文件,并将它挂载到系统中
dd if=/dev/zero of=/srv/loopdev bs=1M count=512 这个命令创建了一个 512M 的文件
/dev/zero 是会一直输出 0 的装置
然后格式化成 ext4 格式:mkfs.ext4 /srv/loopdev
接着查询 UUID : blkid /src/loopdev
查到 UUID 后,把它挂载到系统:mount -o loop UUID="69bc7efc-f4ad-442d-aeb4-e69ec19d3a2e" /mnt
看一下现在的挂载: df /mnt 或者 blkid
可以尝试把它放到系统开机加载里面:
nano /etc/fstab 打开这个文件并加入
UUID="69bc7efc-f4ad-442d-aeb4-e69ec19d3a2e" /mnt/usb1 ext4 defaults,loop 0 0
这地方加载报错了,我新建了另一个文件夹,并修改挂载点后正常 mkdir /data/usb1
free 输出内存使用情况,加 -h 自动换算
swapon -s 输出现有虚拟内存情况
如果把磁盘划分一块用作虚拟内存,需要在 /etc/fstab 文件中添加类似这样的语句:
UUID="" swap swap defaults 0 0
具体的操作如下:
su - 提权
dd if=/dev/zero of=/tmp/swap bs=1M count=128 创建128M 的文件
ll -h /tmp/swap 查看文件是否已创建
mkswap /tmp/swap 将文件格式化为 swap 格式
swapon /tmp/swap 使用 swapon 来将 /tmp/swap 启动
swapon -s 输出现有虚拟内存情况
swapoff /tmp/swap 关掉 swap file
nano /etc/fstab 编辑 /etc/fstab 文件
在最后一行加入 /tmp/swap swap swap defaults 0 0 后保存并退出
swapon -a 重新加载 swap 文件
swapon -s 输出现有虚拟内存情况
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2017-07-17 [C#]反射相关