網(wǎng)站首頁 編程語言 正文
前言
? ? ?Linux操作系統(tǒng)中包含了大量的服務(wù)程序,這些服務(wù)程序在切換運(yùn)行級別時(shí)根據(jù)預(yù)設(shè)的狀態(tài)進(jìn)行啟動(dòng)或終止,其中有不少系統(tǒng)服務(wù)可能并不是用戶需要的,但是默認(rèn)也運(yùn)行了
一、系統(tǒng)服務(wù)控制
1、systemctl
? ? ?在CentOS系統(tǒng)中,各種系統(tǒng)服務(wù)的控制腳本默認(rèn)放在usr/lib/systemd目錄下,通過systemctl命令工具可以實(shí)現(xiàn)對指定系統(tǒng)服務(wù)的控制,語法格式如下
systemctl 控制類型 服務(wù)名稱
? ? ?對于大多數(shù)系統(tǒng)服務(wù)來說,常見的幾種控制類型如下
start(啟動(dòng)):運(yùn)行指定的系統(tǒng)服務(wù)程序,實(shí)現(xiàn)服務(wù)功能 stop(停止):終止指定的系統(tǒng)服務(wù)程序,關(guān)閉相應(yīng)的功能 restart(重啟):先退出,再重新運(yùn)行指定的系統(tǒng)服務(wù)程序 reload(重載):不退出服務(wù)程序,只是刷新配置,在某些服務(wù)中與restart的操作相同 status(查看狀態(tài)):查看指定的系統(tǒng)服務(wù)的運(yùn)行狀態(tài)及相關(guān)信息
? ? ?對于在實(shí)際生產(chǎn)環(huán)境中運(yùn)行的服務(wù)器,不要輕易執(zhí)行stop或restart操作,以免造成客戶端訪問中斷,帶來不必要的損失,若只是要為系統(tǒng)服務(wù)啟用新的配置,可以采用相對溫和一些的“reload”參數(shù)重新加載配置,而不是生硬地執(zhí)行“restart”,例如,對于正在為用戶提供Web訪問的httpd服務(wù),當(dāng)需要應(yīng)用新的配置時(shí),建議執(zhí)行“systemctl reload httpd.service”命令來重新載入配置,而不是執(zhí)行"systemctl restart httpd.service"
2、target
(1)查看target
? ? ?明確當(dāng)前系統(tǒng)所在的target將有助于管理員排除一些應(yīng)用故障,若未能確知當(dāng)前所處的目標(biāo),可以直接執(zhí)行“runlevel”命令進(jìn)行查詢,顯示結(jié)果中的兩個(gè)字符分別表示切換前的目標(biāo)和當(dāng)前的目標(biāo),若之前尚未切換過運(yùn)行級別,則第1列將顯示“N”
? ? ?若用戶想查看系統(tǒng)啟動(dòng)時(shí)默認(rèn)運(yùn)行的target,可以執(zhí)行“systemctl get-default”命令以顯示系統(tǒng)默認(rèn)的target
運(yùn)行級別systemd的target說明0target使用該級別會(huì)關(guān)閉主機(jī)1rescue.target單用戶模式,不需要密碼驗(yàn)證即可登錄系統(tǒng),多用于系統(tǒng)維護(hù)2multi-user.target用戶定義/域特定運(yùn)行級別,默認(rèn)等同于33multi-user.target字符界面的完整多用戶模式,大多數(shù)服務(wù)器主機(jī)運(yùn)行在此級別4multi-user.target用戶定義/域特定運(yùn)行級別,默認(rèn)等同于35graphical.target圖型界面的多用戶模式,提供了圖形桌面操作環(huán)境6reboot.target重新啟動(dòng),使用該級別時(shí)將會(huì)重啟主機(jī)
(2)切換target
? ? ?當(dāng)用戶需要將系統(tǒng)轉(zhuǎn)換為其他的target時(shí),可以通過傳統(tǒng)的init程序進(jìn)行,只要使用與運(yùn)行級別相對應(yīng)的數(shù)字(0-6)作為命令參數(shù)即可,或者使用systermctl命令進(jìn)行目標(biāo)切換,例如,為了節(jié)省系統(tǒng)資源,將系統(tǒng)運(yùn)行的target由圖形模式(5)切換為字符模式(3) ,可以執(zhí)行“init 3”或“systemctl isolate multi-user. target”命令,將系統(tǒng)切換到字符模式以后,圖形桌面環(huán)境不再可用,這時(shí)按Alt+F7組合鍵也無法恢復(fù)圖形桌面環(huán)境,需要再次使用圖形桌面時(shí),可以執(zhí)行“init 5”或者“systermctl isolate graphical target”命令切換回去
? ? ?通過切換target的操作,還可以實(shí)現(xiàn)兩個(gè)特殊的功能,那就是關(guān)機(jī)和重啟,運(yùn)行級別0和6分別對應(yīng)關(guān)機(jī)和重啟這兩個(gè)特殊模式,因此只要執(zhí)行“init 0”或“init 6”命令就可以實(shí)現(xiàn)相應(yīng)的關(guān)機(jī)或重啟操作了,運(yùn)行級別0、6又分別對應(yīng)著systemd的“poweroff.target”和“reboot.target”目標(biāo),因此執(zhí)行“systemctl poweroff”與“systemctl reboot”命令也可以實(shí)現(xiàn)相應(yīng)的關(guān)機(jī)、重啟操作
? ? ?若要永久切換運(yùn)行級別,可執(zhí)行如下命令可將當(dāng)前系統(tǒng)的開機(jī)默認(rèn)運(yùn)行級別從graphical.target更改為multi-user.target
systemctl set-default runlevel3.target
? ? ?使用以下命令讓開機(jī)界面切換回圖形界面模式
systemctl set-default runlevel5.target
3、常見系統(tǒng)服務(wù)
? ? ?在CentOS系統(tǒng)中,默認(rèn)安裝的系統(tǒng)服務(wù)多達(dá)100多種,這些系統(tǒng)服務(wù)為用戶提供了豐富的應(yīng)用服務(wù),只有了解各個(gè)系統(tǒng)服務(wù)的用途,才能有選擇地進(jìn)行優(yōu)化操作,實(shí)現(xiàn)按需啟用Linux服務(wù)
? ? ?CentOS系統(tǒng)中常見的系統(tǒng)服務(wù)
服務(wù)名稱用途atd延期、定期執(zhí)行任務(wù)bluetooth發(fā)現(xiàn)、認(rèn)證藍(lán)牙相關(guān)設(shè)備crond按預(yù)定周期執(zhí)行計(jì)劃任務(wù)irqbalance多核心CPU處理器的調(diào)度支持kdump記錄內(nèi)核奔潰時(shí)的內(nèi)存信息lvm2-monitorLVM管理及監(jiān)控netfs訪問共享文件夾等網(wǎng)絡(luò)文件系統(tǒng)network配置及使用網(wǎng)卡、網(wǎng)絡(luò)地址restorecondSELinux安全機(jī)制的文件監(jiān)控和恢復(fù)功能rhnsd訪問Red Hat Network,獲取通知、提交訂閱等rpcgssd管理NFS(Network File Systeam,網(wǎng)絡(luò)文件系統(tǒng))訪問中的客戶程序語境saslauthd基于文本的身份認(rèn)證smartd監(jiān)控本地硬盤的狀態(tài)并發(fā)送故障報(bào)告smb文件共享服務(wù)sshd提供遠(yuǎn)程登陸和管理Linux主機(jī)的功能rsyslog記錄內(nèi)核、系統(tǒng)的日志信息vsftpd通過FTP(File Transfer Protocol,文件傳輸協(xié)議)提供文件上傳、下載功能
? ? ?必須強(qiáng)調(diào)的是,這些服務(wù)到底是選擇開啟還是關(guān)閉,應(yīng)根據(jù)主機(jī)的實(shí)際功能需求來定,例如,如果當(dāng)前的Linux主機(jī)用來向局域網(wǎng)提供文件共享服務(wù),那么smb服務(wù)應(yīng)開啟,而不能關(guān)閉
4、開機(jī)自啟服務(wù)管理
? ? ?Linux操作系統(tǒng)在每次開機(jī)后會(huì)進(jìn)入默認(rèn)的systemd運(yùn)行目標(biāo)(如字符模式或圖形模式),并運(yùn)行該目標(biāo)中默認(rèn)設(shè)為啟動(dòng)的各種系統(tǒng)服務(wù),若要禁止某些系統(tǒng)服務(wù)自動(dòng)運(yùn)行,可以使用ntsysv或者systemctl工具進(jìn)行優(yōu)化
(1)使用ntsysv
? ? ?ntsysv工具可以在字符模式中運(yùn)行,為用戶提供一個(gè)仿圖形的交互式操作界面,專門用于集中配置各種系統(tǒng)服務(wù)的啟動(dòng)狀態(tài),當(dāng)需要同時(shí)設(shè)置多個(gè)服務(wù)的啟動(dòng)狀態(tài)時(shí),使用ntsysv工具會(huì)非常方便,單獨(dú)執(zhí)行“ntsysv”命令時(shí)僅用于管理當(dāng)前運(yùn)行目標(biāo)中的服務(wù),通過“--level”選項(xiàng)可以對指定運(yùn)行目標(biāo)(級別)中的服務(wù)進(jìn)行管理,例如,執(zhí)行“ntsysv --level 35” 命令可以打開 ntsysv 管理程序,操作時(shí)按方向鍵來選擇不同的系統(tǒng)服務(wù),按Space(空格)鍵設(shè)置服務(wù)的默認(rèn)啟動(dòng)狀態(tài)([*]表示啟動(dòng), “[]”表示關(guān)閉),如果要查看所選定服務(wù)的說明信息,按F1鍵可以獲取幫助
(2)使用systemctl
? ? ?systemctl工具與ntsysv的功能類似,但是systemctl不提供交互式的操作界面,它用于查詢或設(shè)置系統(tǒng)服務(wù)的默認(rèn)啟動(dòng)狀態(tài),當(dāng)需要設(shè)置某一個(gè)服務(wù)在當(dāng)前運(yùn)行目標(biāo)中的默認(rèn)啟動(dòng)狀態(tài)時(shí),使用systemetl工具會(huì)更有效率
? ? ?常用的選項(xiàng)有三種
enable:開機(jī)自動(dòng)啟動(dòng) disable:開機(jī)自動(dòng)關(guān)閉 is-enable:查看開機(jī)啟動(dòng)狀態(tài)
? ? ?在當(dāng)前系統(tǒng)下執(zhí)行“systemctl list-units --type=service”命令可以查看當(dāng)前系統(tǒng)中所有已激活的系統(tǒng)服務(wù)
二、服務(wù)管理
1、防火墻與核心防護(hù)
? ? ?通常情況下不建議關(guān)閉防火墻與核心防護(hù)
? ? ?防火墻操作
systemctl status firewalld.service 查看防火墻狀態(tài) systemctl stop firewalld 關(guān)閉防火墻 systemctl start firewalld 開啟防火墻 systemctl disable firewalld 開機(jī)自動(dòng)關(guān)閉防火墻 systemctl enable firewalld 開機(jī)自動(dòng)啟動(dòng)防火墻
? ? ?核心防護(hù)操作
setenforce 0臨時(shí)關(guān)閉Selinux防護(hù),重啟或關(guān)機(jī)后失效vim /etc/sysconfig/selinux打開selinux文件"修改SELINUX=disable"保存退出,永久關(guān)閉Selinux防護(hù)vim /etc/selinux/config打開config文件"修改SELINUX=disable"保存退出,永久關(guān)閉Selinux防護(hù)
2、時(shí)間管理
? ? ?安裝ntpdate服務(wù)
yum -y install ntp ntpdate
? ? ?設(shè)置與網(wǎng)絡(luò)時(shí)間同步
ntpdate 時(shí)間服務(wù)器(ntp1.aliyun.com ,time.nist.gov,time.nuri.net)
hwclock --systohc 將系統(tǒng)時(shí)間寫入硬件(BIOS) timedatectl 查看系統(tǒng)時(shí)間 date 查看Centos的當(dāng)前系統(tǒng)時(shí)間命令
3、SSH服務(wù)
? ? ?SSH是較可靠的專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議,利用SSH協(xié)議可以有效防止遠(yuǎn)程管理過程中的信息泄露問題,可通過建立SSH連接來遠(yuǎn)程管理Linux,開啟SSH方法如下
vim /etc/ssh/sshd_config
? ? ?去掉PasswordAuthentication前邊的#號,將后面修改為yes
service ssh start 啟動(dòng)SSH服務(wù) netstat -anptu | grep sshd 查看服務(wù)進(jìn)程狀態(tài) service ssh status 驗(yàn)證SSH服務(wù)狀態(tài) update-rc.d ssh enable 設(shè)置SSH開機(jī)自啟
結(jié)語
? ? ?不同的target代表系統(tǒng)不同的運(yùn)行狀態(tài),所啟用的服務(wù)或程序也不一樣,例如,對于互聯(lián)網(wǎng)中的網(wǎng)站、電子郵件等服務(wù)器來說,只需要運(yùn)行在文本模式就可以了,無須啟用圖形桌面程序
原文鏈接:https://blog.csdn.net/le616616/article/details/122160523
相關(guān)推薦
- 2022-10-15 C++?accumulate函數(shù)詳細(xì)介紹和具體案例_C 語言
- 2022-03-10 Winform自定義控件在界面拖動(dòng)、滾動(dòng)鼠標(biāo)時(shí)閃爍的解決方法_C#教程
- 2022-04-12 Top-level statements must precede namespace and ty
- 2023-02-09 python如何提取xml指定內(nèi)容_python
- 2022-09-30 C#?wpf?Grid中實(shí)現(xiàn)控件拖動(dòng)調(diào)整大小的示例代碼_C#教程
- 2022-04-11 C#定時(shí)任務(wù)框架Quartz.NET介紹與用法_C#教程
- 2022-03-28 通過numba模塊給Python代碼提速的方法詳解_python
- 2022-04-16 一盤王者的時(shí)間用C語言實(shí)現(xiàn)三子棋_C 語言
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支