1. 程式人生 > 資訊 >旅行者的狂歡:一加 9RT 原神限定禮盒開啟預約:附送大量遊戲周邊和道具

旅行者的狂歡:一加 9RT 原神限定禮盒開啟預約:附送大量遊戲周邊和道具

linux總結

  • 電腦的種類
  • 伺服器的種類
  • 伺服器內部組成
  • 虛擬化
  • 磁碟分割槽
  • 直接操作虛擬機器的缺陷
  • linux基本操作命令
  • 快捷命令方式
  • 目錄結構相關命令
  • 檔案相關命令
  • 檔案編輯命令
  • vi編輯命令
  • 異常情況
  • 檔案目錄結構說明
  • 重要目錄資料資訊說明
  • usr目錄下重要的資料檔案
  • var目錄下重要的資料檔案
  • proc目錄重要的資料檔案
  • 系統優化相關
  • 環境變數補充
  • 下載軟體優化操作
  • 大資料概念
  • Hadoop
  • HDFS概念
  • 公鑰私鑰
  • Paramiko模組
  • Hadoop目錄結構
  • 偽分散式模式
  • 偽分佈的YARM配置
  • 配置日誌採集
  • 完全分散式(開發重點)
  • 叢集群起

電腦的種類

  • 桌上型電腦
  • 筆記本
  • 伺服器

作業系統

作業系統的誕生

由於管理、協調、控制計算機各個硬體的工作

現在適用的很多軟體都必須執行在作業系統上

作業系統分類

windows,linux,macOS

伺服器的種類

雲主機伺服器

物理主機伺服器

伺服器內部組成

五大組成部分

  • 電源
  • 主機板
  • CPU
  • 記憶體
  • 硬碟
  • 散熱系統

工作原理

1.電源:

冗餘技術:UPS(不間斷電源系統)、雙路或多路供電、發電機

2.CPU:

做資料運算處理

CPU路數:單路==1個 雙路==2個 四路==4個

CPU核數:把CPU比喻成廠房, 將CPU中的核數比喻成廠房中的工人, CPU核數是真正處理工作任務,CPU核數越多, 同時處理工作任務的效率越高

3.記憶體:

臨時儲存資料(斷電資料即丟失)

程式    程序(儲存在記憶體中) 守護程序

程式碼    執行起來的程式 根本停不下來的程序

4.硬碟:

永久儲存資料(斷電資料不會丟失)

硬碟種類:

機械硬碟(效能低)
固態硬碟(效能高)
硬碟介面(茶壺壺嘴):SATA< SCSI <SAS <PCI-E

伺服器磁碟陣列

1.伺服器上有多塊硬碟保證資料不容易丟失

2.伺服器上儲存資料較多可以將多塊硬碟進行整合

3.伺服器上儲存大容量資料效率更高

按照不同級別進行多塊硬碟整合:

raid0,raid1,raid5

5.遠端管理卡:

遠端控制管理伺服器的執行狀態

遠端安裝作業系統

遠端配置raid陣列資訊

PS:一定要確認遠端管理卡的預設地址資訊

6.光碟機(安裝系統)-- 淘汰

U盤安裝系統

kickstart cobbler -- 無人值守安裝系統

7.機櫃

機櫃裡面線纜一定要佈線整齊 設定標籤

虛擬化

什麼是虛擬化

將一臺計算機硬體"拆分"成多份分配使用

磁碟分割槽

系統分割槽說明

standard parition:標準分割槽

LVM:特殊分割槽 進行分割槽動態擴容/縮容

通用方案

/boot:啟動分割槽,儲存和系統啟動相關的檔案

swap:交換分割槽,臨時將硬碟的多餘容量變為記憶體使用

   記憶體<8GBswap分割槽大小=1.5倍記憶體容量

/: 根本區 將剩餘容量都給根等價於C盤

資料比較重要的場景

/boot:200M

swap:1G,2G,分割槽大小=1.5倍記憶體容量

/:20G-200G

/data:剩餘空間

靈活的分割槽方案

/boot:200M

swap:1G,2G,分割槽大小=1.5倍記憶體容量

/:20G-200G

剩餘空間不用分配

直接操作虛擬機器的缺陷

不支援很多滑鼠操作(快捷鍵)

如果虛擬機器出現故障需要親自去除錯太麻煩

解決上述問題的方式就是藉助於第三方連結工具

secureCRT 收費版(破解版是有⻛險)
xshell(推薦使⽤)  "免費版"
putty 沒有什麼功能 只能滿⾜遠端連線

網路相關名詞

IP地址

每個連入網路的計算機都有一個IP地址,用於訪問網路,類似身份證號,網路分類:IPV4、IPV6版本

PORT號

一臺計算機上執行多個程式,為了便於管理有埠號的概念,埠號有一定的範圍並且是隨機分配的,每個程式都有埠號

IP + PORT

能夠定位到具體的一臺計算機上面的某個應用程式

linux基本操作命令

"""
命令提示符
 [root@XXXX ~]# 
     root表示⽤戶名資訊
     @為分隔符
     XXXX為主機名稱
     ~表示所處⽬錄位置,預設是家⽬錄
"""

1.檢視網絡卡資訊

ip a

2.測試網路

ping ip地址

3.檢視當前路徑下的檔案資訊(檔案、資料夾...)

ls

4.檢視linux系統下總命令數

連續按tab鍵即可

5.如何清空當前視窗資訊

clear

6.切換檔案路徑

cd 路徑名

7.返回上一級目錄

cd ..  # 返回多級需要加斜槓 cd ../..

補充

"""
幫助命令  man(mannual)  
  eg:man  命令資訊
     命令幫助資訊中 語法中的中括號資訊可有可無
     ps:有些命令是不能通過man手冊獲取幫助資訊 
"""

系統命令

關機命令

shutdown
shutdown -h 10  # 指定多少分鐘後進行關機
shutdown -c  # 取消關機方案 
shutdown -h 0/now  # 立即關機

重啟命令

# 使用方法與關機差不多
shutdown
shutdown -r 10  # 指定多少分鐘後進行重啟
shutdown -r 0/now  # 表示進行立即重啟操作
shutdown -c  # 取消重啟方案

快捷命令方式

1. 顯示歷史輸⼊命令資訊

利⽤⽅向鍵 上 下
或者輸入history檢視完整命令列表

2. 清楚所有螢幕資訊輸出

ctrl 鍵+ l 

3. 中斷取消命令執行過程

ctrl鍵 + c  # cancel 取消    

4.快速移動游標到行首

ctrl鍵 + a  

5. 快速移動游標到行尾

ctrl鍵+ e   

6.將游標所在位置到行首的資訊進行刪除(剪下)

ctrl鍵 + u 
# 將游標所在位置到行尾的資訊進行刪除(剪下)
ctrl鍵 + k

7. 將剪下內容進行貼上回來

ctrl鍵+ y

8. 鎖定系統視窗資訊狀態

ctrl鍵 + s
# 解鎖系統視窗資訊狀態
ctrl鍵 + q 

9. 系統命令補全快捷方式

tab鍵

10.命令列中快速移動游標

# 按照英文單詞進行移動游標
ctrl鍵 + 方向鍵 左 右

目錄結構相關命令

1 顯示當前路徑資訊

pwd

2 切換目錄結構

cd  # 改變目錄位置
cd -  # 快速切換路徑,返回到上一次所在路徑資訊
cd ..  # 快速切換路徑,返回到當前路徑的上一級目錄中
cd ../..  # 上多級

3建立目錄結構

mkdir

eg:

建立多級目錄需要加引數-p

mkdir -p /oldgirl/oldbaby/heihei

建議:

''' 建立目錄時以絕對路徑建立目錄'''

檔案相關命令

'''
強調:在linux系統中,儘量不要輸入中文符號資訊(命令列)
'''

1)如何建立檔案資訊

touch 檔案

2)如何檢查檔案或目錄是否存在

ls  # list
# 顯示檔案/目錄資料詳細資訊
ls -l a.txt  # ls -ltr a.txt 倒序

3)如何檢視檔案資訊

cat 檔案

4)在空檔案中生成資料資訊

echo  # 將資訊進行輸出
echo hello world  # 等價於print('hello world')
echo hello world > a.txt  # w模式寫入檔案
echo baby.com >> a.txt  # 追加模式寫入

5)對檔案或目錄資料資訊進行拷貝(複製)

語法:

cp 引數資訊 要進行復制的資訊 複製到什麼位置

常見問題:

    在複製檔案時,不要在檔名稱後面加上/ 一般只有目錄後面有/
    檔案沒有存在會直接複製,如果已經存在會提示是否覆蓋
          cp -a 
           -a == -d + -r + -p
           -d          和連結檔案有關
           -R          進行遞迴複製
           -p          保持屬性不變  

6)對檔案或目錄資料資訊進行剪下(移動)

mv  # move 
           mv 引數 要移動資料資訊 移動到什麼位置

7)資料的刪除命令

rm  # remove
               rm 引數 要刪除的資料資訊
# 刪除oldboy目錄中的hosts01檔案
              rm hosts01
# 刪除目錄操作
            rm shanghai/  報錯
            rm -r shanghai/  正確
# 如何強制刪除資料資訊
            rm -f olddog.txt   不提示
            rm -rf jason  不提示

檔案編輯命令

內部自帶的vi

vi
vi 你要編輯的檔案資訊

編輯檔案的操作步驟

第一個里程:利用vi命令開啟檔案

vi oldboy.txt # 檔案不存在會自動建立(先在記憶體中臨時建立)

進入到編輯模式,開始編輯檔案:

按鍵盤上小寫字母 i 

進行編輯

退出編輯模式

按esc進行退出

關閉開啟的檔案

:wq   w-write  q-quit  儲存退出
:q!   不儲存進行退出

vi編輯命令

游標快速移動快捷方式

如何將游標快速移動到最後一行  # 大寫字母 G
如何將游標快速移動到第一行  # 小寫字母 gg
如何快速移動游標到中間指定行  # 小寫字母 10gg
如何快速移動游標到一行的行尾  # 符號資訊 shift+$
如何快速移動游標到一行的首部  # 數字資訊 0 

移動游標轉為編輯狀態

如何快速移動游標到下一行並進入編輯狀態  # 小寫字母 o
如何快速移動游標到一行的行尾並進行編輯  # 大寫字母 A
如何快速刪除游標所在位置到一行行尾所有資訊並進入編輯狀態  # 大寫字母 C
如何清空當前行的所有內容資訊並進入編輯狀態  # 小寫字母 cc

快速編輯文字內容資訊

如何複製文字資訊   # 小寫字母 yy 
如何複製多行資訊  # 3yy
如何貼上文字資訊   # 小寫字母 p
如何貼上多行資訊   # 3p
如何刪除文字資訊     # 小寫字母 dd    實際是將指定行資訊進行剪下
如何刪除多行資訊   # 3dd
將游標所在行到最後一行都刪除    # 字母 dG

特殊操作文字內容方式

如何顯示文字行號資訊/如何取消行號   # :set nu/:set nonu
如何撤銷編輯資訊                     # 小寫字母 u  undo
如何取消撤銷操作                     # ctrl + r    redo 
快速搜尋檔案資訊                     # /待搜尋內容 n下一次匹配項

批量操作文字內容

批量刪除操作

vim是需要進行安裝的:

yum install vim tree bash-completion -y

第一個步驟:移動游標到相應位置

第二個步驟:進入到批量編輯模式(檢視塊模式)

ctrl + v 

第三個步驟:選中多行資訊

第四個步驟:進行刪除

小寫字母 d 或者 x  # 刪除游標選中的內容

vim命令

"""vim命令比vi命令功能更加強大 但是快捷方式一致"""

在linux中用到一個東西沒有的話可以使用yum安裝

yum install vim
# 安裝過程中會出現很多需要二次確認的過程 如果不想提示預設確認
yum install vim -y

異常情況

編輯過程中連結出現中斷,再次編輯檔案會提示相應資訊

解決方法:

刪除隱藏檔案

rm -f .oldboy.txt.swp

出現的原因:

1)編輯狀態突然出現了中斷
2)檔案被多個人使用
'''總結:出現了隱藏檔案,沒有及時刪除'''

檔案目錄結構說明

結構特點說明

1.linux根下面的目錄是一個有層次的樹狀結構
2.linux每個目錄可以掛載在不同的裝置(磁碟)上掛載

實踐操作實現掛載過程

1.擁有一個儲存裝置(光碟機)

2.找到相應光碟機

# ls /dev/cdrom
# ls -l /dev/cdrom

3.進行掛載操作

mount /dev/cdrom  /aaa/(掛載點目錄一定存在)

4.確認是否掛載成功

ls /aaa

目錄結構發展過程

一塊盤:根目錄
二塊盤:/usr目錄
繼續擴充套件>>>:FHS檔案系統目錄規範

重要目錄資料資訊說明

網絡卡配置檔案

cat /etc/sysconfig/network-scripts/ifcfg-eth0 
'''如果要編輯網絡卡檔案可以先提前備份一份資料'''
cp XXX /tmp/XXX.bak
ps:esc +.  # 呼叫上一個命令最後一個引數資訊
# 網絡卡檔案修改後,必須重啟網路服務
    systemctl restart network

初始化軟體安裝

# 提供命令引數補全功能 systemctl
yum install -y vim tree bash-completion

網絡卡檔案引數說明

BOOTPROTO=none: 啟動協議 獲取IP地址的方法 自動獲取 dhcp手動設定

DEFROUTE=yes: 開啟了預設路由 網路(預設路由 動態路由 靜態路由)

NAME=eth0:網絡卡邏輯名稱

UUID=...:在虛擬化軟體標識一些硬體裝置資訊

DEVICE=eth0:網絡卡裝置名稱

ONBOOT=yes:確保網絡卡是否處於啟用狀態

# 當虛擬機器無法訪問外網的時候,也許使該項為no,應該改為yes

IPADDR=10.0.0.200: IP地址設定

PREFIX=24: 設定子網掩碼確保一個局域網裡面可以連線多少臺主機預設253

GATEWAY=10.0.0.254:閘道器資訊,不同區域網之間進行通訊的必經關卡 需要和虛擬編輯器中nat網絡卡設定保持一致

IPV6_PRIVACY=no

DNS=114.114.114.114:DNS 域名解析服務

網絡卡域名解析配置檔案

/etc/resolv.conf

主機名稱配置檔案

centos6主機名稱配置檔案

/etc/sysconfig/network

centos7主機名稱配置檔案所在路徑

cat /etc/hostname

本地域名解析檔案

vim /etc/hosts

網站頁面資訊變更方面:

小公司 直接除錯線上伺服器

大企業 直接除錯測試伺服器測試訪問 模擬真實環境訪問

網路不通排查流程

1. 確認閘道器地址是否通暢

2. 確認網絡卡配置是否正確

3. 確認網路管理服務關閉

systemctl stop NetworkManager  # 關閉網路管理服務
systemctl disable NetworkManager  # 禁用網路管理服務
systemctl status NetworkManager  # 檢視網路管理服務

etc目錄下重要的資料檔案

系統掛載資訊表

cat /etc/fstab

臨時掛載:

mount /dev/cdrom  /mnt  

永久掛載:

修改一個和開機自動掛載相關的配置檔案 /etc/fstab

存放linux系統命令操作資訊的檔案

vim  /etc/rc.local

系統啟動執行級別

系統啟動時候,有三種系統

A系統啟動:網路服務執行 安全服務執行 儲存服務執行 01級別
B系統啟動:安全服務執行 儲存服務執行 02級別
C系統啟動:儲存服務執行 03級別
執行啟動級別不一樣

centos6 (7種執行級別) 0 關機級別(init 0)

1 單使用者模式(重置使用者密碼資訊root 修復系統) 救援模式
2 多使用者模式 NFS (沒有網路服務)
3 多使用者模式 (命令列模式)
4 未知 未使用
5 圖形化介面模式(init 5)
6 重啟級別

centos7 (target目標)

    ls /usr/lib/systemd/system/runlevel*target -l
    poweroff.target
    rescue.target 
    multi-user.target
    multi-user.target
    multi-user.target
    graphical.target
    reboot.target

配置環境變數資訊或者別名資訊檔案(重要)

cat /etc/profile

環境變數特徵:

01. 環境變數都用大寫字母表示
02. 環境變數可以被所有使用者所使用
03. 環境一般是系統安裝就已經設定

專門用於設定別名資訊

cat /etc/bashrc

使複雜命令簡單化

ls -l /etc/hosts  # 檢視檔案許可權
ll /etc/hosts  # 檢視檔案許可權

別名定義優先順序:

  '''別名的定義既可以在profile裡面也可以在bashrc裡設定'''
    /etc/profile    國法  
    /etc/bashrc     國法
    ~/.bashrc       家規
    ~/.bash_profile 家規 

使用者登陸系統之後提示資訊

/etc/motd 

使用者登陸系統之前提示資訊

# cat /etc/issue

usr目錄下重要的資料檔案

/usr/local/ 用於儲存使用者安裝軟體程式資訊

linux系統如何安裝軟體(四種方式)

01. yum安裝軟體

# 可以解決軟體的依賴關係 

02. rpm包方式安裝軟體

# 在系統中需要有軟體安裝包 

03. 編譯安裝軟體

eg:購買食材(非成品)進行烹飪 可以靈活調整食物的味道

設定軟體安裝路徑 指定軟體功能資訊

04. 二進位制包安裝軟體

eg:小零食即食即用 方便簡單

var目錄下重要的資料檔案

經常發生變化的檔案儲存在variable

經常變化的檔案>>>:日誌檔案

/var/log/messages 服務執行情況資訊、系統執行或異常資訊

/var/log/secure 使用者登陸資訊儲存檔案

規律檢視日誌資訊

grep "Failed" /var/log/secure

對於日誌檔案過大必須要做切割處理

secure-0k > secure-100k > 大小範圍10M > 切割secure-bak01 secure

proc目錄重要的資料檔案

記錄一些硬體使用情況 硬體詳細資訊

#cat /proc/cpuinfo

系統優化相關

效能優化

安全優化

編碼優化

1)瞭解自己的系統情況

cat /etc/redhat-release

環境變數補充

特徵:

01. 由大寫字母組成
02. 配置的環境變數所有使用者都必須遵循
03. 系統中預設就有的變數資訊

第一個環境變數:PS1 (命令提示符資訊)

echo $PS1

修改環境變數:

第一個里程:臨時修改

PS1="[\u@\h \w]\$" 錯誤修改環境變數方式
export PS1="[\u@\h \w]\$" 正確修改環境變數方式

第二個里程:永久修改

vim /etc/profile
export PS1="[\u@\h \w]\$ " # 新增內容
source /etc/profile # 重新載入檔案內容

下載軟體優化操作

1)需要修改yum原始檔(指定使用哪個yum軟體倉庫) # 類似於pip換源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repoyum repolis

2)需要修改yum擴充套件源epel源

需要下載wegt

yum install wegt -y

3)所有原始檔更新進行最終確認

yum repolist

大資料概念

1.什麼樣的資料才可以稱之為是"大資料"

    1.海量:資料量一定要大
    2.高增長率:一定的時間內資料快速增長
    3.多樣化:資料的種類千奇百怪

2.研究大資料的目的

    1.海量資料的儲存
    2.海量資料的分析計算

3.重要的度量單位

bit(位)、Byte(位元組)、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB

Hadoop

它是相當於一款資料庫軟體,更是一個大資料神態圈

Hadoop1.X

    MapReduce  # 計算與資源排程
    HDFS  # 資料儲存
    Common  # 輔助工具

Hadoop2.X與3.X

    MapReduce  # 計算
    Yarn  # 資源排程
    HDFS  # 資料儲存
    Common  # 輔助工具

HDFS架構組成

NameNode(nn):儲存檔案的元資料  # 相當於目錄
DataNode(dn):儲存檔案的真實資料  # 當對於文字內容
Secondary NameNode(2nn):輔助NameNode工作  # 相當於備用設施

Yarn架構組成

Resource Manager:類似於大老闆
Node Manager:類似於各部門經理
Application Master:類似於部門中真正幹活的員工
Container:類似於每個部門擁有的各項資源

MapReduce架構組成

Map就是將複雜的任務拆分成多個小任務分發給不同的節點完成
Reduce就是將每個節點完成的任務彙總到一起

技術生態圈

1.資料來源層 
    針對結構化資料(關係型資料庫)採用sqoop進行資料同步
    針對半結構化、非結構化資料(非關係型資料庫)採用flume、kafka進行同步
更多請參考群內pdf檔案

HDFS概念

  ⼀個⽂件系統,通過⽬錄樹來定位⽂件; 其次,它是分散式的,由很多伺服器聯合起來實現其功能,叢集中的伺服器有各 ⾃的⻆⾊

優點:

1.高容錯性

2.適合處理大資料量

3.可以構建在廉價機器上

缺點:

1.不適合低延時資料訪問

2.無法高效的對大量小檔案進行儲存

3.支援資料append(追加)

HDFS檔案塊

可以最多儲存3個副本塊

HDFS儲存資料的資料塊大小

  1.X版本最小是64M其它版本是128M

'''資料塊大小使用預設128M即可,不需要修改'''

熱備與冷備

  熱備:不停服更新
  冷備:停服更新

熱資料與冷資料

  熱資料:使用頻率較高的資料

  冷資料:使用頻率較低的資料

儲存副本節點選擇

兩個備份在同一個機架,另一個備份在其他機架

公鑰私鑰

# 比使用者名稱密碼的方式更加安全
通過ssh遠端連線伺服器並執行想要命令 類似於Xshell 連結伺服器有兩種方式:
1.使用者名稱和密碼連線伺服器
2.公鑰私鑰連線伺服器

Paramiko模組

paramiko模組支援上面兩種連線伺服器的方式:
1.使用者名稱和密碼連線伺服器
2.公鑰私鑰連線伺服器

安裝

pip3 install paramiko

Hadoop目錄結構

bin:

主要服務
hadoop 管理整個hadoop叢集
hdfs 管理資料儲存
yarn 管理資源排程

偽分散式模式

需要配置的檔案

1./etc/hadoop路徑下

2./etc/hadoop

3./etc/hadoop路徑下

4.退出到hadoop根目錄下(hadoop-2.7.2)

6.瀏覽器介面Browse Directory

7.將hadoop-2.7.2路徑下的wcinput檔案上傳到 hdfs路徑下

8.在hdfs上實現字元統計

偽分佈的YARM配置

需要修改的檔案

在hadoop-2.7.2路徑下

在hadoop路徑下

在hadoop-2.7.2路徑下啟動yarn

在hadoop-2.7.2路徑下啟動NodeManager

配置日誌採集

需要配置的檔案

在hadoop路徑下編輯檔案

複製插入

<!-- 日誌聚集功能使能 -->
<property>
<name>yarn.log-aggregationenable</name>
<value>true</value>
</property>
<!-- 日誌保留時間設定 7 天 -->
<property>
<name>yarn.log-aggregation.retainseconds</name>
<value>604800</value>
</property>
'''
注意:開啟日誌聚集功能,需要重新啟動 NodeManager 、ResourceManager 和 HistoryManager。
'''

完全分散式(開發重點)

準備工作

1)準備 3臺客戶機

2)安裝 JDK

3)配置環境變數

4)安裝 Hadoop

5)配置環境變數

6)配置叢集

7)單點啟動

8)配置 ssh

9)群起並測試叢集

單點啟動(瞭解)

叢集群起

1.配置檔案位置:/opt/module/hadoop-2.7.2/etc/hadoop/slaves。

2.同步所有節點配置檔案

3.將之前單節點啟動的datanode、namenode全部退出

4.啟動HDFS

5.驗證每個節點對於啟動的服務

jps檢視照著之前的表格比較不能出錯

6.啟動yarn(一定要在hadoop103上啟動 因為rm在這裡)

7.驗證每個節點對於啟動的服務

叢集時間同步(瞭解)

返回目錄