天天看點

中标麒麟使用centos源_CentOS現在都采用了 systemd 作為啟動和服務啟動監控等核心程序....

0. 本blog 簡單說明一下 Linux測試環境尤其是 CentOS測試環境的開發測試使用, 教程可能不會很長, 主要是入門.

0.1 Linux簡介:

複制代碼

Linux 的曆史基本上不用闡述, linus作為自己的興趣愛好進行編碼實作的一種開源的作業系統. Linux很好的切合了GNU裡面一直沒有可用的開源作業系統的窘境, 是以Linux+GNU結合實作了開源作業系統以及工具的大發展.

大部分linux的工具其實都是GNU來實作的, linus自己主要是維護linux的core 核心部分. 很多發行版再加進去很多GNU的工具 釋出成為一個開箱即用的Linux發行版.

主要的發行版: CentOS, Ubuntu, SUSE等.

其中 Redhat 作為紅帽企業版的開源linux環境, 他的源碼重新編譯的CentOS作業系統很受廣大linux伺服器維護人員的喜歡.

最新版本 8.1 基于 linux 4.18 核心釋出.

但是現階段最流行的作業系統還是 CentOS7.X 系列, 基于Linux 3.10核心(可以自行更新核心) 國産化的中标麒麟是基于CentOS7.x系列研發的.

Ubuntu 是基于 debian 的發行版, 一個很大的優勢是現階段國産化很火的UOS也是基于debian作業系統來研發的, 以及銀河麒麟也是基于ubuntu1x.04的LTS版本研發的.

複制代碼

0.2 Linux發行版的釋出頻率以及選擇.

複制代碼

CentOS基本上每一年至少釋出一個版本,CentOS7.0 是2014年釋出的. 2019年基本上就釋出到了 CentOS7.7

第一位大版本号基本上Linux的核心不會發生變化, 但是會基于這個核心,紅帽一直進行安全更新, 以及添加一下新的GNU工具的更新版本進行提高.

Ubuntu每半年釋出一個版本, 版本号使用年月進行表示,比如 1404,1810等,其中除了 1404,1604,1804,2004等類似規律的版本,使用支援期限不超過一年, 一般沒半年就需要手動進行更新.  這些LTS長期支援版本的 支援期限大約有5年時間. 可以作為伺服器使用.

Ubuntu和CentOS現在都采用了 systemd 作為啟動和服務啟動監控等核心程序. 是以使用起來基本上無特别大的差別.

關于發行版的選擇.

ubuntu 的桌面非常炫酷, 釋出頻率也非常高, 很适合作為用戶端來使用, 作為伺服器也可以, 但是使用的人群稍微少一些,因為運維人員更在意的是穩定性.

紅帽現在是docker以及k8s基金會的核心成員, 也是openstack的很大的發行商, 很多文檔也非常細緻.

兩個很大的差別在于包管理

CentOS使用 yum  rpm包管理, ubuntu 使用 apt-get  dkpg的包管理, 兩者不通用(雖然有工具可以進行轉換)

複制代碼

1. Windows遠端管理linux 環境.

現階段大部分開發測試人員使用Windows環境進行研發測試(MacOS 基于BSD核心, 可以了解為linux的表兄弟 這裡暫且不談)

1.1 常用的工具有:

xshell  指令行連接配接管理 linux

xftp     基于22端口的xftp實作, 檔案上傳以及檔案下載下傳

上面兩個工具是xmanager的工具包所包含的 很大的優點是 可以通過xshell 直接打開 xftp 進行檔案傳輸 不需要再次輸入一遍使用者密碼等複雜操作了.

winscp 同 xftp

putty    同xshell

以及一些其他的工具比如 cmder 等. 不做較長的描述

1.2 win10 比較新的版本 還可以搭建WSL 來使用bash直接連接配接(git指令行也可以)

直接在指令行裡面就能打開 bash了

這個工具最大好處可以直接将本機的檔案通過scp的指令傳輸到linux的伺服器裡面,

1.3 通過GUI方式遠端管理linux

1.3.1 很常見的方式有兩種 一種是使用 windows 使用vnc用戶端, 以及linux伺服器安裝tigerVNC, 使用vncserver的指令建立 ip:5901的通路位址 在用戶端進行通路.

1.3.2 還一種方式是安裝 xrdp 直接使用windows的mstsc指令進行連結

但是這種方式容易讓人産生誤解.

2. linux指令行操作簡介.

linux使用指令行管理很高校,并且占用帶寬很少, 在網絡不好的情況下很能夠很好的完成各種工作.

2.1 linux的目錄.

複制代碼

/ 根目錄是linux所有檔案目錄挂載的起點

注意 / 根目錄與 /root root使用者的家目錄是不一樣的. 初學的時候很容易将這兩個目錄搞混.

/etc 目錄裡面主要是存儲一些配置檔案資訊

/usr/bin /usr/local/bin  等目錄主要是存儲可執行檔案.

/lib /lib64  /usr/lib  /usr/lib64  等目錄主要是存放應用程式庫檔案.

/opt  主要是存放一些 第三方軟體, 國産的資料庫 比如 達夢 瀚高 人大金倉 以及360浏覽器等都喜歡往這個目錄安裝

/var  主要是存放一些運作時會變動的檔案, 比如/var/log 作為存放程式日志的檔案.

/temp 臨時檔案.

/proc 虛拟檔案夾 linux裡面 everything is file 是以通過他能夠檢視一些程序資訊的二進制檔案等的資訊.  (ll /proc/pid 的方式)

/home 非 root使用者的家目錄

複制代碼

2.2 linux的檔案權限與環境變量以及核心參數限制等.

2.2.1 檔案權限, 測試環境可以使用 777 的方式進行處理, 但是生産環境一定不可以.

指令為  如下指令可以将所有的檔案權限全部設定為 777

cd /yourapp

chmod 777 * -R

2.2.2 環境變量.

linux裡面的環境變量與windows裡面的環境變量類似. 在bash裡面可以通過環境變量的方式去尋找具體的指令來實作, 想對應的 還有lib目錄資訊, 都程式需要使用庫檔案時 也能夠進行查詢.

linux的環境變量有多個檔案可以存放. 主要有:

複制代碼

1. /etc/profile

這個檔案是所有的使用者都從頭開始執行的 不建議修改 出了錯誤比較難處理.

2. ~/.bashrc  以及 ~/.bash_profile

注意 ~ 指代目前使用者的家目錄. 這兩個檔案是針對不同使用者設定的環境變量.

隻适應目前使用者資訊 無法影響其他的使用者環境變量

3. /etc/profiled.d/something.sh

這裡面的檔案可以手動執行, 使用者bash登入時會自動擷取該環境變量内的内容進行生效, 比如:

export PATH=$PATH:/usr/local/nginx:/gscloud/jstack/runtime/java/x86_64-linux/bin

就可以直接執行 PATH相關目錄的指令了

注意 linux 裡面使用 $作為變量操作符号.

複制代碼

2.2.3 核心參數以及使用者限制

主要指令有 ulimit -a 目前bash有效果的設定為 ulimit -s 但是不建議使用

建議直接修改核心的參數設定:

複制代碼

vim /etc/security/limits.conf

産品測試過程中 需要添加的參數主要為:

比較核心的一個是 nofile 一個程序可以打開的檔案描述符數量 還有 nproc一個程序能夠打開的子程序數量

#                

*    hard nproc  666666

*    hard nofile 666666

*    soft nproc  666666

*    soft nofile 666666

注意value值 其實可以自定義, 不用非得設定 2的整數倍即可.

複制代碼

2.3 基本指令操作說明

複制代碼

基本指令:

ls 列出所有檔案

ll 列出相信檔案資訊與ls -l 指令相同.

cd 切換目錄

mkdir 建立檔案夾

find 查找檔案.

| 管道指令

df 顯示磁盤使用情況

du 顯示目前目錄檔案大小資訊.

tar 壓縮和解壓縮指令

zip/unzip  進行zip檔案的壓縮/解壓縮操作

chmod 修改檔案權限

chown 修改檔案屬主

ps 展示存在的程序資訊

lsof 檢視打開的檔案後者是端口

scp   複制檔案, 如果使用 [email protected]:/ 的目的位址 可以遠端複制.

rsync 同步檔案,已經存在的相同檔案不進行複制,提供同步效率.

文本編輯

vi/vim 最常見的編輯器之一,主要是分為三個模式  指令模式-編輯模式-底線指令模式

最常用的用法: vim filename 打開檔案進入指令模式->輸入"i" 小寫鍵盤字元i符号進入編輯模式->編輯完成使用鍵盤上面的 "esc"按鍵 退出到指令模式->輸入":" 鍵盤符号 進入底線指令模式,輸入wq (write and quit)儲存檔案.

三劍客

sed 流編輯指令

awk 能夠根據規則列印部分檔案内容.

grep 進行過濾操作

檔案重定向

> 将指令結果重定向其他方式.

< 從某些檔案讀取目前指令需要的參數

>> 增量的方式添加檔案 而不是全量覆寫.

背景運作指令

nohup yourcommand &

服務操作指令

systemctl systemd的控制指令.

systemctl restart  重新開機服務

systemctl status   檢視服務狀态

systemctl enable   将服務設定為開機啟動.

安裝包指令:

yum install  線上安裝

yum localinstall  安裝下載下傳到本地目錄的rpm包.

yum remove 删除已經安裝的包

yum makecache 建立緩存.

注意 yum 安裝能夠使用 repo倉庫直接下載下傳依賴的rpm包同步進行安裝. 類似于k8s裡面的 helm 也類似于nuget和maven的依賴管理處理.

rpm -ivh xxxx.rpm 安裝具體目錄下面的 rpm包

挂載指令

mount -t cifs -o username=username,password=yourpasswords //linuxip/patches/已測更新檔/Cloud3.0/ /已測更新檔/

注意

1). 需要先mkdir 建立 /已測更新檔 目錄才可行.

2). 注意如果伺服器是2003 以及比較早的作業系統, 需要添加 vers=1.0 的參數才可以. 因為win2003的cifs服務版本比較低.

部分組合指令:

1. 檢視所有的dotnet程序,并且将dotnet程序殺死

ps -ef |grep dotnet  |grep -v grep |awk '{print $2}'|xargs kill -9

等效于 killall  dotnet

2. 比較兩個檔案夾的不同,并且将不通的檔案包含檔案目錄資訊也儲存下來

第一個:/add 是包含新檔案的

第二個: /yourapp 是未更新新檔案的

第三個: /add 是擷取新檔案的基準目錄

第三個: /addup 是兩個檔案夾對比出來的新檔案.

rsync --dry-run -rcnC --out-format="%n"  /add/  /yourapp/ |grep -v "/$"|xargs -I{} rsync -R /add/./{} /addup/

3. 背景方式運作服務,并且将輸出重定向到其他目錄

cd /yourcommandpath

nohup ./yourcommand.sh >/yourpath/yourlog.log 2>&1 &

中标麒麟使用centos源_CentOS現在都采用了 systemd 作為啟動和服務啟動監控等核心程式....
中标麒麟使用centos源_CentOS現在都采用了 systemd 作為啟動和服務啟動監控等核心程式....

ghostcsa

釋出了13 篇原創文章 · 獲贊 1 · 通路量 1萬+

私信

關注

标簽:檔案,systemd,CentOS,啟動,使用,指令,複制,linux,目錄

來源: https://blog.csdn.net/ghostcsa/article/details/104184502