Linux操作系统——系统各目录有什么作用、以及文件链接过程
nanshan 2024-11-08 12:40 8 浏览 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)
相关推荐
- ssh终端xshell日志查看命令(xshell怎么看日志)
-
现在我们云服务器运维较多用的是SSH工具,其中常用的包括PUTTY、XSHELL等,其实大同小异界面UI稍微不同,但是都可以进入远程连接。这里有朋友提到如何查看服务器的日志文件,这个其实和是否使用XS...
- 使用 Fail Ban 日志分析 SSH 攻击行为
-
通过分析`fail2ban`日志可以识别和应对SSH暴力破解等攻击行为。以下是详细的操作流程和关键分析方法:---###**一、Fail2ban日志位置**Fail2ban的日志路径因系统配置...
- 如何高效读取Linux日志文件?这些命令要熟记于心!
-
在Linux系统中,日志文件通常存储在/var/log目录下。比如,/var/log/syslog(或/var/log/messages,视发行版而定)记录系统整体事件,/var/log/a...
- Windows服务器远程登录日志查询方法,linux查看登录日志方法
-
概述本文介绍Windows、Linux服务器查询系统的远程登录日志方法。根据服务器所使用的操作系统不同,有以下两种查询方法。Linux操作系统的登录日志查询通过远程连接登录Linux服务器,使用roo...
- iptables防火墙如何记录日志(防火墙日志查看)
-
例如:记录所有ssh服务的登录的日志首先,我们需要了解如何将所有的iptables的INPUT链数据包记录到/var/log/messages中。如果你已经有一些iptables规则了,那么将记录日志...
- 如何安全管理SSH密钥以防止服务器被入侵
-
SSH密钥安全管理实施指南(2025年更新版)一、密钥生成与存储规范高强度密钥生成bashCopyCodessh-keygen-ted25519-a100#生成ED25519算法密钥(比...
- 在CentOS上安装nginx服务器(centos搭建代理服务器)
-
一、环境描述1.虚拟机配置CPU:单核内存:2GB硬盘:120GBIP:10.24.17.1082.操作系统版本:CentOS6.6x86_64安装方式:Minimal3.虚拟化环境VM...
- CentOS7安全加固的一份整理规划建议
-
◆更新系统:及时更新CentOS7操作系统版本和安全补丁,确保系统以最新状态运行。◆关闭不必要的服务:在运行系统时,应关闭不需要的服务和端口,以减少系统暴露的攻击面。◆安装防火墙:使用iptables...
- 第四十七天-二叉树,centOS安装tomcat,Maven,vsftpd
-
学习笔记:1.Maven是Apache下的一个纯Java开发的开源项目。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。Maven...
- Linux远程桌面连接使用教程 Widows终端远程连接Linux服务器
-
一、前言为什么不是远程连接Linux服务器?因为我不会,远程连接window我就用电脑自带的“远程桌面连接”。以下所述都是在CentOS操作系统下的。服务器刚换成Linux的时候很迷茫,感觉无从下手...
- CentOS 安全加固操作,保护你的操作系统
-
系统加固是保障系统安全的重要手段,对于维护企业数据安全、用户隐私以及系统稳定运行具有重要意义。加固后的系统更加健壮和稳定,能够有效减少因安全问题导致的系统故障和停机时间,提高系统的可用性和可靠性。通过...
- Dockerfile部署Java项目(docker如何部署java项目)
-
1、概述本文主要会简单介绍什么是Docker,什么是Dockerfile,如何安装Docker,Dockerfile如何编写,如何通过Dockerfile安装jar包并外置yaml文件以及如何通过do...
- CentOS7云主机部署Fail2ban阻断SSH暴力破解
-
关于Fail2banFail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽)例如:当有人在试探你的HTTP、SSH、SMTP、FTP密...
- 在CentOS7上用源码编译安装PostgreSQL
-
1、新建postgres用户#useraddpostgres&&passwdpostgres2、安装依赖包#yum-yinstallmakegccgcc-c++readline...
- pure-ftpd 使用(ftp prompt命令)
-
pure-ftpd是一个免费的ftp软件,其他介绍就不多说了。我们直接开始主题安装centosyuminstallepel-releaseyuminstallpure-ftpd配置备份原配置...
你 发表评论:
欢迎- 一周热门
-
-
如何在安装前及安装后修改黑群晖的Mac地址和Sn系列号
-
爱折腾的特斯拉车主必看!手把手教你TESLAMATE的备份和恢复
-
[常用工具] OpenCV_contrib库在windows下编译使用指南
-
Ubuntu系统Daphne + Nginx + supervisor部署Django项目
-
WindowsServer2022|配置NTP服务器的命令
-
WIN11 安装配置 linux 子系统 Ubuntu 图形界面 桌面系统
-
解决Linux终端中“-bash: nano: command not found”问题
-
NBA 2K25虚拟内存不足/爆内存/内存占用100% 一文速解
-
Linux 中的文件描述符是什么?(linux 打开文件表 文件描述符)
-
K3s禁用Service Load Balancer,解决获取浏览器IP不正确问题
-
- 最近发表
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)