linux下玩转磁盘管理与挂载硬盘,2024最新中高级Java面试题目

1、列出分区表

列出分区表,从下面的列出的选项可以看出,原始的磁盘磁盘 /dev/sda:21.5 GB是初始安装linux操作系统就分配的。另外一块磁盘,是我新增的磁盘sdb用于测试演示。

fidsk -l

[root@cnwangk /]# fdisk -l

磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x0001805e

设备 Boot Start End Blocks Id System

/dev/sda1 * 2048 411647 204800 83 Linux

/dev/sda2 411648 4507647 2048000 83 Linux

/dev/sda3 4507648 8603647 2048000 82 Linux swap / Solaris

/dev/sda4 8603648 41943039 16669696 5 Extended

/dev/sda5 8605696 41943039 16668672 83 Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x95df3b22

设备 Boot Start End Blocks Id System

/dev/sdb2 10485760 20971519 5242880 83 Linux

直接输入fdisk命令,中文版会提示帮助信息以及使用方法

fdisk [选项] <磁盘> 更改分区表

#例如新增的磁盘sdb

fdisk /dev/sdb

fdisk [选项] -l <磁盘> 列出分区表

fdisk -s <分区> 给出分区大小(块数)

二、建立linux文件系统


1、xfs文件系统

如下所示,我将新建xfs文件系统,指向的是新增的一块磁盘文件路径/dev/sdb。同样也是Redhat7系列默认推荐的使用格式。

mkfs.xfs /dev/sdb

做一个简单说明:xfs文件系统提供了备份分区工具xfsdump以供用户使用。优势在于用户不用借助第三方软件就可以实现对xfs文件系统上的数据实施备份。备份过程如下所示:

xfsdump /backup/dump_sdc1 /sdc1

2、btrfs文件系统

如下所示,我将新建btrfs文件系统,指向的是新增的一块磁盘文件路径/dev/sdb,下面最终演示的也是btrfs文件系统的配置。

mkfs.btrfs /dev/sdb

3、ext文件系统

在Redhat6以及之前,用的还是ext文件系统。后来到7系列推荐使用xfs文件系。

mkfs.ext4 /dev/sdb

三、创建要挂载的路径


1、创建挂载的文件data

使用mkdir命令创建data目录,用于后续挂载新增的磁盘。

mkdir /data

查看创建好的挂载路径data,初始是空的

ls /data

2、使用磁盘

写入一个简单shell的脚本作为演示

echo -e “echo “hello linux”\necho “create btrfs filesystem”” >> /data/data.sh

写入简单的shell脚本后,测试查看并执行这个脚本

#再次查看data盘下的文件

[root@cnwangk /]# ls /data/

data.sh

sh /data/data.sh

#运行脚本

[root@cnwangk /]# sh /data/data.sh

hello linux

create btrfs filesystem

从上面可以看出一个基本的磁盘的管理,会引出一些基本命令的使用,比如ls、mkdir、echo等等。本文的受众群体是需要掌握一些linux基本命令知识的。当然能看到本文的,也说明您还是有一些基础的。

四、使用fdisk对/dev/sdb进行分区


1、分区命令fdisk

使用fdisk对新增的磁盘/dev/sdb进行分区,之前演示我已经使用主分区2,现在演示是逻辑扩展分区,使用参数e。

  • 新增分区:n

  • 新增主分区:p

  • 扩展分区:e

  • 注意:你可以自定义大小,也可以回车就是使用默认大小和扇区。

fdisk /dev/sdb

[root@cnwangk /]# fdisk /dev/sdb

欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。

使用写入命令前请三思。

命令(输入 m 获取帮助):n #新增分区,p则为主分区,e则为扩展分区

Partition type:

p primary (1 primary, 0 extended, 3 free)

e extended

Select (default p): e

分区号 (1,3,4,默认 1):1

起始 扇区 (2048-20971519,默认为 2048):

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):

将使用默认值 10485759

分区 1 已设置为 Extended 类型,大小设为 5 GiB

命令(输入 m 获取帮助):p #此时用参数p查看未保存的分区信息

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x95df3b22

#查看到新增分区的设备信息

设备 Boot Start End Blocks Id System

/dev/sdb1 2048 10485759 5241856 5 Extended

/dev/sdb2 10485760 20971519 5242880 83 Linux

命令(输入 m 获取帮助):w #输入w参数进行保存,输入q进行不保存退出。

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

正在同步磁盘。

五、建立btrfs文件系统


1、建立文件系统

新建btrfs文件系统,在确定进行分区之后执行此命令,最后进行挂载磁盘。

mkfs.btrfs /dev/sdb2

同样可以使用如下命令

mkfs -t btrfs /dev/sdb2

六、挂载文件系统


1、挂载命令mount

接着上面建立好btrfs文件系统,此时再挂载到新建的data目录下。虽然是挂载成功了,但只是临时生效,重启会掉盘挂载后硬盘。而且卷标还会显示成字母加数字的一串长字符串,类似这种s1k544y55fsa445dda44sd4545eff4字符串。究其原因,Linux还是以文件系统为核心的。没有目录这个概念,只是方便大家理解,都习惯这样称呼。

1.1、使用mount挂载,看到的是sdb2,是因为之前已经创建了一个分区sdb1。

mount /dev/sdb2 /data

1.2、使用umount卸载

umount /dev/sdb2 /data

2、写入fstab文件

2.1、永久生效需要写入/etc/fstab文件中,使用echo命令追加数据到fstab文件中。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

那么如何才能正确的掌握Redis呢?

为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题

  • 并发编程面试题汇总

  • JVM面试题汇总

  • Netty常被问到的那些面试题汇总

  • Tomcat面试题整理汇总

  • Mysql面试题汇总

  • Spring源码深度解析

  • Mybatis常见面试题汇总

  • Nginx那些面试题汇总

  • Zookeeper面试题汇总

  • RabbitMQ常见面试题汇总

JVM常频面试:

Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计

Mysql面试题汇总(一)

Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计

Mysql面试题汇总(二)

Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计

Redis常见面试题汇总(300+题)

Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计
is呢?

为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题

  • 并发编程面试题汇总

  • JVM面试题汇总

  • Netty常被问到的那些面试题汇总

  • Tomcat面试题整理汇总

  • Mysql面试题汇总

  • Spring源码深度解析

  • Mybatis常见面试题汇总

  • Nginx那些面试题汇总

  • Zookeeper面试题汇总

  • RabbitMQ常见面试题汇总

JVM常频面试:

[外链图片转存中…(img-kbdPoLQW-1711706650011)]

Mysql面试题汇总(一)

[外链图片转存中…(img-JwNf5WnZ-1711706650012)]

Mysql面试题汇总(二)

[外链图片转存中…(img-w7ghC73j-1711706650012)]

Redis常见面试题汇总(300+题)

[外链图片转存中…(img-nbKz9XXa-1711706650013)]

  • 17
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值