1. linux中的进程和服务
计算机中,一个正在执行的程序或命令,被叫做“进程(process)”。
启动之后一直存在、常驻内存的进程,一般被称作“服务(service)”。
2. systemctl
2.1 基本语法
systemctl start/stop/restart/status 服务名
2.2 经验技巧:
查看服务的方法:/usr/lib/systemd/system
2.3 例:防火墙相关操作
注意:firewalld这个后面d是daemon的意思,代表守护进程。
[root@yhx system]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2022-08-03 14:55:56 CST; 14s ago
Docs: man:firewalld(1)
Main PID: 11628 (firewalld)
CGroup: /system.slice/firewalld.service
└─11628 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid
Aug 03 14:55:55 yhx systemd[1]: Starting firewalld - dynamic firewall daemon...
Aug 03 14:55:56 yhx systemd[1]: Started firewalld - dynamic firewall daemon.
Aug 03 14:55:56 yhx firewalld[11628]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.
[root@yhx system]# systemctl stop firewalld
[root@yhx system]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
Aug 03 14:55:55 yhx systemd[1]: Starting firewalld - dynamic firewall daemon...
Aug 03 14:55:56 yhx systemd[1]: Started firewalld - dynamic firewall daemon.
Aug 03 14:55:56 yhx firewalld[11628]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.
Aug 03 14:56:18 yhx systemd[1]: Stopping firewalld - dynamic firewall daemon...
Aug 03 14:56:18 yhx systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@yhx system]# systemctl start firewalld
[root@yhx system]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2022-08-03 14:56:27 CST; 1s ago
Docs: man:firewalld(1)
Main PID: 11773 (firewalld)
CGroup: /system.slice/firewalld.service
└─11773 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid
Aug 03 14:56:27 yhx systemd[1]: Starting firewalld - dynamic firewall daemon...
Aug 03 14:56:27 yhx systemd[1]: Started firewalld - dynamic firewall daemon.
Aug 03 14:56:27 yhx firewalld[11773]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.
[root@yhx system]#
3. linux设置后台服务自启
3.1 基本语法:
systemctl list-unit-files
:查看服务开机启动状态systemctl disable service_name
:关掉指定服务的自动启动systemctl enable service_name
:开启指定服务的自动启动
3.2 例:开启/关闭iptables(防火墙)服务的自动启动
[root@yhx system]# systemctl enable firewalld.service
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.
[root@yhx system]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@yhx system]#
4. 系统运行级别
4.1 centos6中的系统运行级别:
4.2 centos7的运行级别简化为:
- multi-user.target 等价于原运行级别 3(多用户有网,无图形界面)
- graphical.target 等价于原运行级别 5(多用户有网,有图形界面)
4.3 查看当前运行级别:
systemctl get-default
4.4 修改当前运行级别
systemctl set-default TARGET.target (这里 TARGET 取 multi-user 或者 graphical)
5. 关闭重启命令
在 linux 领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机
5.1 基本语法:
- sync:将数据由内存同步到硬盘中
- halt:停机,关闭系统,但不断电
- poweroff:关机,断电
- reboot:就是重启,等同于 shutdown -r now
- shutdown [选项] 时间:
5.2 经验技巧:
Linux 系统中为了提高磁盘的读写效率,对磁盘采取了 “预读迟写”操作方式。当用户 保存文件时,Linux 核心并不一定立即将保存数据写入物理磁盘中,而是将数据保存在缓 冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是, 也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导 致数据丢失。使用 sync 指令可以立即将缓冲区的数据写入磁盘
5.3 案例实操
- 将数据由内存同步到硬盘中:
[root@hadoop100 桌面]#sync
- 重启
[root@hadoop100 桌面]# reboot
- 停机(不断电)
[root@hadoop100 桌面]#halt
- 计算机将在 1 分钟后关机,并且会显示在登录用户的当前屏幕中
[root@hadoop100 桌面]#shutdown -h 1 ‘This server will shutdown after 1 mins’
- 立马关机(等同于 poweroff)
[root@hadoop100 桌面]# shutdown -h now
- 系统立马重启(等同于 reboot)
[root@hadoop100 桌面]# shutdown -r now