Linux - 1 基础篇(连接模式、systemctl、vim)

1)网络操作

一、网络连接模式

image

image

1. 桥接模式(Bridged)
  • 原理:虚拟机直接 “桥接” 到物理网络,相当于物理网络中的一台独立设备,会获取与主机同网段的 IP 地址。
  • 特点:
    • 虚拟机可直接与局域网内其他设备(包括主机)通信;
    • 外部网络(如互联网)也能直接访问虚拟机(需注意防火墙和 IP 分配)。
  • 适用场景:需要虚拟机作为局域网内独立节点(如搭建网站服务器、测试网络服务)。
2. NAT 模式(Network Address Translation)(集群用这个)
  • 原理:虚拟机通过主机的 IP 地址 “共享上网”,主机充当 “网关”,虚拟机的 IP 是私有网段(如 192.168.xx.xx)。
  • 特点:
    • 虚拟机可访问外部网络(如上网、下载),但外部网络无法直接访问虚拟机(除非手动端口转发);
    • 主机和虚拟机可互相通信,局域网内其他设备无法直接访问虚拟机。
  • 适用场景:仅需虚拟机上网,且不需要被外部网络直接访问(如日常开发、临时测试环境)。
3. 仅主机模式(Host-Only)
  • 原理:虚拟机与主机组成一个 “私有网络”,虚拟机无法直接访问外部网络,仅能与主机通信。
  • 特点:
    • 网络完全隔离于外部,安全性高;
    • 适合搭建纯内部测试环境(如模拟局域网、测试无网络依赖的服务)。
  • 适用场景:需要完全隔离的内部网络环境,或仅需主机与虚拟机互访的场景。

二、网络常用命令

  1. ifconfig/ip:查看或配置网络接口信息(ip 是较新的命令)
    image
# 出现没有 ifconfig 命令
root@node01 tmp]# ifconfig 
-bash: ifconfig: 未找到命令

默认不再安装 net-tools 工具

# 安装 net-tools 工具集(包含 ifconfig、netstat 等老旧命令)
yum install net-tools -y
  1. ping 域名/IP:测试网络连接

  2. netstat -tuln:查看系统监听的端口(ss -tuln 是更高效的替代命令)

  3. wget 网址:下载文件

  4. curl 网址:发送 HTTP 请求或获取网页内容

三、修改静态网络

vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="b450c209-7364-4cd9-a1fd-8107118799d0"
DEVICE="ens33"
ONBOOT="yes"

dhcp动态修改为静态

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="b450c209-7364-4cd9-a1fd-8107118799d0"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.49.128  # 你想要的固定 IP(比如改成 192.168.50.123,网段必须是 192.168.50.x)
NETMASK=255.255.255.0  # 子网掩码(和网段匹配,固定 255.255.255.0)
GATEWAY=192.168.49.2   # NAT 网关(必须填 VMware 对应的网关,比如 192.168.50.2)
DNS1=8.8.8.8           # 首选 DNS(谷歌 DNS,稳定)
DNS2=114.114.114.114   # 备用 DNS(国内可用,防止首选失效)

保存网络重启

systemctl restart network

四、修改主机名

重启生效

 vim /etc/hostname

实时生效(新开终端)

# 查看主机名
hostnamectl
# 设置
hostnamectl set-hostname node01

五、修改 hosts

 vim /etc/hosts

image

这个时候windows的 hosts 添加同样的,就可以 ping 主机名

C:\Users\Administrator>ping node01

正在 Ping node01 [192.168.49.151] 具有 32 字节的数据:
来自 192.168.49.151 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.49.151 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.49.151 的回复: 字节=32 时间<1ms TTL=64

六、windows远程登录

image

2)服务管理 systemctl

CentOS 7 及以上抛弃了老旧的 chkconfig/service 命令,采用 systemd 作为默认服务管理器(通过 systemctl 命令操作),功能更强大、更稳定。

系统 / 工具 启动服务 停止服务 重启服务 开机自启 查看状态
CentOS 7+/systemctl systemctl start 服务名 systemctl stop 服务名 systemctl restart 服务名 systemctl enable 服务名 systemctl status 服务名
Ubuntu/systemctl 同上 同上 同上 同上 同上
旧版 Ubuntu/service service 服务名 start service 服务名 stop service 服务名 restart update-rc.d 服务名 defaults service 服务名 status

一、核心命令(systemctl + 服务名)

服务名通常是 xxx.service(如 sshd.servicefirewalld.service),可省略 .service 简写(如 sshd)。

功能需求 命令示例(以 SSH 服务 sshd 为例)
查看服务状态(最常用) systemctl status sshdactive(running) 表示运行中)
启动服务 systemctl start sshd
停止服务 systemctl stop sshd
重启服务(修改配置后用) systemctl restart sshd
重新加载配置(不重启) systemctl reload sshd(适合无需停止服务的配置更新)
设置开机自启(推荐) systemctl enable sshd(重启系统后自动启动)
关闭开机自启 systemctl disable sshd
查看是否开机自启 systemctl is-enabled sshd(输出 enabled/disabled
查看所有运行中的服务 systemctl list-units --type=service --state=running
查看所有已安装的服务 systemctl list-unit-files --type=service

例子, nginx服务

# 1. 安装 Nginx(先安装服务,再管理)
yum install nginx -y

# 2. 启动 Nginx 并设置开机自启(部署服务的常规操作)
systemctl start nginx
systemctl enable nginx

# 3. 查看 Nginx 状态(确认是否运行)
systemctl status nginx

# 4. 修改 Nginx 配置后,重新加载配置(不中断服务)
systemctl reload nginx

# 5. 临时停止 Nginx(测试用)
systemctl stop nginx

# 6. 关闭开机自启(后续无需该服务时)
systemctl disable nginx

二、查找服务

如果不清楚服务的准确名称(如 “防火墙服务” 对应的 firewalld),可通过以下命令查找:

# 方法 1:模糊搜索服务(以“firewall”为例)
systemctl list-unit-files --type=service | grep -i firewall

# 方法 2:查找已安装的服务(按名称排序)
systemctl list-unit-files --type=service | sort

# 方法 3:通过进程名反查服务(如已知进程名 nginx)
ps aux | grep nginx  # 查看进程
systemctl status $(pgrep nginx)  # 通过进程 ID 查服务

image

三、服务配置文件路径:

/usr/lib/systemd/system/(系统默认服务)或 /etc/systemd/system/(自定义服务),文件后缀为 .service

四、系统运行级别

CentOS 6

image

CentOs 7

multi-user.target 3 多用户字符界面环境,启动所有网络服务,是服务器的默认目标。
graphical.target 5 图形界面环境,依赖 multi-user.target,启动图形登录界面。

五、关机命令

1)基本语法

(1)sync (功能描述:将数据由内存同步到硬盘中)

(2)halt (功能描述:停机,关闭系统,但不断电)

(3)poweroff (功能描述:关机,断电)

(3)reboot (功能描述:就是重启,等同于 shutdown -r now)

(4)shutdown [选项] 时间

选项 功能
-H 相当于 --halt,关机
-r -r=reboot 重启
# 关机第1步,先将数据由内存同步到硬盘中
sync

# 关机(默认1分钟)
shutdown

# 取消关机
shutdown -c

# 关机(马上)
shutdown now

# 关机(3分钟)
shutdown 3

# 关机(21:30)
shutdown 21:30

系统信息和管理

  1. uname -a:显示系统内核版本、主机名等详细信息
  2. df -h:查看磁盘空间使用情况(以人类可读的单位显示)
  3. du -h:查看目录或文件的磁盘占用空间
  4. free -h:显示内存使用情况
  5. top/htop:实时查看系统进程和资源占用(htop 更直观)
  6. ps:查看进程状态
    • ps aux:显示所有进程的详细信息
  7. kill:终止进程
    • kill -9 进程ID:强制终止指定进程

用户和权限管理

  1. useradd/userdel:创建 / 删除用户
  2. passwd 用户名:修改用户密码
  3. su:切换用户(su - 用户名 切换并加载环境变量)
  4. sudo:以管理员权限执行命令
  5. chmod:修改文件或目录的权限
    • chmod 755 filename:设置文件所有者可读可写可执行,其他用户可读可执行
  6. chown:修改文件或目录的所有者
    • chown user:group filename:同时修改所有者和所属组

压缩和解压缩

  1. tar:打包和解包文件
    • tar -czvf file.tar.gz 目录:打包并压缩为 gzip 格式
    • tar -xzvf file.tar.gz:解压 gzip 格式的包
  2. zip/unzip:处理 zip 格式的压缩文件

3)VI 编辑器

vi 编辑器是 Linux 系统中常用的文本编辑工具,它有三种核心模式:命令模式(Command mode)插入模式(Insert mode)末行模式(Last line mode)。以下是常用的模式切换和操作技巧:

vim

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。 这三种模式的作用分别是:

命令模式:

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

  • i 切换到输入模式,以输入字符。

  • x 删除当前光标所在处的字符。

  • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

输入模式

在命令模式下按下i就进入了输入模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符

  • ENTER,回车键,换行

  • BACK SPACE,退格键,删除光标前一个字符

  • DEL,删除键,删除光标后一个字符

  • 方向键,在文本中移动光标

  • HOME/END,移动光标到行首/行尾

  • Page Up/Page Down,上/下翻页

  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线

  • ESC,退出输入模式,切换到命令模式

底线命令模式

在命令模式下按下:(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

  • q 退出程序

  • w 保存文件

按ESC键可随时退出底线命令模式。

简单的说,我们可以将这三个模式想成底下的图标来表示:

posted @ 2025-09-07 21:51  【唐】三三  阅读(39)  评论(0)    收藏  举报