DevOps入門之Linux
前言
近兩年大熱的 概念讓運維學起了開發,作為開發當然也不能落後,雖然之前也用過Linux,Nginx,但是基本都是記了幾個網上baidu來的、不知道具體什麼的命令。覺得還是有必要稍微系統的學習一下。
概述
Linux有很多版本,這裡選了比較穩定的Centos6.x。(其實是因為買的搬瓦工vps可以直接安裝科學上網的版本只能說centos6) 但是其實除了安裝命令有區別外,其他都差不多的。 安裝系統就不多說了,有條件的各個雲伺服器廠商買vps,沒條件的裝虛機。
SSH連接
通常使用 來連接Linux。
查看SSH服務狀態
輸入 來查看ssh的狀態,如果顯示 則說明已經啟動了
安裝SSH
如果提示說沒有安裝的話,則進行安裝
chkconfig詳解
重啟服務
使用 來重啟ssh服務
密碼登陸
使用 這個命令即可使用SSH來連接linux伺服器了。 由於SSH默認埠是22,因此在不改變埠的情況下可以不指定埠號 有時出於安全考慮,會修改默認埠號,這時,就需要使用 來指定埠號
SSH Config
這裡先說下Linux的目錄系統 在看別人寫的Linux命令中,經常會看到 和 這兩個符號,第一個其實哪裡都一樣,指向的就是根目錄。第二個,指向的行話叫"家"目錄,所謂的 ,其實就是 這個目錄。之所以稱之為家,就是因為所有和這個用戶相關的文件,都是放在這個文件夾下面的。
這時,使用SSH連接就可以不再很麻煩的需要每次都輸入用戶名和主機IP了,直接使用 即可。
免密登陸
雖然通過ssh config已經可以實現不輸入用戶名和IP了,但是還是需要輸入密碼,這點還不是很方便。因此就需要來實現免密登陸了。
這時使用 關閉ssh連接後再次使用 就會發現已經不需要再輸入密碼了
ssh-keygen詳細說明
Windows系統
Windows系統可以使用XShell這個軟體,具體就不多介紹了,使用起來大同小異。 這裡放幾篇鏈接 windows如何傳文件到linux虛擬機
Linux常用命令
Linux下的一些常用命令
軟體相關
包管理器: yum
安裝軟體: yum install xxx
卸載軟體: yum remove xxx
搜索軟體: yum search xxx
創建緩存: yum makecache
清理緩存: yum clean packages
列出已安裝: yum list
包信息: yum info xxx
伺服器硬體資源信息
內存: free -m (以m的格式來展示)
硬碟: df -h
負載和用戶: w load average 分別表示最近1分鐘、5分鐘、15分鐘的負載,一般在0.7以下表示還比較健康
CPU: cat /proc/cpuinfo (因為linux是文件系統,因此查看什麼東西都可以通過查看文件的方式)
Linux文件目錄結構
根目錄:
家目錄: 或者
臨時目錄:
配置目錄:
用戶程序目錄:
文件操作基本命令
創建文件夾: mkdir (有時候需要創建嵌套文件夾,則需要 參數: )
創建文件: touch
刪除文件和文件夾: rm (刪除文件夾時,需要使用 參數,這時會double check,如果不需要,則可以使用 參數,表示強制刪除)
複製: cp (cp 源文件 目的路徑)
移動: mv (相當於剪切 mv 源文件 目的路徑)(可以用來重命名)
顯示路徑: pwd
ls/ll: 查看文件夾下文件,使用 參數查看隱藏文件
其他
ifconfig: 查看IP
Vim相關
菜鳥教程 vim常用命令
安裝
使用命令 進行安裝(或升級)
基本操作
新建或編輯文件:
vim有三種模式:普通模式、插入模式、命令模式(ex) 打開文件時,默認的就是普通模式,按下 ,就會進入插入模式,按下 就會回到普通模式, 之後加上命令就表示命令模式
ex模式
保存: (即write)
退出: (強制退出,不保存修改內容 )
保存並退出: (也寫為 )
顯示行號: (網上說也可以 ,但是我用了不行)
命令行和vim切換: 和ctrl + d
快捷鍵
一般快捷鍵都是在普通模式下的
回到首行首列:
回到末行首列:
刪除一行:
恢復上一步:
複製一行:
複製多行: (比如 就是複製3行)
粘貼:
在當前行下面插入一行:
替換當前字元: (先輸入r,再輸入要替換的內容)
查找關鍵字: (按 在查找結果中切換)
文本選擇:
行選擇:
選擇全部: (ctrl+a的vim方式,這個命令的實現就是gg+V+G的靈活組合)
更多快捷操作可以參考上面的鏈接。
文件許可權
文件基本有3種許可權: rwx (讀、寫、執行) 對應數字也就是4、2、1 因此經常看到網上說給某個文件777許可權其實就是讀寫可執行所有的許可權
通常可以使用 命令看到文件的許可權
文件提權
文件搜索、查找、讀取
從文件尾部開始讀: tail (一般會加上 參數,這樣加入文件有更新,會自動刷新)(一般這個可以用來看日誌文件,自動刷新,但是如果自己開兩個終端窗口想嘗試就比較尷尬,因為Vim在寫文件時,是先刪再增的,因此先在一個窗口執行tail -f xxx,再在另一個終端窗口追加內容,是看不到效果的)
從文件頭部開始讀: head (和tail類似,不過是讀的頭部)(和tail一樣,可以加上 參數,來修改顯示行數量,默認是10)
讀取整個文件: cat (這個和 命令相似,經常會使用,不過在使用前需要注意,因為是將文件內容讀入內存,因此如果文件過大,會導致內存不足)
分頁讀取: more (一點點讀,enter繼續)
可控分頁: less (可控分頁的意思就是可以使用一些快捷操作來實現特殊的效果,比如 、 這種)
搜索關鍵字: grep ( ,在xxx文件中搜索"aaa", 表示顯示行號)(該命令經常與管道命令一起使用 )
查找文件: find (find的使用比較複雜,就放一個網上的教程,個人感覺記下這個頁面的幾個實例基本夠用了。) 菜鳥教程
統計個數: wc (統計行數 、位元組數 、字數 )( 統計test文件中,包含"a"的行數)
文件壓縮/解壓縮: tar ( 壓縮, 顯示壓縮包內容, 解壓縮) (同時還有 和 )
文件上傳和下載
curl
wget
scp 將本地文件複製到伺服器(scp 源文件 用戶名@ip:路徑)
用戶操作
添加用戶: useradd/adduser
刪除用戶:userdel
設置密碼: passwd
NodeJs
安裝NodeJs網上有很多文章,基本上安裝到方式都是一樣的,唯一有區別的是安裝好之後怎麼在全局使用node命令,一種是軟連接的方式,一種是添加環境變數的方式。
TAG:MARVEL大叔筆記 |