1. 程式人生 > 實用技巧 >Linux的一些簡單命令

Linux的一些簡單命令

  1. rpm -q xx 查詢xx是否安裝
  2. yum install xx 安裝xx軟體包
  3. yum remove xx 解除安裝xx軟體包
  4. vim /路徑 讀寫檔案
    • i:編輯模式
    • Exc:退出到命令模式
    • :wq:儲存並退出Vim
  5. startx (一次性地)從命令列切換到桌面環境
  6. systemctl get-default 獲取當前啟動模式
  7. systemctl set-default graphical.target 修改啟動模式為圖形化
  8. systemctl set-default multi-user.target 修改啟動模式為命令列
  9. 安裝桌面環境 安裝桌面環境(這裡安裝 GNOME)
  10. systemctl start xx
    啟動xx服務
  11. systemctl enable xx 開機自啟動xx服務
  12. firewall-cmd --permanent --zone=public --add-port=3389/tcp 防火牆開放3389埠
  13. firewall-cmd --reload 重啟防火牆
  14. systemctl stop firewalld 關閉防火牆
  15. systemctl disable firewalld

禁止防火牆開機啟動

  1. cp /路徑 複製檔案
  2. systemctl daemon-reload

讓服務檔案修改生效

  1. netstat -lnpt|grep xx 檢視xx的服務埠

  2. sudo yum update -y

    更新伺服器地軟體包

  3. sudo yum install java-1.8.0-openjdk -y 安裝 OpenJRE

  4. java -version 檢測jre是否安裝成功

  5. sudo useradd -m halo 建立一個低許可權地使用者halo

  6. sudo su halo 登入使用者halo

  7. wget url 下載xx安裝包

  8. useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name useradd或adduser命令用來建立使用者帳號和建立使用者的起始目錄,使用許可權是超級使用者

    主要引數

    • -c:加上備註文字,備註文字儲存在passwd的備註欄中。
    • -d:指定使用者登入時的主目錄,替換系統預設值/home/<使用者名稱>
    • -D:變更預設值。
    • -e:指定賬號的失效日期,日期格式為MM/DD/YY,例如06/30/12。預設表示永久有效。
    • -f:指定在密碼過期後多少天即關閉該賬號。如果為0賬號立即被停用;如果為-1則賬號一直可用。預設值為-1.
    • -g:指定使用者所屬的群組。值可以使組名也可以是GID。使用者組必須已經存在的,期預設值為100,即users。
    • -G:指定使用者所屬的附加群組。
    • -m:自動建立使用者的登入目錄。
    • -M:不要自動建立使用者的登入目錄。
    • -n:取消建立以使用者名稱稱為名的群組。
    • -r:建立系統賬號。
    • -s:指定使用者登入後所使用的shell。預設值為/bin/bash。
    • -u:指定使用者ID號。該值在系統中必須是唯一的。0~499預設是保留給系統使用者賬號使用的,所以該值必須大於499。

    https://www.cnblogs.com/irisrain/p/4324593.html

  9. w # whoami 檢視當前登陸使用者

     12:10:27 up 21:13,  1 user,  load average: 0.00, 0.01, 0.08
    USER          TTY      FROM                 LOGIN@   IDLE   JCPU   PCPU WHAT
    root            pts/0    ***.**.***.**    11:33    0.00s  0.08s  0.00s   w
    tmp_3254  ps1       ***.**.***.**     11:33    0.00s  0.08s  0.00s   ls
    
  10. su xxx # 或者直接 exit 退出當前使用者登入,進入一個有管理員許可權的使用者

  11. pkill -kill -t [TTY] 強制退出已經登陸使用者

     0pkill -kill -t ps1
    
  12. ls -a # ls --all 檢視當前目錄下的所有檔案

  13. service xx restart 重啟xx應用

  14. curl -o /路徑 --create-dirs url 下載配置檔案、模板等檔案

  15. sudo nginx -t 檢查Nginx配置是否有誤

  16. sudo nginx -s reload 過載Nginx配置

  17. sudo service xx status 檢視xx的執行狀態

  18. sudo service halo stop 停止xx

  19. sudo service halo restart 重啟xx

  20. sudo service halo start 啟動xx

  21. sudo systemctl daemon-reload 修改service檔案之後需要重新整理Systemd

  22. sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 新增軟體源資訊

  23. sudo yum makecache fast 更新yum快取

  24. 映象加速

    # 新建 daemon.json 檔案
    sudo vim /etc/docker/daemon.json
    

    將下面的配置複製進去即可:

    {
      "registry-mirrors": ["http://hub-mirror.c.163.com"]
    }
    

    注意:修改完配置檔案之後需要執行 service docker restart 才可生效。

  25. sudo docker pull ruibaby/xx 拉取xx的最新映象

  26. docker run --rm -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo ruibaby/halo 建立容器並執行halo

    • --rm:停止之後自動刪除容器。
    • --name:容器名。
    • -p:佔用埠,前者為宿主機埠,後者為 Halo 的執行埠,可在 application.yaml 配置。
    • -v:目錄對映,一般不要修改。
  27. netstat -tln # netstat -tln | grep 8080 查詢被佔用的埠(可接特定埠號)

  28. netstat -ntlp 檢視其他埠

  29. lsof -i:8060 檢視埠屬於哪個程式、埠被哪個程序佔用

  30. kill -9 程序id 殺掉佔用埠的程序 根據pid殺掉

  31. shutdown -h now 立即關機

  32. shutdown -r now # reboot 立即重啟

  33. docker run --name some-wordpress --link some-mysql:mysql -d wordpress 引數說明:

    • --name 容器的的名字
    • --link 和其他容器做連線
    • -d/--detach 後臺執行
  34. docker run -d --privileged=true --name myMysql -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 33306:3306 mysql:5.6 引數解釋:

    • -p: 埠對映,33306表示宿主,3306表示容器中的埠。 這裡表示將宿主機的33306對映給映象的3306.
    • -e: 環境變數, 環境變數和具體的Docker容器製作時設定有關,這裡表示設定映象中MySQL的root 密碼時123456
    • -v: 指定資料卷,也就是將我們MySQL容器的/var/lib/mysql對映到宿主機的/data/mysql
    • --privileged=true: CentOS系統下的安全Selinux禁止了一些安全許可權,導致MySQL容器在執行時會因為許可權不足而報錯,所以需要增加該選項
  35. docker ps -a 檢視MySQL是否正常執行

  36. docker stop 容器名 停止執行

  37. docker rm 容器名 刪除容器(之後去掉-d選項重新執行排查錯誤)

  38. 快速批量刪除docker映象或容器

    Docker本身並沒有提供批量刪除的功能,當有大量的映象或者容器需要刪除的時候,手動的一個一個刪就比較麻煩了。

    # 直接刪除所有映象或容器
        # 直接刪除所有映象
        docker rmi `docker images -q`
    
        # 直接刪除所有容器
        docker rm `docker ps -aq`
        
    # 按條件篩選之後刪除
        # 按條件篩選之後刪除映象
        docker rmi `docker images | grep xxxxx | awk '{print $3}'`
    
        # 按條件篩選之後刪除容器
        docker rm `docker ps -a | grep xxxxx | awk '{print $1}'`