天天看點

Linux學習分享(一)

最近,想總結一下之前學習過的Linux的一些指令和基礎,順便分享給各位,不喜勿噴。如若其中有些地方存有争議,請點選右上角聯系管理者進行修改,畢竟每個人可能了解的方式不一樣。

工具準備

VMware,centos7.3

系統簡介及其目錄結構

概述

  • Linux 是一套免費使用和自由傳播的類 Unix 作業系統,是一個基于 POSIX 和類 UNIX的多使用者、多任務、支援多線程和多 CPU 的作業系統。它能運作主要的 UNIX 工具軟體、應用程式和網絡協定。它支援 32 位和 64 位硬體。Linux 繼承了 Unix 以網絡為核心的設計思想,是一個性能穩定的多使用者網絡作業系統。
  • Linux 作業系統誕生于 1991 年 10 月 5 日(這是第一次正式向外公布時間)。Linux存在着許多不同的 Linux 版本,但它們都使用了 Linux 核心。Linux 可安裝在各種計算機硬體裝置中,比如手機、平闆電腦、路由器、視訊遊戲控制台、台式計算機、大型機和超級計算機。

目錄結構

解釋說明:

/bin 二進制可執行指令,如常用的指令ls、tar、mv、cat等
/boot 放置linux系統啟動時用到的一些檔案
/dev 裝置特殊檔案
/etc 系統管理和配置檔案
/home 使用者主目錄的基點
/lib 标準程式設計庫
/mnt /media系統提供這個目錄是讓使用者臨時挂載其他的檔案系統
/opt 給主機額外安裝軟體所擺放的目錄
/proc 此目錄的資料都在記憶體中
/root 系統管理者的主目錄
/run 儲存在下一次系統引導前有效的關于系統的資訊檔案
/sbin 超級管理指令
/srv 服務啟動之後需要通路的資料目錄,如 www 服務需要通路的網頁資料存放在 /srv/www 内
/sys 該目錄下是全局裝置結構體系,包含所有被發現的注冊在各種總線上的各種實體裝置
/tmp 公共的臨時檔案存儲點
/usr 應用程式和檔案幾乎都在這個目錄
/var 放置系統執行過程中經常變化的檔案
/lost+found 這個目錄平時是空的,系統非正常關機而留下“無家可歸”的檔案
/proc 虛拟的目錄,是系統記憶體的映射      

系統指令

  1. Linux 指令:用于實作某一類功能的指令或程式 指令的執行依賴于解釋器程式
  2. Linux 指令分類
  • 内部指令:屬于 Shell 解釋器的一部分
  • 外部指令:獨立于 Shell 解釋器之外的程式檔案
  1. 通用指令格式
  • 指令字 [選項] [參數]
  • 選項:用于調節指令的具體功能
  • 參數:指令操作的對象,如檔案、目錄名等
  1. 常用輔助快捷鍵
  • Tab 鍵:自動補齊
  • 反斜杠"\":強制換行
  • 快捷鍵 Ctrl+u:清空至行首
  • 快捷鍵 Ctrl+k:清空至行尾
  • 快捷鍵 Ctrl+l:清屏
  • 快捷鍵 Ctrl+c:取消本次指令編輯
  1. 檢視指令幫助
  1. help, –help,man,info 等

常用指令

這裡值列出常用的指令,而且針對個别重要指令會進行截圖示範,畢竟Linux的指令數不勝數,掌握程度還需根據個人實際情況而言。

  1. uname 檢視系統資訊及其核心
  • -a:顯示主機名、核心版本、硬體平台等詳細資訊
  • -r:顯示核心版本
  • 示範截圖:
  1. hostname 檢視主機名
  • 截圖示範:
  1. ip addr 檢視網絡資訊/其他發行版本ifconfig也可以,但是centos需要安裝此指令
  • 截圖示範:
  1. shutdown –h now|poweroff |init 0 關閉計算機
  2. shutdown –r now |reboot|init 6 重新開機計算機
  3. pwd 顯示目前正在工作的目錄
  4. cd 切換工作目錄
  5. ls 顯示目錄内容
  • -l :以長格式顯示
  • -a:顯示所有子目錄和檔案的資訊,包括隐藏檔案
  • -A:類似于“-a”,但不顯示“.”和“..”目錄的資訊
  • -d:顯示目錄本身的屬性
  • -h:以更易讀的位元組機關(K、M 等)顯示資訊
  • -R:遞歸顯示内容
  • --color:以顔色區分不同類型檔案
  1. du 統計目錄及檔案的空間占用情況
  • –h 人性化顯示
  • –s 隻統計每個參數所占空間的大小
  • –a 統計所有檔案
  1. mkdir 建立目錄
  • –p 建立嵌套的多層目錄結構
  1. touch 建立檔案
  2. Ln 建立連結檔案(類似Windows下的快捷方式)
  • -s:建立符号連結檔案
  • 軟連接配接(符号連結):指向原始檔案所在的路徑
  • 硬連結:指向原始檔案對應的資料存儲位置,不能為目錄建立硬連結檔案,硬連結與原始檔案必須位于同一分區(檔案系統)中
  1. cp 複制
  • -r:遞歸複制整個目錄樹
  • -p:保持源檔案的屬性不變
  • -f:強制覆寫目标同名檔案或目錄
  • -i:需要覆寫檔案或目錄時進行提醒
  1. .rm 删除 此指令慎之又慎使用,特此紅色字型标注
  • -f:強行删除檔案或目錄,不進行提醒
  • -i:删除檔案或目錄時提醒使用者确認
  • -r:遞歸删除整個目錄樹
  1. mv 移動
  2. cat 檢視檔案
  3. more 分頁檢視檔案
  4. less 分頁檢視檔案
  5. head 檢視檔案頭
  6. tail 檢視檔案尾
  7. wc 統計
  • -l:統計行數
  • -w:統計單詞個數
  • -c:統計位元組數
  1. gzip,bzip2 壓縮
  • -9:表示高壓縮比,多在建立壓縮包時用
  • -d:用于解開已經壓縮過的檔案
  1. tar 歸檔
  • -c:建立 .tar 格式的封包件
  • -x:解開.tar 格式的封包件
  • -v:輸出詳細資訊
  • -f:表示使用歸檔檔案
  • -p:打包時保留原始檔案及目錄的權限
  • -t:清單檢視包内的檔案
  • -C:解包時指定釋放的目标檔案夾
  • -z:調用 gzip 程式進行壓縮或解壓
  • -j:調用 bzip2 程式進行壓縮或解壓

vim編輯器

工作模式:指令模式、輸入模式、末行模式

指令使用

檔案權限和使用者以及網絡設定

linux 權限

  • linux 權限表示方法有,字元表示法,八進制表示法
  • linux,權限身份有三種,分别為屬主,屬組,其他人
  • 每個身份的的權限有三種分别為 讀(r)寫(w)執行(x)
  • 修改權限的指令
  • 修改檔案權限 chmod
  • u 屬主 g 屬組 o 其他人 a 所有
  • + 增權重限 –去除權限 =設定權限
  • 修改檔案權屬 chown,chgrp
  • 使用者:使用者組
  • Acl 權限
  • 設定其他帳戶擁有要求的權限
  • Setfacl 設定
  • -m 添加
  • -x 删除
  • -b 删除所有
  • -k 删除預設

使用者

  1. 使用者是通路系統身份的象征,在 linux 中賬戶分為三類
  • root 超級使用者
  • 普通使用者
  • 程式使用者
  1. 存儲使用者的檔案
  • 使用者賬戶資訊檔案/etc/passwd
  • 說明:root 使用者名:X 密碼占位符:0 uid: 0gid:使用者名稱:宿主目錄:登入 shell
  • 使用者密碼檔案 /etc/shadow
  • 說明:使用者名:加密的密碼:上次更改密碼的日期(從 1970-1-1 開始):最短密碼期限(按天計算,0 = 無最短期限):最長密碼期限(按天計算):密碼警告期限(按天計算,0 = 未指定警告):密碼非活動期限(按天計算):賬号到期時間(從 1970-1-1開始):保留域
  1. 使用者控制指令
  • useradd 添加使用者
  • -c comment 指定一段注釋性描述。
  • -d 目錄 指定使用者主目錄,如果此目錄不存在,則同時使用-m 選項,可以建立主目錄。
  • -g 使用者組 指定使用者所屬的使用者組。
  • -G 使用者組,使用者組 指定使用者所屬的附加組。
  • -s Shell 檔案 指定使用者的登入 Shell。
  • -u 使用者号 指定使用者的使用者号,如果同時有-o 選項,則可以重複使用其他使用者的辨別号
  • –M 不建立宿主目錄
  • 注解:建立一個 vfast 的賬戶,uid 是 1000 基本組為amcoder附加組為test不建立宿主目錄,禁止登陸,失效時間是 2018 年11月20日
  • usermod 修改賬戶資訊
  • -c comment 指定一段注釋性描述。
  • -d 目錄 指定使用者主目錄,如果此目錄不存在,則同時使用-m 選項,可以建立主目錄。
  • -g 使用者組 指定使用者所屬的使用者組。
  • -G 使用者組,使用者組 指定使用者所屬的附加組。
  • -s Shell 檔案 指定使用者的登入 Shell。
  • -u 使用者号 指定使用者的使用者号,如果同時有-o 選項,則可以重複使用其他使用者的辨別号
  • –L 鎖定帳号
  • –U 解鎖帳号
  • userdel 删除賬戶
  • –r 删除宿主目錄
  • passwd 設定密碼
  • –l 鎖定帳号
  • –u 解鎖帳号
  • –S 檢視帳号狀态

組賬戶

  • 使用者的集合
  • 組賬戶檔案/etc/group
  • groupadd 添加組賬戶
  • groupdel 删除組賬戶
  • gpasswd 設定組成員
  • –a 添加成員
  • –d 删除成員
  • –M 定義成員清單

網絡設定

在 linux 中 網 卡 , 被 識 别 成 了 文 件 存 放 在/etc/sysconfig/network-scripts/ifcfg-eno16777728,管理過程中ifcfg-eno16777728就是我們的網卡名稱,在不同的發型版本中網卡名稱略有不同,還請根據實際情況而定。

配置IP

  • 設定靜态IP
  • 使用vim編輯器編輯網卡檔案ifcfg-eno16777728
  • 修改BOOTPROTO=static
  • 修改ONBOOT=yes
  • 新增IPADDR=你自己的靜态IP
  • 新增NETMASK=255.255.255.0
  • 新增GATEWAY=你自己的網關位址
  • 儲存檔案并退出
  • 使用指令service network restart重新開機網卡讓配置生效
  • 設定動态IP
  • 使用vim編輯器編輯網卡檔案ifcfg-eno16777728
  • 修改BOOTPROTO=dhcp
  • 注釋掉IPADDR,NETMASK,GATEWAY(如果幾個配置項存在的話)
  • 儲存檔案并退出
  • 使用指令service network restart重新開機網卡讓配置生效
  • 補充開關網卡的指令:ifdown 關閉網卡 ifup 開啟網卡
  • 補全service network restart用法:service network restart/stop/start

管理路由

  • route
  • -n :不要使用通訊協定或主機名稱,直接使用 IP 或 port number
  • -ee :使用更詳細的資訊來顯示
  • 增加(add) 與删除 (del) 路由的相關參數:
  • -net :表示後面接的路由為一個網域
  • -host:表示後面接的為連接配接到單部主機的路由
  • netmask:與網域有關,可以設定 netmask 決定網域的大小
  • gw:gateway 的簡寫,後續接的是 IP 的數值喔,與 dev 不同
  • dev:如果隻是要指定由那一塊網路卡連線出去,則使用這個設定,後面接 eth0 等

網絡診斷工具

  1. ping 工具軟體可确定兩台機器間底層 IP 的連接配接性。
  2. host 工具軟體可執行直接 DNS 查詢,并通常在 DNS 調試時使用。
  3. traceroute 工具軟體報告資料包從起點到終點所經過的中間路由器。
  4. tcpdump 工具軟體可用來檢視實時網絡流量,或者為以後的分析截獲網絡交換情況。
  5. wireshark 圖形應用程式和操作 tcpdump 指令的效果一樣,但使用友善的圖形界面來顯示、分析截獲的資訊。

繼續閱讀