大數據開發成長之路——Linux基礎

Linux基礎

這裏主要介紹學習大數據過程中用到的Linux基礎知識,現在主攻的方向是大數據開發,歡迎大家共同交流。

環境

  • 推薦安裝VMware虛擬機並安裝CentOS操作系統,具體資源的下載和安裝可以查到,如果踩到坑可以留言討論。
    在這裏插入圖片描述
  • 通過遠程連接工具可以直接操作虛擬機中的Linux系統,比如Xshell、SecureCRT等,熟悉Linux指令後推薦使用
    注:這裏需要將虛擬機網絡設置爲NAT模式:[編輯——>虛擬網絡編輯器]
    在這裏插入圖片描述
    在主機電腦的[ 網絡共享中心 ]可以查看到VMnet8網絡適配器,其中IPv4地址與虛擬機網絡在同一網段下即可
    最後在虛擬機中使用ifconfig命令查看IP地址,使用遠程連接工具即可連接

常見的Linux指令

  1. history顯示歷史命令,可使用!命令序號再次執行
  2. ctrl+a/e讓光標移動到首尾部
  3. pwd查看當前目錄
  4. ls列出當前目錄文件
    -l除文件名稱外,亦將文件型態、權限、擁有者、文件大小等資訊詳細列出
    -r將文件以相反次序顯示
    -t將文件依建立時間之先後次序列出
    -a顯示所有文件及目錄,開頭爲"."的視爲隱藏檔
  • vim編輯器的使用
    在這裏插入圖片描述
  1. vim test編輯名爲test的文檔,如果不存在則創建
    a/i進入插入模式開始編輯
    ESC鍵返回到命令行模式
    在命令模式下:
    :q/:q!不保存退出/強制退出
    :wq保存並退出
    :set nu顯示行號 set nonu不顯示行號
    gg回到首行
    G跳到尾行
    dd刪除光標所在行
    yy複製光標所在行 p粘貼在下一行,4yy向下複製四行
    wc即word count命令,可以查閱腳本的行數字節數等信息,可以使用wc --help查看具體命令
  • 文件管理命令:
  1. cat test1 test2 > test3將文件拼接到另一個文件中
  2. cat -n test3帶行號打印顯示
  3. touch新建文件touch newFile 更改文件編輯時間爲當前touch test3
  4. chmod更改文件操作權限,可以使用ll命令查看當前目錄下的個文件權限,依次是文件擁有者、羣組、其他,權限級別分爲w可寫、r可讀、x可執行,可分別用數字4 2 1代表,例如chmod 777 test3
  5. chown更改文件擁有者,文件擁有者分爲用戶
    注:在root用戶權限下才可執行上述兩條命令 su root
    在這裏插入圖片描述
  6. find查找命令,find -name '*.txt'查找txt文件,通常可以配合管道命令查詢
  7. more類似cat,但一頁一頁展示,使用ctrl+f向下翻頁
  8. less類似more,但是可以向上翻頁ctrl+b
  9. head -n 5 test3查看test3文件的前5行,tail -n 5 test3查看後五行
  10. mv重命名文件mv test1 test4 移動文件或目錄mv test4 /opt即剪切功能
  11. cp複製文件或目錄,參數-r表示遞歸複製
  12. mkdir創建目錄 mkdir -p a/b/c遞歸創建目錄a/b/c
  13. tar解壓縮文件
    -f<備份文件>或–file=<備份文件> 指定備份文件
    -v或–verbose 顯示指令執行過程
    -x或–extract或–get 從備份文件中還原文件
    -z或–gzip或–ungzip 通過gzip指令處理備份文件
    -C<目的目錄>或–directory=<目的目錄> 切換到指定的目錄
    一般我們使用tar -zxvf XXXX -C /usr/即可
  • 磁盤管理:
  1. df -h磁盤使用情況
  2. mount掛載Linux系統外的文件 ,umount卸除文件系統,一般系統外文件掛載在/mnt下
  • 用戶管理
  1. useradd建立用戶賬號
    -m自動建立用戶的登錄目錄
    -g指定用戶所屬的羣組
    -d指定用戶登入時的家目錄
    -u 600 在0——499之間表示系統用戶,500——232之間表示普通用戶
  2. passwd更改使用者的密碼
  3. kill殺死執行中的程序或工作,使用kill -l查看所有進程,kill -9 pid強制殺死此pid的進程

ssh操作

爲後面的集羣搭建做準備,需要掌握虛擬機之間通過ssh登錄的方法,準備兩臺虛擬機操作系統。

  1. 使用ifconfig命令查看IP地址
  2. 使用ping命令查看是否連通
  3. 使用ssh root@IP登錄,root爲登錄時的用戶名,由於沒有使用免密操作需要輸入密碼,可以使用exit退出
  • 免密操作
  1. 打開ssh功能 systemctl start sshd.service,一般默認是打開的
  2. 啓動root用戶su root
  3. 使用命令ssh-keygen -t rsa,一路回車,會創建公鑰和私鑰文件
  4. 將公鑰文件拷給主虛擬機:ssh-copy-id -i ~/.ssh/id_rsa.pub 目標IP(注:主虛擬機也要執行此操作,否則無法主從互相免密登錄,相當於向authorized_keys中註冊)
  5. 在主虛擬機的.ssh目錄下可以看到authorized_keys,拷貝到各虛擬機即可:scp authorized_keys IP:$PWD
  6. 現在可以直接使用ssh 'IP'登錄另一臺虛擬機
    注:由於我們剛纔切換到root用戶進行操作,所以免密登錄對root用戶有效,同理可切換到其他用戶創建密鑰鏈接

scp遠程拷貝

scp命令用於Linux之間複製文件和目錄
使用scp -r 本地路徑 目標路徑即可,例如:scp -r test3 '192.168.154.11':/tmp-r表示遞歸

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章