Linux的簡介
Linux系統作為服務器操作系統,完成項目的部署;比較方便搭建集群環境
Linux目錄結構
Linux命令
文件命令:
mkdir:創建目錄
mkdir目錄名(可以是相對路徑也可以是絕對路徑)
-p:可以創建父級目錄;如果父級目錄已經存在,也不會報錯
mkdir -p a/b/c/d
touch:創建一個文件
touch 文件名
說明:在Linux系統中,文件沒有嚴格的后綴
cp/mv/rm: copy/move/remove(復制、剪切、刪除)
1、用法
cp/mv 源文件 目標文件
cp xiaohei a
2、復制以及剪切可以做到重命名
mv xiaohei b/a.txt
3、刪除,默認只能刪除文件
rm c
無法刪除"c":是一個目錄
4、如果要刪除文件夾,需要參數-r來做遞歸刪除
5、通過-f直接刪除(沒有任何提示,也沒有任何確認)
rm -f a.txt
6、通過rm -fr文件夾 可以直接刪除這個文件夾
rm -fr
more/less/head/tail
查看文件內容
字面鍵Q可以退出less界面
head/tail默認顯示10行;前10行/后10行
常用的就是tail:用tail查看日志信息
grep:
根據關鍵字搜索文件內容
grep常用命令
grep [OPTIONS] PATTERN [FILE...] grep [OPTIONS] [-e PATTERN]... [-f FILE]... [FILE...] OPTIONS: -e: 使用正則搜索 -i: 不區分大小寫 -v: 查找不包含指定內容的行 -w: 按單詞搜索 -c: 統計匹配到的次數 -n: 顯示行號 -r: 逐層遍歷目錄查找 -A: 顯示匹配行及后面多少行, 如: -A3, 則表示顯示匹配行及后3行 -B: 顯示匹配行及前面多少行, 如: -B3, 則表示顯示匹配行及前3行 -C: 顯示匹配行前后多少行, 如: -C3, 則表示顯示批量行前后3行 --color: 匹配到的內容高亮顯示 --include: 指定匹配的文件類型 --exclude: 過濾不需要匹配的文件類型
#多文件查詢 grep leo logs.log logs_back.log #查找即包含leo又包含li的行 grep leo logs.log | grep li #查找匹配leo或者匹配li的行 grep leo | li logs.log #顯示匹配行前2行 grep leo logs.log -A2 #顯示匹配行后2行 grep leo logs.log -B2 #顯示匹配行前后2行 grep leo logs.log -C2 #不區分大小寫 grep -i leo logs.log #使用正則表達式 grep -e '[a-z]\{5\}' logs.log #查找不包含leo的行 grep -v leo logs.log #統計包含leo的行數 grep -c leo logs.log #遍歷當前目錄及所有子目錄查找匹配leo的行 grep -r leo . #在當前目錄及所有子目錄查找所有java文件中查找leo grep -r leo . --include "*.java" #查找並輸出到指定文件 grep leo logs.log > result.log #查找以leo開頭的行 grep ^leo logs.log #查找以leo結尾的行 grep leo$ logs.log #查找空行 grep ^$ logs.log
編輯
A:對於Linux系統中的文件的編輯,可以采用以下兩種方式
1、直接在文件傳輸工具中,點擊右鍵編輯
2、可以把文件拖出去到windows系統中;在windows系統中編輯完成再拖入到Linux系統
B:通過命令完成對文件的編輯
通過vi命令
鏈接:
Linux中的鏈接分為軟鏈接和硬鏈接
1):軟鏈接:又做符號鏈接;就相當於window系統中的快捷方式
通過命令ln-s創建軟鏈接
ln-s a.txt aln.txt
2):硬鏈接:就是一個文件;通過ln源文件 硬鏈接就可以創建出來一個硬鏈接
硬鏈接和源文件相互影響:對任何一個文件做修改操作,在另外一個文件中都可以看到修改之后的內容
硬鏈接和源文件相互獨立:把任何一個文件刪除掉,另外一個都可以正常使用。
管道:
tab鍵可以自動補全:相當於myelipse中的alt+/
A:>/>>
命令>/>>
把命令執行之后的結果寫入到文件中
>:覆蓋寫
>>:追加寫
B:|
命令1|命令2(一般都是grep命令)
命令1執行之后的結果作為命令2執行的目標
ls-l | grep 四月
軟件的安裝
解壓:
在Linux系統中 ,常用的壓縮文件tar文件、tar.gz文件、tar.bz2文件
對tar.gz文件的解壓,可以通過tar-zxvf完成
幾個函數的含義:
z:表示要操作的文件是tar.gz文件;這個參數必須在最前面
x:x表示要解壓
v:表示顯示過程信息
f:表示產生新文件;這個參數是必須要有的
以tomcat為例,來看解壓命令的使用
rpm文件安裝
rpm文件,指的是.rpm結尾的文件;由Redhat(紅帽公司)出品的軟件安裝包
通過rpm命令完成安裝
rpm-ivh a.rpm
安裝JDK+Tomcat(軟件安裝的應用)
步驟:
A:通過純凈版系統板快照,克隆一台機器JDK8+tomcat7-A
B:開機、分配IP地址、客戶端建立連接
C:把JDK安裝文件(rpm文件)傳輸到/tmp目錄下
D:通過rpm命令完成JDK的安裝
rpm-ivh jdk.rpm
E:配置環境變量
1):需要編輯/etc/profile文件==》vi/etc/profile
2):在文件的最后配置三個環境變量:JAVA_HOME;PATH;CLASSPATH
export JAVA_HOME=jdk根目錄
export PATH=$PATH:jdk bin目錄
export CLASSPATH=.
3):讓新的環境變量生效
通過命令source/etc/profile讓新的環境變量生效
F:把tomcat的安裝文件(tar.gz文件)傳輸到/usr
G:通過tar -zxvf命令解壓tomcat
H:修改tomcat的配置文件(可選)
到tomcat的根目錄下的conf目錄下,找到對應目錄的文件完成修改操作
I:啟動tomcat
到tomcat的根目錄下的bin目錄下,執行啟動文件
./啟動文件==》可以啟動tomcat
J:關閉Linux系統的防火牆
CentOS7中關閉防火牆:systemctl stop firewalld
CentOS6中關閉防火牆:service iptables stop
K:在window系統的瀏覽器中輸入Linux系統的IP地址以及tomcat的端口號訪問
M:關機、再克隆兩台機器JDK8+Tomcat7--B/JDK8+Tomcat7--C
N:對於A機器,只需要恢復快照
O:對於B/C機器,需要:開機、分配IP地址、客戶端建立連接、關閉防火牆、啟動Tomcat
yum安裝
必須能夠連接到互聯網:在Linux系統中通過ping命令ping一個域名;如果能ping通就說明這台機器可以連接到互聯網
yum install 軟件名
自動到網絡下載軟件,自動安裝
需要在yum源中存在要安裝的軟件名,才可以找到這個軟件的下載路徑
yum install gcc
yum install -y gcc ==》所有需要回答的地方,都選擇是
負載均衡
安裝nginx
A:nginx的運行,需要有c語言環境
B:yum源里面是沒有nginx的==》需要下載nginx的yum源,才可以使用yum安裝nginx
C:在Linux中要下載東西,可以通過Linux中的下載工具wget完成;可以通過yum安裝wget
步驟:
1、通過純凈版系統快照克隆一台機器(nginx)
2、開機、分配IP地址、客戶端建立連接、確認能夠連接到互聯網
3、拍攝一個開機快照
4、通過yum安裝gcc
yum install -y gcc
5、通過yum安裝wget
yum install -y wget
6、通過wget下載nginx的yum源(網上搜)
wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
7、通過rpm命令執行上一步下載下拉的rpm文件
rpm -ivh nginx...(上一步下載下拉的rpm文件名)
8、通過yum命令完成nginx的安裝
yum install -y nginx
9、啟動nginx
systemctl start nginx
10、關閉Linux系統的防火牆
systemctl stop firewalld
11、在windows系統中的瀏覽器中訪問nginx
nginx的默認端口號是80
http協議默認端口號也是80
配置nginx管理tomcat
在nginx的配置文件中配置要管理的tomcat
要編輯/etc/nginx/conf.d/default.conf,完成配置
nginx的日志文件所在的目錄:/var/log/nginx
要關閉掉SELinux,需要修改配置文件:/etc/selinux/config
代理
nginx代替了tomcat對外提供服務;所以把nginx叫作代理服務器
代理分為正向代理及反向代理
A、正向代理:代理的是客戶端
客戶端要訪問的真實服務器地址就是客戶端輸入的地址
B、反向代理:代理的服務端
客戶端在訪問的時候,不知道真實的服務器地址
Nginx被叫做反向代理服務器
負載均衡策略
A:輪詢策略:nginx的默認策略
一個挨着一個訪問
B:權重策略:需要在nginx的配置文件中,通過weight屬性完成配置
C:IP粘着策略:客戶端要訪問的真實tomcat是根據客戶端IP地址綁定的(客戶端的IP地址不變,訪問的就是同一個tomcat)【nginx獲取到客戶端的IP地址,然后對IP地址進行hash處理,然后對存活的服務器數量取模】