linux | ubuntu虚拟机创建硬盘、磁盘分区、分区挂载、自动挂载、磁盘清理

2024-08-20 20:25:08 浏览数 (2)

01、创建硬盘

>>>什么使硬盘? 点击虚拟机设置,这里有两个硬盘,一个100G,一个20G 应用场景,下载yocto时,磁盘空间不足,所以写下这篇文章,供大家参考

>>>开始创建一个新的硬盘 点击添加

【选择硬盘 下一步】

【推荐 下一步】

【选择第一个 下一步】

【这里假如分配50G 选择单个文件】

【之后就会生成一个.vmdk格式的文件】

【添加成功】

【不想要了就移除,如果已经使用过了,移除可能会丢失你下载过的文件,记得备份】

按ctrl E进入目录查看,根据时间判断,移除只是在虚拟机移除,并未在已安装的位置移除,记得手动移除,不然你的ubuntu只会越来越大

02、磁盘分区

>>>

1. 查看可用磁盘 首先,使用lsblk命令查看系统中的所有磁盘和分区: lsblk 这将列出所有可用的磁盘和分区,帮助你确定要分区的磁盘。

【创建不同的硬盘会有不同的名字,例如第一次一般是sda,第二次是sdb,以此类推】

这里以sdb为例,默认没有创建分区是,只显示sdb,没有sdb1

2. 使用 fdisk 进行分区

假设你要分区的磁盘是 /dev/sdb,你可以使用以下命令启动 fdisk

代码语言:javascript复制
sudo fdisk /dev/sdb

3. fdisk 命令

进入 fdisk 后,你可以使用以下命令进行分区:

  • n:创建新分区
  • d:删除分区
  • p:显示分区表
  • w:写入更改并退出
  • q:不保存更改并退出
创建新分区
  1. 输入 n 创建新分区。
  2. 选择分区类型(主分区或扩展分区)。输入 p
  3. 选择分区号。输入 1
  4. 设置分区的起始扇区。保持默认
  5. 设置分区的结束扇区(可以使用默认值或手动设置)。保持默认
删除分区
  1. 输入 d 删除分区。
  2. 选择要删除的分区号。
显示分区表

输入 p 显示当前的分区表。

写入更改

完成分区后,输入 w 写入更改并退出 fdisk

【我已经将sdb分区为sdb1了,步骤如下】

  1. 1、输入 n 创建新分区。输入 n
  2. 2、选择分区类型(主分区或扩展分区)。输入 p
  3. 3、选择分区号。输入 1
  4. 4、设置分区的起始扇区。保持默认
  5. 5、设置分区的结束扇区(可以使用默认值或手动设置)。保持默认
  6. 6、输入w保存

4. 格式化分区

分区完成后,你需要格式化分区。假设你创建了一个新的分区 /dev/sdb1,你可以使用 mkfs 命令进行格式化。例如,格式化为 ext4 文件系统:

代码语言:javascript复制
sudo mkfs.ext4 /dev/sdb1

5. 挂载分区

格式化完成后,你可以将分区挂载到一个目录。例如,挂载到 /mnt/mydisk

代码语言:javascript复制
# 创建挂载点
代码语言:javascript复制
sudo mkdir -p /mnt/mydisk
代码语言:javascript复制
# 挂载分区
代码语言:javascript复制
sudo mount /dev/sdb1 /mnt/mydisk

【我的挂载如下】

【永久挂载这样操作】

6. 自动挂载

为了在系统重启后自动挂载分区,你需要编辑 /etc/fstab 文件。添加以下行:

代码语言:javascript复制
/dev/sdb1 /mnt/mydisk ext4 defaults 0 2

【总结如下】

代码语言:javascript复制
# 查看磁盘lsblk​# 使用 fdisk 进行分区sudo fdisk /dev/sdb​# 在 fdisk 中创建新分区(假设创建了一个主分区 sdb1)# 输入 n -> p -> 1 -> 默认起始扇区 -> 默认结束扇区 -> w​# 格式化分区sudo mkfs.ext4 /dev/sdb1​# 创建挂载点sudo mkdir -p /mnt/mydisk​# 挂载分区sudo mount /dev/sdb1 /mnt/mydisk​# 编辑 /etc/fstab 文件以自动挂载sudo nano /etc/fstab# 添加以下行:# /dev/sdb1 /mnt/mydisk ext4 defaults 0 2​

03、补充取消挂载

>>>查看硬盘分区挂载情况

1. 查看已挂载的文件系统

首先,使用mount命令或lsblk命令查看当前已挂载的文件系统:

代码语言:javascript复制
mount | grep /dev/sdb

或者

代码语言:javascript复制
lsblk

2. 取消挂载文件系统

使用umount命令取消挂载文件系统。你需要指定挂载点或设备。例如,如果你要取消挂载 /dev/sdb1,并且它挂载在 /mnt/mydisk

代码语言:javascript复制
sudo umount /dev/sdb1

或者

代码语言:javascript复制
sudo umount /mnt/mydisk

【总结如下】

代码语言:javascript复制
# 查看已挂载的文件系统mount | grep /dev/sdb​# 或者lsblk​# 取消挂载设备sudo umount /dev/sdb1​# 或者sudo umount /mnt/mydisk​# 检查是否成功取消挂载mount | grep /dev/sdb​# 或者lsblk

04、其他分区工具

>>>1. gdisk gdisk 是一个类似于 fdisk 的工具,但它支持 GPT(GUID Partition Table)分区表,适用于大于 2TB 的磁盘。 使用示例:

代码语言:javascript复制
sudo gdisk /dev/sdb

>>>parted parted 是一个更高级的分区工具,支持 MBR 和 GPT 分区表,并且可以在命令行中直接使用。 在 parted 中,你可以使用以下命令:

  • mklabel:创建新的分区表(例如,msdos 或 gpt)
  • mkpart:创建新分区
  • rm:删除分区
  • print:显示分区表
  • quit:退出 parted

使用示例:按tab可自动补齐

代码语言:javascript复制
sudo parted /dev/sdb​

>>>

>>>cfdisk cfdisk 是一个基于 curses 的图形化分区工具,适用于 MBR 分区表。 使用示例:

代码语言:javascript复制
sudo cfdisk /dev/sdb

【总结如下 parted为例

代码语言:javascript复制
# 启动 partedsudo parted /dev/sdb​# 创建新的 GPT 分区表(parted) mklabel gpt​# 创建新分区(parted) mkpart primary 0% 100%​# 显示分区表(parted) print​# 退出 parted(parted) quit​

05、ubuntu 清理

>>>请谨慎操作

代码语言:javascript复制
# 清理 APT 缓存sudo apt-get clean​# 删除不再需要的包sudo apt-get autoremove​# 删除旧的内核dpkg --list | grep linux-imagesudo apt-get purge linux-image-xxx​# 清理临时文件sudo rm -rf /tmp/*​# 清理用户缓存rm -rf ~/.cache/*​# 清理日志文件sudo journalctl --vacuum-time=3dsudo rm -f /var/log/*.log.*sudo rm -f /var/log/*.gz​# 使用 bleachbit 工具sudo apt-get install bleachbitbleachbit​# 清理缩略图缓存rm -rf ~/.cache/thumbnails/*​# 清理旧的配置文件sudo apt-get purge $(dpkg -l | grep '^rc' | awk '{print $2}')​# 清理 snapd 缓存sudo snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do sudo snap remove "$snapname" --revision="$revision"; done​

总结

>>>喜欢就支持一下吧,更多优质内容,持续更新

0 人点赞