伺服器運維基礎指南
作為一個開發人員,對於伺服器的操作不可避免。最常用的操作就是部署應用到伺服器,及在生產,測試環境通過檢視日誌排查問題。
一般伺服器都是linux作業系統並且是無圖形介面的,所以進行任何操作都是通過命令列,由於從新一代程式設計師接觸電腦都是從圖形介面開始,所以在開始使用命令列的時候都不是很習慣,如果使用命令列習慣了,發揮現命令列可以幹很多有趣,高效率的事情,提高生產力,讓程式設計師更加專注在高技術含量的工作中。
連結伺服器入口
mac使用自帶的終端,就可以直接登入伺服器。windows需要下載工具例如:xshell
登入伺服器ssh
登入伺服器有兩種方式:
通過密碼登入
免密碼登入
ssh -l user ip/域名
ssh: secure shell 安全外殼協議,專為遠端登入會話和其他網路服務提供安全性的協議。利用ssh協議可以有效防止遠端管理過程中的資訊洩漏問題。
通過密碼登入
輸入: ssh -l user ip/域名
user:登入使用者名稱
ip/域名: 伺服器所屬的公網id地址,或者應用的域名,如果要檢視域名解析後的ip,在命令列輸入 ping 域名,可以檢視應用所屬的公網ip(前提伺服器沒有做均衡負載,代理…)。
終端會提示你輸入密碼,此時輸入密碼,密碼正確就可以登入伺服器。
免密碼登入
免密碼登入方式第一次還是需要輸入密碼登入,不同的是,在登入之後把自己的金鑰加入到伺服器,下次就可以免密碼登入。
生成ssh key
登入進伺服器進入 ~ 目錄下的 .ssh 開啟 authorized_keys 檔案如果沒有則建立,把自己的公鑰加入到authorized_keys裡。之後再次使用ssh進入伺服器的時候,不用輸入密碼就可以直接登入。
小技巧:mac可以新建一個.sh檔案把ssh -l user ip/域名加入.sh檔案,放在桌面預設使用終端開啟,以後就可以雙擊.sh檔案直接進入伺服器(甚至可以在.sh寫其他命令實現自動化)。
退出伺服器exit
exit
檢視當前目錄位置 pwd
pwd
顯示當前目錄下的所有檔案ls
ls :列出當前目錄下的所有檔案
ls -l :列出當前目錄下的所有檔案及檔案的詳情
進入退出目錄cd
cd .. :返回到上級目錄
cd /. :返回根目錄
cd 目錄名 : 進入具體目錄
新建目錄mkdir
mkdir file/filename
啟動執行指令碼./
./xx.sh
檢視檔案內容cat/tail
cat xxx.xx :檢視檔案的所有內容
tail -n 行數 xxx.xxx : 檢視檔案末尾xx行數
vi/vim xxx.xxx : 檢視並且可以修改檔案內容
移動檔案到具體目錄 mv
mv xx sss : 移動xx檔案到sss目錄
建議刪除檔案時,先把檔案移動到 /tmp目錄下(linux的臨時目錄關機會清空,建議在此目錄下進行刪除)。
刪除檔案 rm
rm -f xxx :強制刪除檔案
rm -rf xxx : -r 表示向下遞迴刪除 -f 刪除不提示 注意: rm -rf (不跟引數)會刪除整個系統 , 就算有引數 linux沒有回收站的概念 慎用慎用
rm -f . :梅花大法慎用,可能會誤刪除刪除整個伺服器
修改檔案的使用者許可權chown/chmod
chown -R user:user file :修改檔案的使用者許可權 檔案支援萬用字元
chmod 777 xxxx :改變檔案許可權 777就是高許可權(讀、寫、執行 )登入使用者他所在的組和其他人都有最高許可權。(比較危險的操作)
檢視java程式的相關程序jps
jps :檢視java程式程序
拷貝檔案到具體目錄cp/scp
cp -r copyed copy : 把copyed複製到copy目錄
scp xxx root:ip:/目錄 : 複製xxx到遠端ip伺服器目錄下
啟動服務關閉終端繼續執行nohup
有時我們需要在伺服器執行一些jar打包的應用,關閉終端後應用就關閉我們可以在 啟動jar應用的命令前增加 nohup
解壓/壓縮檔案 unzip/zip
unzip -o xxx.xx -d sss :解壓檔案xxx.xx到sss並且全部覆蓋
zip -r xxx.zip ./* : 壓縮檔案當前目錄下的所有檔案
如果沒有unzip zip 命令執行,可以安裝unzip/zip
yum install -y unzip zip
總結
目前這些命令基本能夠滿足日常開發韻味伺服器,但這只是簡單的一些操作伺服器的命令,如果有更多的需求可以系統的學習linux,那也是一個很大的話題 運維。