Linux基礎知識入門

涉及內容:
計算機組成、發行版介紹、哲學思想、基本命令介紹、命令幫助使用、系統基本目錄名和功用介紹

計算機組成及其功能

計算機系統由硬件(Hardware)和軟件系統(Software)兩部分組成;

計算機硬件:

包括:cpu、存儲器、輸入設備、輸出設備、網卡、電源等其它硬件設備;

cpu

  • 組成:運算器、控制器、寄存器、緩存
  • 功能:是中央處理器,是整個計算機系統中最重要的部分

存儲器
內存:RAM(Random Access Memory)

  • 功能:它與cpu進行數據交換,是一個高速緩存。計算機的所有程序都運行在內存中

輸入設備

  • 代表:鍵盤、鼠標
  • 功能:下指令,提供數據等

輸出設備

  • 代表: 顯示器、音響
  • 功能: 輸出數據加工的結果

計算機軟件:

一般包含:操作系統和應用軟件;

操作系統:通用的軟件程序
功能:硬件驅動管理、進程管理、內存管理、網絡管理、安全管理、文件管理 等等

應用軟件:如:Office辦公軟件
功能:用來解決某類問題而開發的


Linux的發行版

發行版由來:GNU 提供的各種程序都是源碼,發行商把GNU的這些源碼程序編譯成二進制,然后打包對外提供,這就是發行版。

著名發行版:

  • RedHat
    • RedHat Enterprise Linux (簡稱為RHEL)
      • Centos
      • Oracle Enterprise
    • Fedora Core (桌面版)
  • Debian (以社區方式運行)
    • Ubuntu
      • mint
    • knopix(安全著稱)
  • slackware
    • S.u.S.E(界面美)
      • SLES(企業版)
      • OpenSUSE
  • Gentoo
  • ArchLinux

Linux版本號

內核版本號由三部分組成:

  • major(主版本號)
  • minor(次版本號)
  • release(修正號,修復bug)

發行版-版本號:

  • RHEL: 5.x, 6.x, 7.x
  • Debian: 8.x
  • OpenSuSE: 13.x

開源協議

主要分類:

  • GPL
  • LGPL
  • BSD
  • Apache

Linux的哲學思想

  1. 一切皆文件(把幾乎所有資源統統抽象為文件形式,包括硬件設備、通信管道等) ;
  2. 由眾多功能單一的程序組成,一個程序只做一件事,并且做好;
  3. 盡量避免和用戶交互,易于以編程的方式實現自動化任務;
  4. 使用文本文件保存配置信息,文本是最易于實現的非常底層數據接口表現形式,使用文本編輯器就能進行編輯操作;

Linux命令使用格式和基本命令使用

命令的語法通用格式:
命令 [選項] [參數]
COMMAND OPTIONS ARGUMENTS

COMMAND介紹

命令分為兩類:

  1. 內部命令:由shell程序自帶的命令
  2. 外部命令:獨立的可執行程序文件,文件名即命令名

查看命令類型(是內部還是外部):
type COMMAND

OPTIONS介紹

作用:指定命令的運行特性

選項有兩種表現形式:

  • 短選項:
    • 如果同一命令同時使用多個短選項,多數可以合并: -l -d = -ld
  • 長選項:
    • 長選項不能合并
    • 有些選項可以帶參數,此稱為選項參數

AGGUMENTS介紹

  • 命令的作用對象,命令對什么生效;
  • 不同的命令的參數是不一樣的;
  • 有些命令可以同時帶多個參數,多個之間使用空白字符隔開;

基本命令使用

ifconfig

功能:查看IP地址信息
示例:1

echo

功能:回顯命令

2

選項:

  • -n: 不進行換行

3
加上 -n 選項,代表不換行

  • -e:使轉義符生效

加上-e 選項,使轉義符 \n 生效(\n代表換行操作)

引用:

  • 強引用,變量引用不執行替換;
    echo ‘ ‘
  • 弱引用,變量引用會被替換;
    echo ” “

5

tty

功能:查看終端類型
終端分類:

  • 物理終端:控制臺:console;
  • 虛擬終端 tty:虛擬終端默認有6個,使用ctrl+Alt+F[1-6]來進行切換;
  • 圖形終端:
    • centos6 上使用 ctrl+Alt+F7打開;
    • centos7 在哪個虛擬終端啟動圖形,即位于哪個虛擬終端上;
  • 串行終端 ttyS:不需要用到顯卡,利用主板上的串口;
  • 偽終端 pty
    通過遠程連接或是圖形終端上模擬出來一個命令輸出接口;

終端設備文件為:

  • 物理終端: /dev/console
  • 虛擬終端: /dev/tty#[1,6]
  • 串行終端: /dev/ttyS#
  • 偽終端: /dev/pts/#

6

startx

功能:在虛擬終端上使用該命令打開圖形終端

export

功能:為環境變量賦值;
作用域:為當前shell進程和其子進程;
賦值方法有兩種:
(1) export name=value
(2) name=value; export name

查看當前定義號的環境變量: export

pwd

功能:顯示當前工作目錄的路徑;

7

history

功能:顯示命令歷史列表;

history 是shell的內部命令;

涉及到的幾個環境變量:

  • HISTSIZE
    shell進程可保留的命令歷史的條數;
    echo $HISTSIZE
  • HISTFILE
    持久保存命令歷史的文件的保存位置;
    echo $HISTFILE
  • HISTFILESIZE
    命令歷史文件的大小;
    echo $HISTFILESIZE
  • HISTTIMEFORMAT
    歷史命令時間顯示:
    HISTTIMEFORMAT="%F %T"
  • HISTCONTROL
    控制命令歷史記錄的方式;
    它的值有

    • ignoredups: 忽略重復的命令
    • ignorespace: 忽略以空白字符開頭的命令
    • ignoreboth: 以上兩者同時生效

修改HISTCONTROL變量的值:NAME=’VALUE’
如:HISTCONTORL=ignorespace
注:僅對當前shell有效

選項:

  • -c:清空內存中的歷史命令;
  • -d #:刪除指定位置的歷史命令;
    如:刪除序號為23的歷史命令:
    history -d 23
  • -r:讀取歷史命令文件,將內容追加到命令歷史列表中;
  • w:將當前歷史命令寫入到歷史命令文件中并追加到歷史命令列表中

如:顯示最近的10條命令:
history 10

調用歷史命令列表中的命令:

  • !#:再次執行歷史列表中的第 # 條命令;
  • !-#:再次執行歷史列表中倒數第 # 條命令;
  • !!:再次執行上一條命令;
  • !STRING:再次執行歷史列表中最近一個以 STRING開頭的命令;
  • !STRING:p:打印歷史列表中最近一個以 STRING開頭的命令,但不執行;

調用上一條命令的參數:

  • 調用上一條命令的最后一個參數,兩種方法:
    • esc + .
    • !$
  • 調用上一條命令的第一個參數: !^

shutdown

功能:關機、重啟命令
語法:shutdown [OPTIONS…] [TIME] [WALL…]
選項:

  • -h: halt 關機
  • -r: reboot 重啟
  • -c: cancel 關機取消

TIME:

  • now
  • hh:mm
  • +m

WALL:
顯示出要指定的信息,如果不指定會有默認信息顯示出來

shutdown -h now
shutdown -r +5 “hello system is going reboot”
shutdown -c

poweroff

功能:關機命令

reboot

功能:關機并重啟命令

date

時鐘說明:
在Linux中有硬件時鐘與系統時鐘等兩種時鐘。
硬件時鐘是指主機板上的時鐘設備;
系統時鐘則是指kernel中的時鐘;
當Linux啟動時,系統時鐘會去讀取硬件時鐘的設定,之后系統時鐘即獨立運作。

功能:顯示系統日期和時間;
語法:date [OPTION]… [+FORMAT]
用法:
date 顯示日期和時間
date +%F 顯示日期
date +%Y 顯示年份
date +%m 顯示月份
date +%d 顯示哪天

date +%T 顯示時間
date +%H 顯示小時
date +%M 顯示分鐘
date +%S 顯示秒

date +%s (從1970-01-01 00:00:00(Unix元年)到命令執行那刻經過的的秒數)

date +%F-%T 顯示日期和時間
date +%Y-%m-%d-%H-%M-%S 指定格式顯示日期和時間

日期和時間設定:
date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
順序為:月、日、小時、分鐘、年、秒
如: 設定時間:2015年12月08日 18點15分32秒
date 120818152015.32

hwclock

功能:調整時間命令,和clock命令一樣;
語法:hwclock [function] [option…]
功能:

  • -s – -hctosys 以硬件為準,把系統調整為與硬件時鐘相同;
  • -w – -systohct以系統為準,把硬件時間調整為與系統時鐘相同;

hct 代表硬件,sys 代表系統
to之前是準的,后面要以前面為準;

查看硬件時間:
hwclock

把系統時鐘調整為與硬件時鐘相同:
hwclock -s

把硬件時間調整為與系統時鐘相同
hwclock -w


獲取命令的使用幫助

  1. 內部命令使用幫助
    help COMMAND
  2. 外部命令的使用幫助
    COMMAND --help
  3. 使用man手冊: manual
    man COMMAND
  4. 命令的在線文檔幫助
    info COMMAND
  5. 很多應用程序會自帶幫助文檔
    • README:程序的相關信息
    • INSTALL:安裝幫助
    • CHANGES: 版本迭代的改動信息
  6. 主流發行版官方文檔
    如:http://www.redhat.com/doc
  7. 程序官方文檔
    官方站點上的 Document

man 手冊介紹

man手冊頁存放在/usr/share/man目錄中;

組成部分:

  • NAME:功能性說明
  • SYNOPSIS: 語法格式
    • []: 可選項
    • |: 選其中之一
    • {} 分組,輔助標識符
    • <> 必須提供的內容
    • … 同類內容可出現多個
  • DESCRIPTION: 描述
  • OPTIONS: 選項
  • EXAMPLES: 使用示例
  • AUATHOR: 作者
  • BUGS: 報告程序bug的方式
  • SEE ALSO: 參考

man手冊的章節之分

章節之分的序號含義:
1:用戶命令
2:系統調用
3:C庫調用
4:設備文件及特殊文件
5:文件配置格式(配置文件格式)
6:游戲
7:雜項
8:管理工具及守護進程

man的使用方法

man COMMAND
它會自動從第一章節到最后去尋找,并顯示出來;

可以自己指定查看某個章節:
man # KEYWORD

到指定目錄下查找命令手冊并打開:
man -M /PATH/TO/SOMEDIR”

通過命令 whatis 可以查找某個命令共有幾個章節:
whatis passwd

8

查看man手冊內容的操作方法

1. 翻屏快捷鍵:

  • 空格: 向文件尾翻一屏
  • b:向文件首部翻一屏
  • Ctrl+d:向文件尾部翻半屏
  • Ctrl+u:向文件首部翻半屏
  • 回車鍵:向文件尾部翻一行
  • k:向文件首部翻一行
  • G:跳轉至最后一行
  • 1G:跳轉至文件首部
  • #G::跳轉至指定行

2.文件搜索:

  • /keyword: 從文件首部向文件尾部依次查找;
  • ?keyword::從文件尾部向文件首部依次查找;

n: 與查找命令方向相同
N:與查找命令相反

3. 退出

  • q: quit

Linux發行版的基礎目錄名稱和功用介紹

多數Linux版本采用FHS (Filesystem Hierarchy Standard) 這種文件組織形式;
FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理;
FHS采用樹形結構組織文件;

目錄樹結構

  • /bin
    供所有用戶使用的基本命令程序文件
  • /sbin
    系統管理員使用的工具程序
  • /boot
    引導加載器必須用到的各靜態文件,kernel, inittramfs(initrd),grub等
  • /dev
    存儲特殊文件或設備文件
    設備有兩種類型:

    • 字符設備(線性設備,有時序)
      數據交換是以字符為單位進行的。如顯示器
    • 塊設備(隨機設備,隨機訪問)
      把abc打包成一個塊進行交換。如硬盤
  • /etc
    系統程序的靜態配置文件
  • /home
    普通用戶的家目錄的位置;
    一般每個普通用戶的家目錄默認為此目錄下,與用戶同名 :/home/USERNAME;
    它是可選項;
  • /root
    管理員的家目錄可選項
  • /lib
    為系統啟動或根文件系統上的應用程序(/bin 和 /sbin)提供共享庫,以及為內核提供內核模塊;
    libc.so* : 動態鏈接的C庫;
    ld*: 運行時鏈接器/加載器;
    modules: 用于存儲內核模塊的目錄
  • /lib64
    64位系統特有的存放64位共享庫的路徑;
  • /media
    為便攜性設備提供的掛載目錄;
  • /mnt
    其它文件系統臨時掛載點;
  • /opt
    附加應用程序的安裝位置;
    第三方非關鍵性應用程序存放地;
    可選項;
    現在一般都不用了;
  • /srv
    當前主機為服務提供的數據;
  • /tmp
    為那些會產生臨時文件的程序提供的存儲臨時文件的目錄;
    可供所有用戶執行寫入操作;
    有特殊權限;
  • /usr (全局共享只讀資源)
    全局共享的只讀數據路徑;
    層下目錄有:
    bin,
    sbin,
    etc,
    lib,
    lib64,
    include(C程序頭文件),
    share(命令手冊頁和自帶文檔等架構特有的文件存儲位置),
    local(另一個層級目錄),
    X11R6 X-Windows程序的安裝位置
    src 程序源碼文件的存儲位置
  • /usr/local
    讓系統管理員安裝本地應用程序;
    也通常用于安裝第三方應用程序;
    內在組織結構和 /usr 一樣,也有 bin,sbin,etc,lib,man,share,src,include層下目錄;
  • /var
    存儲經常發生變化的數據的目錄,如日志;
    層下目錄有:
    cache,lib,local,lock,log,opt,run,spool,tmp
  • /proc
    基于內存的;
    虛擬文件系統,用于為內核和進程存儲其相關信息;
    后續調優使用比較多;
    它們多為內核參數,如參數:net.ipv4.ip_forward, 虛擬為 net/ipv4/ip_forward,存儲在 /porc/sys/, 因此其完整路徑為: /proc/sys/net/ipv4/ip_forward
  • /sys
    sysfs 虛擬文件系統提供了一種比 proc 更為理想的訪問內核數據的途徑;
    主要作用在于為管理Linux設備提供了一種統一模型的接口;
    設計較新的一種虛擬的基于內存的文件系統;

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/98360

(0)
allanallan
上一篇 2018-05-13
下一篇 2018-05-13

相關推薦

  • Linux作業管理,并行運行,任務計劃(at任務和cron任務)

    本文主要介紹:1、Linux作業管理 2、并行運行 3、任務計劃(at 一次性任務和 cron 周期性任務)

    2018-05-06
  • Linux的學習之旅

    Linux的文件系統層級結構標準FHS image.png /etc=====和主機相關的系統配置文件 edit the configure /home===== 用戶家目錄 /usr======二層分層的目錄。默認是最大的。 /dev=====設備文件 /media======掛載點和可移動的設備, /mnt=====臨時掛載點 /var=======可變…

    Linux筆記 2018-04-01
  • rpm包管理與yum源安裝及編譯安裝

    rpm -qp –scripts httpd…… :查看 安裝包的腳本安裝好的包信息在: /var/lib/rpm 里面 系統段依靠此文件可知道系統裝了那些包非常重要!?。。⌒枰獋浞?rpm-i [–install]-v verbose 顯示安裝過程– h 顯示進度–text 測試 -e…

    Linux筆記 2018-04-23
  • 文件查找命令locate與find的對比分析

    文件查找命令locate與find的對比分析一、locate 1、locate命令是用來文件查找的命令,依賴于事先構建的索引。而索引的更新并不是實時的,而是每次開機啟動或者管理員手動更新。因為是使用事先建立的索引庫進行檢索,所以會有以下特點: 1)查找速度快 2)模糊查找 3)非實時查找 4)搜索的是文件的全路徑,不僅僅是文件名 5)可能之搜索用戶具備讀取和…

    Linux筆記 2018-04-14
  • 網絡模型和iproute家族命令

    1、簡述osi七層模型和TCP/IP五層模型
    2、簡述iproute家族命令
    3、詳細說明進行管理工具htop、vmstat等相關命令,并舉例
    4、使用until和while分別實現192.168.0.0/24 網段內,地址是否能夠ping通,若ping通則輸出”success!”,若ping不通則輸出”fail!”

    2018-06-19

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-05-14 17:17

    希望可以看一下別的同學的版本,排版不是太漂亮,希望可以再接再厲,繼續保持

欧美性久久久久