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

Linux操作系统——系统各目录有什么作用、以及文件链接过程

nanshan 2024-11-08 12:40 14 浏览 0 评论

上章节给大家整理了Linux常用的几组操作命令,本文主要给大家分享Linux系统目录结构,即各个目录的文件作用是什么、还有文件的链接,后续的文章会分享linux用户管理、文件操作权限等。

三、 Linux 系统目录结构

/bin — 用来贮存用户命令。目录 /usr/bin 也被用来贮存用户命令。

/sbin — 许多系统命令(例如 shutdown)的贮存位置。目录 /usr/sbin 中也包括了许多系统命令。

/root — 根用户(超级用户)的主目录。

/mnt — 该目录中通常包括系统引导后被挂载的文件系统的挂载点。譬如,默认的光盘挂载点是 /mnt/cdrom/.

/boot — 包括内核和其它系统启动期间使用的文件。

/lost+found — 被 fsck 用来放置零散文件(没有名称的文件)。

/lib — 包含许多被 /bin/ 和 /sbin/ 中的程序使用的库文件。

目录 /usr/lib/ 中含有更多用于用户程序的库文件。

/dev — 贮存设备文件(注意,设备文件不是驱动程序。过去,在添加新磁盘或设备后,往往需要手动增加设备文件。现在通常我们不需要手动增加设备文件,运行一下service kudzu start ,系统就会自动配置相应的设备)。

/etc — 包含许多系统配置文件和目录。

/var — 用于贮存 variable(或不断改变的)文件,例如日志文件和打印机假脱机文件。

/usr — 包括与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。

/proc — 一个虚拟的文件系统(不是实际贮存在磁盘上的),它包括被某些程序使用的系统信息。

/etc/rc.d — 启动的配置文件和脚本。

/tmp/ — 用户和程序的临时目录。所有系统用户均可读写。

/home — 用户主目录的默认位置。

/opt — 可选的(optional),可用来存放准备安装的文件。


四、 文件的连接

Linux 采用索引节点 inode 记录文件信息,每个文件或目录都唯一地对应 inode 数组中的一个元素。但一个元素可以与多个文件或目录名对应。文件名与索引节点号的对应称之为连接。

ln 命令用来对一个已经存在的文件建立连接。

例:cd /root

cp /etc/passwd .

ln /root/passwd /root/passwd.2

执行命令 ls –l 可在第二列看到连接数变为 2。

执行命令 ls –i 可以看到 passwd 和 passwd.2 具有相同的 inode。

这种通过相同 inode 共享同一个物理文件的方法称之为硬连接。

优点:可在不同目录通过不同路径访问同一个文件,节省磁盘空间又便于数据一致性;有一定防止误删除功能,只有同一个 inode 属于唯一一个连接时,数据才被物理删除。


缺点:不能连接目录,不能跨越不同文件系统(如分区、驱动器)。

加参数-s 执行 ln 命令可建立软连接,也称符号连接,如:

ln –s passwd passwd.2

执行 ls –l ,可看出 passwd.2 是 passwd 的符号连接。

passwd.2 和 passwd 是两个不同的文件,前者的文件数据是指向后者的路径。即便在源文件不存在的情况下也可建立符号连接。


五、 mv 命令

Linux 中没必要配备专门的文件更名命令,使用移动命令 mv 即

可完成文件的更名操作。mv 实际上是在创建一个新的硬连接后

删除旧的硬连接,以此实现文件的搬移或更名。如

mv passwd.2 passwd.b

执行 ls –i 命令可发现文件名变了但 inode 没变。


六、 获得帮助

①使用 man topic 命令查阅手册页,如欲了解 ls 命令,可:

man ls

man 命令只显示查找到的第一项。若同一主题的内容可在多个

部分找到(如 kill 既是 shell 命令又是系统调用),则需:

man –t 2 kill

⑵使用参数 - -help 可显示命令的帮助信息,如:

ls - -help 第四章 磁盘设备

一、 关于挂装的基本常识

?与 DOS/Windows 采用驱动器标识符(A:、B:、C:)使用磁盘设备的方法不同。Linux 采用单根目录树管理全部文件系统。磁盘设备必须挂载到系统目录树上才能使用。

(Linux 启动过程已完成对/、/ boot 和/swap 三个分区的挂装)

?所谓挂装,就是将该设备的文件系统作为一个分枝嫁接到主文件系统的过程。嫁接的位置称为挂装点。

?挂装点必须是个已经存在的目录。该目录可以不空,但用作挂装点后原内容将不可见,直到卸载为止。

?Linux 为用户的后续挂装专门提供了/mnt 目录,/mnt 下的目录用作挂装点。若无特别原因,应尽量遵循这一约定。

?只有 root 有权执行挂装与卸载操作。

?修改/etc/fstab 文件可实现启动时的自动挂装。

?gnome 和 KDE 环境支持光盘和软盘插入后的自动挂装。但在字符界面以及更多场合下,仍需用户手工挂装。

?挂装命令 mount,常用的语法格式是:

mount [-t 文件系统类型] [被挂装的设备文件] [挂装点]

常用的文件系统类型:

ext2 : Linux 的 ext2 文件系统

msdos : MS-DOS 的 FAT

vfat : Win95/98 的 VFAT

nfs : 网络文件系统

iso9660 : CD-ROM 光盘的标准文件系统

ntfs : WindowsNT 文件系统

auto : 自动检测文件系统的类型?卸载命令 umount,常用的语法格式是:

umount 挂装点或被挂装的设备文件

(如卸载光驱既可以 umount /mnt/cdrom 也可以 umount /dev/cdrom)

二、 应用实例:

①使用 CD-ROM:
挂装:mount /dev/cdrom /mnt/cdrom
卸载:umount /mnt/cdrom
 (挂装时也可使用-t iso9660 或-t auto 参数)
②使用软盘:
挂装:mount -t auto /dev/fd0 /mnt/floppy
或 mount /dev/fd0 /mnt/floppy
或 mount /mnt/floppy
卸载:umount /mnt/floppy
③使用 USB 盘:
挂装:mount -t vfat /dev/sda1 /mnt/usb
卸载:umount /mnt/usb
说明:⑴Linux 将 USB 盘作为 SCSI 盘处理;
⑵挂装前先要在/mnt 下创建一个 usb 目录;
⑶必要是可先 fdisk –l /dev/sd? 查看 U 盘的设备名。④访问硬盘上的 DOS/Windows 分区
先执行: fdisk –l /dev/hd?
了解 DOS/Windows 主分区和逻辑分区所在的位置,如果
Windows 有主分区 C 和逻辑分区 D 两个分区,一般是在
hda1 和 hda5。以访问逻辑分区 D 为例:,
挂装:mount -t auto /dev/hda5 /mnt/d
卸载:umount /mnt/d
当然/mnt/d 目录要事先存在。
如下命令可避免 dos 盘上的汉字文件名出现乱码:
 mount -t auto –o iocharset=gb2312 /dev/hda5 /mnt/d
若要使所有用户都对所挂装的/mnt/d 有读写权限,则需:
 mount –t vfat –o user,rw,exec,,umask-000 /dev/hda5 /mnt/d
若仍无法写 DOS 分区,则可能需要设置挂装点权限:
 chmod a=rwx /mnt/d
⑤使用 iso9660 映像文件:
在/mnt 目录下建一个目录 iso;
假设映像文件名为 a.iso,在/opt 目录下,则:
挂装:mount -t iso9660 -o loop /opt/a.iso /mnt/iso
卸载:umount /mnt/iso
挂装期间,在/mnt/iso 目录中可对映像包括的文件进行操作。

三、 软盘操作

①格式化

先低格:fdformat /dev/fd0H1440

再 mformat a: 在低格过的软盘上建立 DOS 文件系统。

或 mkfs –t ext2 /dev/fd0 1440 建立 ext2 格式。

② 读写软盘

挂装后才能使用,取出软盘前一定先要卸载以保数据完整。

可用 Linux 命令对/mnt/floppy 进行软盘文件操作。另外

Linux 还提供了一套称之为 mtools 的访问 dos 软盘的工具,

用法类似 dos。主要有 mformat、mdir、mmd、mcd、mrd、

mcopy、mcomp、mdel、mdeltree、mattrib、mren、mtype、

mlabel 等,键入 mtools 回车可列出其命令清单。

③复制软盘

先存源盘映像 dd if=/dev/fd0 of =temp.img

再写到目标盘 dd if=temp.img of =/dev/fd0

(在一些资料中其举例常加参数 bs=1440k,实验不加也可)

复制软盘不必事先挂装。

四、 制作 ISO 光盘映像文件

将源文件用归入一个目录,如 myfiles;

mkisofs -L -l -v -r -o /tmp/outfile.iso myfiles

/tmp/outfile.iso 即是生成的 ISO 映像文件。

(-L 允许文件名的第一个字符为句号;-l 可使用 iso9660 32 字符长度的文件名,可能在 DOS 下无法正常读取; -v 执行

时显示详细信息; -r 使用 Rock Ridge Extensions,开放所有文件的读权限;-o 指定映像文件名称。)

五、 其它磁盘命令

① fdisk 磁盘分区命令。-l 参数用于列出指定的外设分区表。

② df 检查磁盘空间及利用状况

③ du 显示磁盘中目录或文件的大小

例:du –b /boot

显示/boot 目录的大小。-b 参数用以指定单位为字节。

④ dd 介质拷贝命令

用指定大小的块拷贝文件并进行指定的格式转换。

bs=<字节数> 将输入 ibs 输出 obs 设定为指定的字节数

cbs=<字节数> 每次只转换指定的字节数

conv=<关键字> 指定文件的转换格式

count=<扇区数> 仅读取指定的扇区数

ibs=<字节数> 指定每次读取的字节数

if=<文件> 输入文件名,省略则从标准设备输入

obs=<字节数> 每次输出的字节数

of=<文件> 输出文件名,省略则输出到屏幕

seek=<扇区数> 输出数据跳过指定的扇区数。(扇长=obs)

skip=<扇区数> 读取跳过指定的扇区数。(扇长=ibs)

相关推荐

0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

生产环境starrocks 3.1存算一体集群部署

集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

在CentOS上添加swap虚拟内存并设置优先级

现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

国产深度(deepin)操作系统优化指南

1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

postgresql-15.4 多节点主从(读写分离)

1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

Docker 容器 Java 服务内存与 GC 优化实施方案

一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

虚拟内存设置、解决linux内存不够问题

虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

Elasticsearch性能调优(5):服务器配置选择

在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

Es如何落地

一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

针对Linux内存管理知识学习总结

现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

MySQL进阶之性能优化

概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

Linux Cgroups(Control Groups)原理

LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

linux 常用性能优化参数及理解

1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

如何在 Linux 中使用 Sysctl 命令?

sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

取消回复欢迎 发表评论: