前端必備Linux基礎

前端必備Linux相關知識

操做系統的概述

  • 適合工做和娛樂的windows
  • 適合開發的Linux 、Unix 內核爲 kernel
  • 很是好用的 macOS
  • linux 相關的發行版本 | CentOS redhat | Fedora Debian ubuntu |

遠程連接服務器

利用 Cmder前端

ssh root@192.168.x.x 第一次登陸 記得保存指紋文件linux

~ 表明 home目錄 @ 以前是當前登陸用戶名 @ 以後是服務器名字nginx

重要的 Linux命令

  • 行編輯器 vi/vim
    i 切換 插入模式
    esc 退回瀏覽模式
    : 變成命令狀態
    q 退出
    w 寫入保存
    :wq! 強制保存退出
    /xx 查找 n 下一個算法

  • 輸入法 i - bus
    查看 catshell

  • 服務管理命令 systemctl mac下 launchctl
    查看nginx狀態 systemctl status nginx 開啓nginx服務 systemctl start nginx
    關閉服務 kill pid 要殺掉主進程(master) 不要殺掉工做進程(worker 受到保護) | pkill -9 pid 必須退出 篩選 ps aux | grep nginxubuntu

  • 網絡管理命令 ifconfig 、 ip命令、 router linux 命令下 ip addr 查看ip地址 ifconfig ip後面那個 / 後面 是子網掩碼 24 表明 255.255.255.0 mac命令下沒有ip命令vim

  • pc aux 查看進程windows

  • ss -anp | grep 80 查看80端口 -a 全部的信息 -n 網絡 -p 查看進程信息api

  • 下載命令 curl wgetbash

  • man 手冊

經常使用Linux終端快捷鍵

  • ctrl + c 結束正在運行的程序 【ping、telnet等】
  • ctrl + d 結束輸入或退出shell
  • ctrl + s 暫停屏幕輸出
  • ctrl + q 恢復屏幕輸出
  • ctrl + l 清屏,等同於clear
  • ctrl + a / ctrl + e 快速移動光標到行首/行尾

進程、線程、攜程

  • 進程的目的就是擔當分配系統資源(CPU時間、內存)的實體
  • 線程是操做系統可以進行運算調度的最小單位
  • 協程是一種用戶態的輕量級線程,沒法利用多核資源。

操做系統內核提供的api 調度 進程和線程

一個進程裏面至少有一個線程

Linux免密遠程登陸

非對稱加密

  1. 生成密鑰對 ssh-keygen -t rsa -C "你本身的名字" -f "你本身的名字_rsa" -t 指定加密算法 通常用 rsa -C 須要嵌入密鑰的自定義名字 注意 須要加雙引號 -f 生成的密鑰的密鑰文件名字

    回車 提示你 要不要給密鑰文件加密碼 別給它加密碼 不然你仍是無法實現免密登錄

    生成兩個文件 沒有後綴的是 私鑰 有後綴的是公鑰 xxx.pub

  2. 上傳配置公鑰 上傳公鑰到服務器對應帳號的home路徑下的 .ssh/ 中 (ssh-copy-id -i "公鑰文件名" 用戶名@服務器ip或域名) 檢查 公鑰文件權限 是否爲 600

    -i 指定密鑰

  3. 配置本地私鑰 把第一步生成的私鑰複製到你的home目錄的 .ssh/路徑下 檢查你的私鑰文件權限是否爲 600 若是不是 chmod修改權限

  4. 免密登錄功能的本地配置文件 修改 .ssh/config 配置文件 若是沒有 config文件 touch config新建一個 而後檢查config文件是否爲 644

    #單主機配置

    Host 主機別名

    User 登錄身份

    HostName 服務器IP或綁定的域名 不能帶協議

    IdentityFile ~/.ssh/私鑰文件名 私鑰的路徑 ~表明當前目錄的home 目錄 剩下 照抄

    Protocol 2 協議版本
    Compression yes
    ServerAliveInterval 60
    ServerAliveCountMax 20 LogLevel INFO

    #多主機配置

    Host a-produce

    HostName IP或綁定的域名

    Port 22

    Host b-produce

    HostName IP或綁定的域名

    Port 22

    Host c-produce

    HostName IP或綁定的域名

    Port 22

    Host *-produce

    User 登錄身份

    IdentityFile ~/.ssh/私鑰文件

    Protocol 2

    Compression yes

    ServerAliveInterval 60

    ServerAliveCountMax 20

    LogLevel INFO

常見目錄

  • /boot 系統引導文件
  • /etc 存放系統管理理和配置⽂文件
  • /home 存放全部用戶文件的根目錄,是⽤戶主目錄的基點,⽐如用戶user的主目錄就 是/home/user,能夠⽤~user表示
  • /proc 虛擬⽂件系統⽬錄,是系統內存的映射。可直接訪問這個目錄來獲取系統信息。
  • /root root用戶的專用home
  • /bin 存放⼆二進制可執⾏行行⽂文件(ls,cat,mkdir等),常⽤用命令⼀通常都在這⾥。
  • /usr 用於存放系統級的應用程序
  • /opt 額外安裝的可選應用程序存放位置
  • /dev 用於存放設備文件

命令基本格式

  • [root@xiaoming ~]

    • root 當前登陸⽤戶
    • xiaoming 主機名
    • ~ 當前工做目錄,默認是當前用戶的home目錄,root就是 /root,普通用戶是 /home/用戶名
    • 提示符 超級用戶是# ,普通用戶是$
  • 命令格式 命令 [選項] [參數]

    • 例如 ls -al *.ini
  • d rwx r-x r-x

    • d 表明文件類型
    • 第一組 對應文件全部者權限
    • 第二組 對應全部者所在的用戶組權限
    • 第三組 對應其餘用戶權限
    • 421 掩碼標識
    • chmod +r +x +w 用戶名 / chmod 755 目錄名 -R

文件搜索命令

  • locate

  • 用文件名查找文件

  • whereis

  • 搜索命令所在路徑

  • find

    • 文件搜索命令
    • find [搜索範圍] [搜索條件]
  • 軟鏈接 硬連接

    • 軟鏈接 至關於 windows的快捷方式
    • 硬連接 文件節點 指向的文件刪掉 硬連接就消失了
  • top 查看內存

壓縮與解壓縮命令

  • zip格式

    • 壓縮文件 zip 壓縮文件名 源文件
    • 壓縮目錄 zip -r 壓縮文件名 源文件
    • 解壓 unzip 壓縮文件名
  • gzip格式

    • gzip 源文件 //壓縮爲。gz格式的壓縮文件,源文件會消失
    • gzip -c 源文件 > 壓縮文件 //壓縮爲.gz格式的壓縮文件,源文件不會消失
    • gzip -r 目錄 //壓縮目錄下的全部子文件 ,可是不壓縮目錄
    • gzip -d 壓縮文件名 //解壓縮文件,不保留壓縮包
    • gunzip 壓縮文件 // 解壓縮文件,不保留壓縮包
  • bz2格式

    • bzip2 源文件 //壓縮爲 .bz2格式的文件,不保留源文件
    • bzip2 -k 源文件 //壓縮爲 .bz2格式的文件,保留源文件
    • bzip2 -d 壓縮文件名 //解壓壓縮包
    • bupzip2 壓縮文件名 //解壓壓縮包
  • tar 命令

    • 打包命令
    • tar -cvf 打包文件名 源文件
      • -c 打包
        複製代碼
      • -v 顯示過程
        複製代碼
      • -f 指定打包後的文件名  
        複製代碼
      • -x  解打包
        複製代碼

關機和重啓命令

  • shutdown
    • -c 取消前一個關機命令
      複製代碼
    • -h 關機
      複製代碼
    • -r 重啓
      複製代碼

shutdown now -p // now 馬上立刻 -p 斷電指令

  • logout //退出終端
  • exit

用戶管理命令

  • w //查看登陸用戶信息
  • who //跟w差很少
  • last //查看當前登陸和過去登陸的用戶信息 默認讀取 /var/log/wtmp 文件
  • lastlog //查看全部⽤戶的最後⼀次登陸時間
  • lastb //顯示全部登錄失敗的紀錄

shell腳本

  • 第一行固定的格式 #!/bin/sh
  • alias rm="rm -i" //設置別名 只對當前終端有效
  • source ~/.bashrc 設置永久別名
  • unalias 別名 刪除別名
相關文章
相關標籤/搜索