linux学习五
一.系統服務管理
1.概念
服務(service) 本質就是進程,但是是運行在后臺的,通常都會監聽某個端口,等待其它程 序的請求,比如(mysql , sshd 防火墻等),因此我們又稱為守護進程,是Linux中非常重要的 知識點。2.指令
service 服務名 [start | stop | restart | reload | status] 在CentOS7.0后 不再使用service ,而是 systemctl3.案例
1) 查看當前防火墻的狀況,關閉防火墻和重啟防火墻。service iptables status
service iptables start
service iptables stop
注:centeros后面的版本指令:
systemctl start 服務名稱
systemctl stop 服務名稱
systemctl status 服務名稱
systemctl restart 服務名稱
systemctl stop firewalld systemctl start firewalld
systemctl restart firewalld
可以通過測試來判斷:
windows命令:telnet ip 端口
? 4.查看所有服務
方式1:使用setup -> 系統服務 就可以看到。 方式2: /etc/init.d/服務名稱5.服務的運行級別
服務的運行級別(runlevel): 查看或者修改默認級別: vi /etc/inittab查看或者修改默認級別: vi /etc/inittab
Linux系統有7種運行級別(runlevel):常用的是級別3和5
? 運行級別0:系統停機狀態,系統默認運行級別不能設為0,否則不能正常啟動
? 運行級別1:單用戶工作狀態,root權限,用于系統維護,禁止遠程登陸
? 運行級別2:多用戶狀態(沒有NFS),不支持網絡
? 運行級別3:完全的多用戶狀態(有NFS),登陸后進入控制臺命令行模式
? 運行級別4:系統未使用,保留
? 運行級別5:X11控制臺,登陸后進入圖形GUI模式
? 運行級別6:系統正常關閉并重啟,默認運行級別不能設為6,否則不能正常啟動
開機的流程說明:
開機--> BIOS--> boot--> init進程1--> 運行級別---> 運行級對應的服務
6.chkconfig指令
介紹
通過chkconfig 命令可以給每個服務的各個運行級別設置自啟動/關
? 基本語法
1) 查看服務 chkconfig --list|grep xxx
2) chkconfig 服務名 --list
3) chkconfig --level 5 服務名 on/off 注意:用指令設置完成之后,需要重啟機器!
還有就是如果chkconfig在7以后很多都不能用了,要使用systemctl這個指令了
? 7.top指令
top與ps命令很相似。它們都用來顯示正在執行的進程。 Top與ps最大的不同之處,在于top 在執行一段時間可以更新正在運行的的進程top [選項]
| 選項 | 功能 |
| -d ?秒數 | 指定top命令每隔幾秒更新。 默認是3秒在top命令的交互模式當中可以執行的 命令: |
| -i | 使top不顯示任何閑置或者僵死進程。 |
| -p | 通過指定監控進程ID來僅僅監控某個進程的狀態。 |
交互操作說明:
案例1.監視特定用戶
top:輸入此命令,按回車鍵,查看執行的進程。
u:然后輸入“u”回車,再輸入用戶名,即可
案例2: 終止指定的進程。
top:輸入此命令,按回車鍵,查看執行的進程。
k:然后輸入“k”回車,再輸入要結束的進程ID號
案例3:指定系統狀態更新的時間(每隔10秒自動更新):
| 操作 | 功能 |
| P | 以CPU使用率排序, 默認就是此項 |
| M | 以內存的使用率排序 |
| N | 以PID排序 |
| q | 退出top |
? 8.netstat指令(查看系統中開放的端口)
? 基本語法netstat [選項] ? 選項說明-an 按一定順序排列輸出-p 顯示哪個進程在調用netstat -tunlp ? 應用案例請查看服務名為 sshd 的服務的信息。
netstat -anp | grep sshd
?
9.selinux
SELinux是Linux系統上一個常見的安全軟件
1.查看selinux的狀態
getenforce[root@qishi ~]# getenforce Enforcing #這是強制開啟狀態
2.臨時關閉selinux(重啟失效)
setenforce 03.永久關閉selinux
編輯selinux配置文件 vim /etc/selinux/config 將SELINUX=enforcing改為SELINUX=disabled 保存退出? 10.防火墻
iptables -L # 查看系統防火墻規則 iptables -F # 清空所有防火墻規則 systemctl stop firewalld # 停止防火墻 systemctl status firewalld # 查看防火墻運行狀態 systemctl start firewalld # 啟動 systemctl disable firewalld # 永久關閉防火墻? 11.DNS(Domain Name System,域名系統)
解析原理:
1 我在本地訪問www.baidu.com 2 首先會從本地DNS緩存中去查找,如果沒有 3 就會去本地hosts文件中去查找,如果沒有 4 去公網的DNS服務器查看是否有此域名解析記錄,如果還沒有 5 說明此域名沒有在公網注冊解析hosts文件:
/etc/hosts8.8.8.8 #谷歌的DNS
114.114.114.114 #114的DNS
119.29.29.29 # 騰訊的DNS
223.5.5.5 # 馬云的DNS
223.6.6.6 # 馬云的DNS
電信的DNS
202.96.134.133
202.96.134.134
202.96.128.86
12.域名解析)
用來將域名解析為IP nslookup nslookup www.baidu.com?
二.包管理
1.rpm介紹
介紹:一種用于互聯網下載包的打包及安裝工具,它包含在某些Linux分發版中。它生成 具有.RPM擴展名的文件。 RPM是RedHat Package Manager(RedHat軟件包管理工 具)的縮寫,類似windows的setup.exe,這一文件格式名稱雖然打上了RedHat的 標志,但理念是通用的。Linux的分發版本都有采用(suse,redhat, centos 等等),可以算是公認的行業標 準了
2.rpm使用
rpm包的簡單查詢指令:查詢已安裝的rpm列表 rpm –qa|grep xx (查詢所有的,過濾出我們要的)rpm包名基本格式:
一個rpm包名: firefox-45.0.1-1.el6.centos.x86_64.rpm
名稱:firefox
版本號: 45.0.1-1
適用操作系統: el6.centos.x86_64
表示centos6.x的64位系統
如果是i686、 i386表示32位系統, noarch表示通用。。
rpm包的其它查詢指令:
rpm -qa :查詢所安裝的所有rpm軟件包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox ]
rpm -q 軟件包名 :查詢軟件包是否安裝
rpm -q firefox
rpm -qi 軟件包名 :查詢軟件包信息
rpm -qi file
rpm -ql 軟件包名 :查詢軟件包中的文件
rpm -ql firefox
rpm -qf 文件全路徑名 查詢文件所屬的軟件包 (反向查詢)
rpm -qf /etc/passwd
rpm -qf /root/install.log
卸載rpm包:
? 基本語法
rpm -e RPM包的名稱
? 應用案例
1) 刪除firefox 軟件包
? 細節討論
1) 如果其它軟件包依賴于您要卸載的軟件包,卸載時則會產生錯誤信息。
如: $ rpm -e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
2) 如果我們就是要刪除 foo這個rpm 包,可以增加參數 --nodeps ,就可以強制刪除,但是一
般不推薦這樣做, 因為依賴于該軟件包的程序可能無法運行
如: $ rpm -e --nodeps foo
安裝rpm包:
? 基本語法
rpm -ivh RPM包全路徑名
? 參數說明
i=install 安裝
v=verbose 提示
h=hash 進度條
? 3.yum使用(推薦使用)
rpm安裝遇到依賴包會一直詢問是否安裝依賴包,所以更推薦用yum來安裝軟件
yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令,而且命令簡潔而又好記。
Yum 是一個Shell前端軟件包管理器。基于RPM包管理,能夠從指定 的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系, 并 且一次安裝所有依賴的軟件包。yum的基本指令
? 查詢yum服務器是否有需要安裝的軟件
yum list|grep xx軟件列表
? 安裝指定的yum包
yum install xxx 下載安裝
yum(選項)(參數)
-h:顯示幫助信息;
-y:對所有的提問都回答“yes”;
-c:指定配置文件;
-q:安靜模式;
-v:詳細模式;
-d:設置調試等級(0-10);
-e:設置錯誤等級(0-10);
-R:設置yum處理一個命令的最大等待時間;
-C:完全從緩存中運行,而不去下載或者更新任何頭文件。
?
常用命令:
yum list
yum install 軟件名
yum update 軟件名
yum remove 軟件名
yum info 軟件名
yum clean all 清除所有倉庫緩存
? 阿里云配置
#1. 備份原有的.repo源文件 cd /etc/yum.repos.d mkdir repobak mv * repobak#2. 下載阿里云的源文件和第三方擴展源文件 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo#3.清空yum緩存和創建新的緩存 yum clean all yum makecache#4.安裝軟件擴展源(依賴) yum install -y epel-release#5. 使用yum工具下載安裝nginx yum install nginx注意: 只要是使用yum安裝的軟件,都可以使用systemctl進行管理#6. 啟動nginx systemctl start ngxinx#7.瀏覽器訪問ngix http://192.168.226.128
?
?三.linux運行級別
1.指定運行級別
運行級別說明:0:關機1:單用戶(可以找回丟失的密碼)相當于windows的安全模式2:多用戶沒有網絡服務3:多用戶有網絡服務4:系統未使用保留給客戶5:圖形界面6:系統重啟常用的級別是3和5,要修改默認運行級別可修噶文件 /ect/iniittab文件下的id:5 initdefault這一行中的數字
2.基本語法
把運行級別從當前切換到指定的運行級別: init 0/1/2/3/4/5/6 例:init 0 關機init 3多用戶有網絡級別 忘記root密碼該如何:思路:用單用戶模式(不需要密碼就可以登錄)修改密碼,重啟,再進入正常模式用新密碼進行登錄步驟:開機-->在開機因到時候輸入enter鍵--->新的圖形界面輸入 e-->來到一個新的圖形界面--->移動到第二行(編輯內核模式) 輸入 e---> 在這行最后輸入 1回車鍵 --->再輸入b進入單用戶模式,進入到單用戶模式就可以使用passwd命令修改root密碼?
轉載于:https://www.cnblogs.com/tjp40922/p/10200876.html
總結
- 上一篇: offsetTop测试见解
- 下一篇: Eclipse中部分快捷键