百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

「干货」Linux磁盘分区及文件系统格式化和挂载,入门必看

bigegpt 2024-10-12 06:04 12 浏览

1. 磁盘在Linux系统中的表示方法

硬盘的类型: IDE接口 hda hdb .....

hda1 hda2 hda3 .......

SATA接口 SCSI接口 USB

sda sdb

sda1 sda2 sda3 ......

所有磁盘设备及分区都以文件的形式存储在/dev/,但是这些文件不能直接使用,如果要往这些分区内写入数据就需要挂载分区。

2、挂载点

所谓的挂载点就是文件系统中存在的一个目录,通常情况下,创建在/mnt目录下,挂载成功后,访问挂载点就是访问新的存储设备。

挂载点应该是空目录,否则原来该挂载点中存在的文件将会被隐藏。而且,挂载点在实施挂载操作之前就应该存在。

2、查询设备名

#df -hT 查看系统中所有已挂载文件系统的使用情况

#fdisk -l 查看系统的磁盘信息


打开百度APP,查看更多高清图片

磁盘分区

1、基本磁盘分区:

(1)最多可以分为四个主分区(包含扩展分区:只能有一个,将剩余的所有空间包含在内)。

(2)主分区和扩展分区的编号:1-4为主分区和扩展分区的编号。

(3)扩展分区不能直接使用,必须在扩展分区上建立逻辑分区并格式化后才能使用。

(4)逻辑分区编号从5开始。

(5)对新加的磁盘进行分区:(分2个主分区,1个扩展分区,2个逻辑分区)

fdisk 磁盘设备名

a toggle a bootable flag

b edit bsd disklabel

c toggle the dos compatibility flag

d delete a partition 删除分区

g create a new empty GPT partition table

G create an IRIX (SGI) partition table

l list known partition types 显示所有分区类型

m print this menu

n add a new partition 新建分区

o create a new empty DOS partition table

p print the partition table 显示分区表

q quit without saving changes

s create a new empty Sun disklabel

t change a partition's system id 修改分区类型

u change display/entry units

v verify the partition table

w write table to disk and exit 保存并出退出

x extra functionality (experts only)

(6)对磁盘进行格式化:mkfs -t 分区类型(ext2 ext3 ext4) 磁盘分区名

mkfs -t ext4 /dev/sdb1

(7)新建挂载点,并将分区进行挂载。

mount [-t 文件系统类型] 设备分区名 挂载点

mount -t ext4 /dev/sdb1 /mnt/sdb1

如何查看已经挂载成功:mount (mount | grep sdb1)

取消挂载:umount 挂载点

(8)挂载光驱设备

光驱设备在Linux系统中的表示方法:/dev/sr0

光驱设备文件系统类型:iso9660

将光盘挂载到/mnt/cdrom目录:

(9)永久挂载:使用mount命令挂载只是临时的,如果重启系统后就失效了。

/etc/fstab

[root@www cdrom]# vim /etc/fstab

[root@www cdrom]# mount -a

动态磁盘分区(LVM卷)

3、挂载文件系统

挂载由mount命令来完成,可以灵活的挂载各种类型的文件系统。

命令格式:mount [选项] [设备名] [挂载点]

4、卸载文件系统

文件系统可以被挂载,不用时可以被卸载。卸载文件系统的命令是umount,这个命令可以把文件系统从Linux系统中的挂载点上分离,将原来建立的文件系统和挂载点的连接断掉。

命令格式:umount [设备名或者挂载点]

在卸载一个文件系统的时候,需要指定要卸载的文件系统的挂载点或者设备名。例如:

#umount /dev/sdb1 //指定设备名卸载

#umount /mnt/sdb1 //指定挂载点卸载

如果卸载文件系统提示:“busy状态,不可卸载时”,使用fuser命令查看正在使用该文件系统的用户信息。

命令格式:fuser [options] 文件系统名或者文件名

【举例1】查看哪个进程打开了当前目录下的cdrom文件夹。

[root@localhost~]# fuser /mnt/cdrom

/mnt/cdrom: 71992c

杀死进程的方法:

(1)#kill -9 71992

(2)#fuser -km /mnt/cdrom

5、使用U盘备份文件(ntfs-3g)

(1)连接U盘

(2)查询系统为U盘分配的设备名

(3)挂载U盘

(4)备份文件

(5)卸载U盘

6、扩充系统的硬盘空间

管理员root发现Linux系统硬盘资源不足,因此在服务器上新增加了一块硬盘,想在Linux系统下使用它。通常遵循以下步骤:

(1)向系统中添加一块硬盘

(2)由系统识别硬盘名

(3)对新硬盘进行分区



(4)对分区进行格式化

(5)创建文件系统

(6)挂载使用

7、命令行下提高工作效率的方法

(1)Linux下Shell命令补全功能,按TAB键

(2)命令别名alias

(3)命令历史history

(4)文件系统的自动挂载

#vim /etc/fstab

第1字段:需要挂载的设备文件名。

第2字段:挂载点,必须是一个目录,而且必须用绝对路径。

对于交换分区,这个字段定义为swap。

第3字段:文件系统的类型。如果是ext3文件系统,则写成ext3;如

果是FAT32文件系统,则写成vfat;如果是光盘,可以写成

auto由系统自动检测或iso9660。

第4字段:挂载选项。一般都是采用“defaults”。

第5字段:文件系统是否需要dump备份,1表示需要,0表示忽略。

第6字段:在系统启动时是否检查这个文件系统以及检查的顺序,

0表示不检查,1表示优先检查,2表示其次检查。

相关推荐

Go语言泛型-泛型约束与实践(go1.7泛型)

来源:械说在Go语言中,Go泛型-泛型约束与实践部分主要探讨如何定义和使用泛型约束(Constraints),以及如何在实际开发中利用泛型进行更灵活的编程。以下是详细内容:一、什么是泛型约束?**泛型...

golang总结(golang实战教程)

基础部分Go语言有哪些优势?1简单易学:语法简洁,减少了代码的冗余。高效并发:内置强大的goroutine和channel,使并发编程更加高效且易于管理。内存管理:拥有自动垃圾回收机制,减少内...

Go 官宣:新版 Protobuf API(go pro版本)

原文作者:JoeTsai,DamienNeil和HerbieOng原文链接:https://blog.golang.org/a-new-go-api-for-protocol-buffer...

Golang开发的一些注意事项(一)(golang入门项目)

1.channel关闭后读的问题当channel关闭之后再去读取它,虽然不会引发panic,但会直接得到零值,而且ok的值为false。packagemainimport"...

golang 托盘菜单应用及打开系统默认浏览器

之前看到一个应用,用go语言编写,说是某某程序的windows图形化客户端,体验一下发现只是一个托盘,然后托盘菜单的控制面板功能直接打开本地浏览器访问程序启动的webserver网页完成gui相关功...

golang标准库每日一库之 io/ioutil

一、核心函数概览函数作用描述替代方案(Go1.16+)ioutil.ReadFile(filename)一次性读取整个文件内容(返回[]byte)os.ReadFileioutil.WriteFi...

文件类型更改器——GoLang 中的 CLI 工具

我是如何为一项琐碎的工作任务创建一个简单的工具的,你也可以上周我开始玩GoLang,它是一种由Google制作的类C编译语言,非常轻量和快速,事实上它经常在Techempower的基准测...

Go (Golang) 中的 Channels 简介(golang channel长度和容量)

这篇文章重点介绍Channels(通道)在Go中的工作方式,以及如何在代码中使用它们。在Go中,Channels是一种编程结构,它允许我们在代码的不同部分之间移动数据,通常来自不同的goro...

Golang引入泛型:Go将Interface「」替换为“Any”

现在Go将拥有泛型:Go将Interface{}替换为“Any”,这是一个类型别名:typeany=interface{}这会引入了泛型作好准备,实际上,带有泛型的Go1.18Beta...

一文带你看懂Golang最新特性(golang2.0特性)

作者:腾讯PCG代码委员会经过十余年的迭代,Go语言逐渐成为云计算时代主流的编程语言。下到云计算基础设施,上到微服务,越来越多的流行产品使用Go语言编写。可见其影响力已经非常强大。一、Go语言发展历史...

Go 每日一库之 java 转 go 遇到 Apollo?让 agollo 来平滑迁移

以下文章来源于GoOfficialBlog,作者GoOfficialBlogIntroductionagollo是Apollo的Golang客户端Apollo(阿波罗)是携程框架部门研...

Golang使用grpc详解(golang gcc)

gRPC是Google开源的一种高性能、跨语言的远程过程调用(RPC)框架,它使用ProtocolBuffers作为序列化工具,支持多种编程语言,如C++,Java,Python,Go等。gR...

Etcd服务注册与发现封装实现--golang

服务注册register.gopackageregisterimport("fmt""time"etcd3"github.com/cor...

Golang:将日志以Json格式输出到Kafka

在上一篇文章中我实现了一个支持Debug、Info、Error等多个级别的日志库,并将日志写到了磁盘文件中,代码比较简单,适合练手。有兴趣的可以通过这个链接前往:https://github.com/...

如何从 PHP 过渡到 Golang?(php转golang)

我是PHP开发者,转Go两个月了吧,记录一下使用Golang怎么一步步开发新项目。本着有坑填坑,有错改错的宗旨,从零开始,开始学习。因为我司没有专门的Golang大牛,所以我也只能一步步自己去...