1. 程式人生 > >大資料技術學習筆記之linux基礎2-基礎環境與系統管理

大資料技術學習筆記之linux基礎2-基礎環境與系統管理

  一、Linux使用者及許可權管理
    -》使用者管理
        -》Linux使用者的配置檔案:/etc/passwd
            root:x:0:0:root:/root:/bin/bash
            使用者名稱:密碼:使用者id:組id:使用者組:家目錄:shell
        -》新增使用者:只有root使用者才能管理所有使用者
            -》useradd :用於新增使用者,使用者id預設從500開始
                useradd username
                useradd erongda01    erongda01:x:500:500::/home/erongda01:/bin/bash
                建立使用者同時:建立使用者家目錄在/home
            -》設定密碼
                passwd erongda01
        -》刪除使用者
            userdel erongda02:預設只刪除使用者,不刪家目錄
            userdel -r erongda01:刪除使用者的同時,刪除家目錄
        -》切換使用者
            su : 用於切換使用者
            格式: su - username
        -》使用者組:group
            -》配置檔案:/etc/group
            -》建立組
                groupadd groupname
            -》刪除組
                groupdel groupname
    -》許可權管理:Linux具有嚴格的許可權管理
        -rw-r--r--.  1         root root   1658 Mar 13 10:31 passwd
        型別+許可權    連結數    使用者 組        大小 最後訪問日期 檔名
        -》-rw-r--r--
            第1位:檔案型別
                -:檔案
                d: 目錄
                b:塊裝置
                c:字元檔案
                l:連結
        -》第2,3,4位:表示檔案所有者的許可權
        -》第5,6,7位:表示同組使用者的許可權
        -》第8,9,10位:表示其他人的許可權
        
        使用者型別:    所有者 u        同組使用者 g            其他人 o    所有人a
        許可權型別:    讀 r                 寫    w                執行 execute(x)

        -》更改許可權:
            -》字元更改許可權
                chmod o+x testfile.txt
                chmod o-r testfile.txt
                chmod a+r testfile.txt
            -》數字更改許可權
                rwx  =>  421 => 7 => 111
                
                chmod 755 testfile.txt
                    rwxr-xr-x
                    7  5  5
        -》更改檔案的所有者或者所屬組
            chown username:groupname file_path
            chown rdedu:rdedu testfile.txt
            chown rdedu:    testfile.txt
            chown -R rdedu:rdedu file_path : 修改目錄下的所有檔案
            
            
            -》更改檔案的所屬組
                chgrp rdedu testfile.txt
                
                
二、常用的工具命令
    -》visudo:用於配置普通使用者執行高階許可權命令
        -》visudo:本質上就是修改了配置檔案:/etc/sudoers
            root            ALL            =    (ALL)               ALL
            使用者名稱            登入的地址        以什麼使用者        執行什麼命令
            rdedu   ALL=(root)      /sbin/service iptables status
        -》執行方式:要在命令前面加sudo
            sudo service iptables status
        -》配置
            rdedu   ALL=(ALL)       NOPASSWD:ALL
    -》常用的符號命令
        -》.:表示當前目錄
            cp /root/install.log ./
        -》..:表示上一級目錄
        -》| :管道符,一般與grep命令連用,用於傳輸命令執行結果
            grep:用於文字過濾
            cat /etc/passwd | grep 'root'
        -》> :重定向覆蓋
            標準輸入:stdin
            標準輸出:stdout
            echo "hello" > testOut.txt
        -》>> :重定向追加
            echo "hadoop" >> testOut.txt
        -》~ :代表家目錄
        -》& : 表示程式在後臺執行
        -》\ :換行符,表示命令沒有結束
    -》文字編輯器vi/vim
        -》用於編輯或者建立文字
        -》三種模式:
            命令模式:執行快捷命令
                -》G:跳轉到最後一行
                -》gg:跳轉到第一行
                -》yy:複製當前游標行
                -》p:貼上
                -》u:撤銷上一步操作
                -》dd:剪切當前行
                    10dd
                -》i:在當前行插入
                -》o:在當前行的下一行插入
                -》O:在當前行的上一行插入
            插入模式
                -》退出插入模式:ESC
                                shift+:
            最後行模式:
                set nu:新增行號
                /string : 查詢字串
                1,$ s/nologin/88888/g
                1:從第一行開始
                $:最後一行
                s:表示替換
                g:如果一行中出現多次,全部替換
                退出:q
                強制退出:q!
                儲存退出:wq,x
        -》man:幫助命令,用於檢視文件或者命令的使用手冊
            -》man ls
        -》find:查詢,用於查詢檔案
            格式:find 路徑  條件[名稱、大小、所有者、型別]
            find /etc -name init*
            find /etc -name init??
            -size :按照大小查詢
            find /etc -size +10000
            size:塊(預設b)、字元(c)、k、M、G
            -》範圍條件:
                +:大於
                -:小於
            -》邏輯連線
                -a:and並列條件
                -o: or或者條件
            find /etc -size +10000 -a -size -100000
            -type :檔案型別
                f :檔案
                d : 目錄
            -user
            -group
    -》du:統計資料夾大小
        -a : 統計子資料夾所有的檔案
        -s : 只顯示該檔案目錄的大小
        -h : 人性化顯示,自己新增單位
    -》wc:單詞統計
        wc 檔案
          3              4                 20 testOut.txt
          行數        單詞數            字元數
          -l : line
          -w : word
          -c :char
          
三、Linux中的磁碟管理
    -》fdisk:用於管理Linux中所有硬碟裝置
    -》建立主分割槽:
        -》fdisk管理sdb
            fdisk /dev/sdb
            擴充套件分割槽(建立邏輯分割槽)+主分割槽<=4
            1+2
        -》格式化
            mkfs.ext4 /dev/sdb1
        -》臨時掛載
            mount /dev/sdb1 /partition/primary
        -》永久掛載
            vim /etc/fstab
            /dev/sdb1               /partition/primary      ext4    defaults        0 0
    -》建立邏輯分割槽:
        -》建立擴充套件分割槽
        -》建立邏輯分割槽
        -》重啟
        -》格式化邏輯分分割槽
        -》掛載
        
四、系統管理
    -》網路:
        ifconfig:用於檢視和配置網路資訊
        route -n :路由
    -》服務管理
        -》service:用於管理服務的啟動、關閉、檢視狀態、重啟
            service iptables status/stop/start/restart
            /etc/init.d/iptables
        -》chkconfig:設定開機啟動的
            chkconfig iptables --list:檢視開機啟動的狀態
            chkconfig iptables off:關閉開啟啟動
            chkconfig iptables on:開啟開機啟動
    -》埠port
        netstat -atunlp
        a:所有的
        t:tcp協議
        u:udp協議
        p:顯示pid
        l:listen,監聽
    -》程序管理命令
        top:相關於windows中的資源管理器
        free:檢視記憶體資訊、
        ps:process 程序
            ps -ef
        jps:java process 檢視java程序的
        kill : 殺死,用於關閉程序
            kill -9 1
            
    -》關閉selinux
        vim /etc/selinux/config
        SELINUX=disabled