Linux系统中,一切皆文件,从整体来看,Linux系统的目录结构如下图所示:
在Linux中,挂载点是指将一个文件系统与特定的目录关联起来的过程。通过挂载,可以将存储设备(如硬盘分区、移动存储介质等)上的文件系统连接到Linux文件系统的目录结构中,使得文件系统中的文件和目录能够在指定的目录下访问和操作。
在Linux系统中,会将硬盘分为两个区即根区和引导区(实际上是三个区,还有一个swap区,这里暂时忽略),根区挂载在根目录/
下,引导区挂载在/boot
目录下。同时我们也可将硬盘分为更多的分区,并将对应分区挂载到想要挂载的目录下。由此可见,Linux系统的目录只是一个虚拟目录,目录中两个文件夹的距离与在这两个文件夹在硬盘中存放的位置的距离无关。
/bin
: Binary的缩写。存放系统命令,普通用户和 root 都可以执行。放在 /bin 下的命令在单用户模式下也可以执行。该目录实际上是一个链接,会连接到usr目录下的bin目录。/boot
: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev
: Device的缩写。该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。/etc
: Etcetera的缩写。这个目录用来存放所有的系统管理所需要的配置文件和子目录。/home
: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。/lib
: Library的缩写。这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。该目录实际上是一个链接,会连接到usr目录下的lib目录。/lib64
: 64位相关的库会放在这。该目录实际上是一个链接,会连接到usr目录下的lib64目录。/media
: Linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。/mnt
: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt 上,然后进入该目录就可以查看光驱里的内容了。/opt
: optional的缩写。这是给主机额外安装软件所摆放的目录。/proc
: Processes的缩写。/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,是进程目录。它是系统内存的映射,存放现有硬件和当前系统进程的信息,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里。/root
: 该目录为系统管理员,也称作超级权限者的用户主目录。/run
: 运行目录,存放当前系统运行以来的所有实时信息,系统重启后会被清除。/sbin
: s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。该目录实际上是一个链接,会连接到usr目录下的sbin目录。/srv
: 该目录存放一些服务启动之后需要提取的数据。/sys
: 虚拟文件系统。和 /proc/ 目录相似,该目录中的数据都保存在内存中,主要保存与内核相关的信息。/tmp
: temporary的缩写这个目录是用来存放一些临时文件的。/usr
: unix system resources缩写。用于存储系统软件资源。/var
: 用于存储动态数据,例如缓存、日志文件、软件运行过程中产生的文件等。以VIM打开一个文档就会直接进入一般模式(默认模式)。在该模式中,可以使用上下左右按键来移动光标;可以使用删除字符或删除整行来处理档案内容;也可以是用复制黏贴来处理文件数据。一般模式下常用的命令如下:
语法 | 功能描述 |
---|---|
yy | 复制光标所在一行数据 |
数字+yy | 复制从当前光标所在行往后指定数字行的数据 |
y^ | 复制从当前光标到本行起始的所有内容 |
y$ | 复制从当前光标到本行结束的所有内容 |
yw | 复制从当前光标到本词结束,包括后面的空格 |
p | 在光标所在处黏贴复制的内容 |
dd | 删除光标所在一行数据 |
数字+dd | 删除从当前光标所在行往后指定数字行的数据 |
d^ | 删除从当前光标到本行起始的所有内容 |
d$ | 删除从当前光标到本行结束的所有内容 |
dw | 删除从当前光标到本词结束,包括后面的空格 |
u | 撤销上一步操作 |
x | 剪切当前光标所在的字符,相当于del |
X | 剪切当前光标的前一个字符,相当于退格 |
r | 输入一个字符替换当前光标所在字符 |
R | 输入一个字符串替换当前光标开始的一段字符串 |
^ | 移动光标到当前行的行头 |
$ | 移动光标到当前行的行尾 |
w | 移动光标到下一个词的词头位置 |
e | 移动光标到当前词的词尾位置 |
b | 移动光标到上一个词的词头 |
H(或gg) | 移动到当前文档开头 |
G(或L) | 移动到当前文档的最后一行开头 |
数字+G | 移动光标到当前文档指定数字的行的开头 |
在一般模式下,通过按下指定的案件可以切换到编辑模式中,从而对文档进行数据的修改(通常是追加数据)。在编辑模式中,可以通过按下ESC键返回到一般模式。从一般模式切入到编辑模式的按键如下:
按键 | 用法 |
---|---|
i | 当前光标前开始插入数据 |
a | 当前光标后开始插入数据 |
o | 当前光标的下一行开始插入数据 |
I | 当前光标所在行最前开始插入数据 |
A | 当前光标所在行最后开始插入数据 |
O | 当前光标所在行的上一行开始插入数据 |
在一般模式中,输入按键【:
或/
或?
】可以切换到指令模式,在该模式当中,可以对文档的数据进行保存、搜寻、替换等操作。在指令模式中,可以通过按下ESC键返回到一般模式。从一般模式切换到指令模式的相关语法及含义如下表所示:
命令 | 功能 |
---|---|
:w | 保存 |
:q | 退出 |
:wq | 保存并退出 |
:q! | 不保存并退出 |
:wq | 保存并强制退出,可以修改某个只读文件权限的账户在修改该只读文件内容时常用到此命令 |
:noh | 取消高亮显示 |
:set nu | 显示行号 |
:set nonu | 关闭行号 |
/查找的词 | n查找下一次词,N查找上一个词 |
😒/old/new | 替换当前行中匹配到的第一个old为new |
😒/old/new/g | 替换当前行中匹配到的所有old为new |
:%s/old/new | 替换当前文档每行中匹配到的第一个old为new |
:%s/old/new/g | 替换当前文档中匹配到的所有old为new |
vim /etc/sysconfig/network-scripts/ifcfg-局域网名
BOOTPROTO="static"
,表示由动态分配ip修改为静态ipIPADDR=静态ip地址
②GATEWAT=网关IP地址
③DNS1=域名解析器IP地址
service network restart
重启网络hostname
或hostnamectl
vim /etc/hostname
hostnamectl set-hostname 新主机名
vim /etc/hosts
并添加ip地址 主机名
ssh [选项] [用户名]@[IP地址]
p
:指定远程连接的端口;i
:指定用于身份验证的私钥文件;scp [参数] [源文件] [目标地址]
-r
:递归复制整个目录;-P
:指定端口号;-i
:指定私钥文件进行身份验证;-v
:显示详细的调试信息scp -r user@remotehost:/path/to/directory .
service 服务名 start | stop | restart | status
systemctl start | stop | restart | status 服务名
vim /etc/inittab
init 运行级别
ctrl + alt + F2
②终端–>图形化界面:ctrl + alt + F1
systemctl get-default
systemctl set-default 运行级别
setup
即可进入配置开机启动的服务的配置界面*
代表启动,否则代表不启动chkconfig --list
chkconfig 服务名 on
chkconfig 服务名 off
chkconfig --level 级别 服务名 on
chkconfig --level 级别 服务名 off
systemctl list-unit-files
,disabled即为关闭,enabled即为开启,static为随机应变systemctl enable 服务名
systemctl disable 服务名
命令 | 功能 |
---|---|
sync | 将数据由内存同步到硬盘中 |
halt | 停机,关闭系统,但并不断电(内存内容不一定会丢失),等同于shutdown -H |
poweroff | 关机,断电,等同于shutdown now |
reboot | 重启,等同于shutdown -r now |
shutdown [选项] [时间] | 根据设置关闭电脑 |
-H
:相当于–halt,停机;② -r
:相当于reboot,重启