Linux基礎知識

Linux是什么?

想要了解linux,我們就需要先介紹一下計算機。什么是計算機?
計算機的功能和組成部分?

計算機是什么呢?它是一種能接收和存儲信息 ,并按照存儲在其內部的程序對海量數據進行自動、高速地 處理,然后把處理結果輸出的現代化智能電子設備。

它的基本功能就是接收用戶輸入的指令,通過CPU的數學與邏輯單元運算處理后,產生或者存儲成有用的信息。

計算機一般分幾個等級:超級計算機(SuperCompuer)、大型機(Mainframe Computer)、小型機(MiniComputer)、微機(Microcomputer)。我們通常所說的計算機就是指Microcomputer,又稱為個人計算機。

通過計算機的功能可以看到,計算機必須要有以下幾部分組成:

輸入單元:如鼠標、鍵盤、掃描儀等。
中央處理器(CPU):含有運算器、控制器、寄存器、緩存。
輸出單元:如顯示器、打印機等。

通常我們的計算機系統是由硬件系統軟件系統兩部分組成的 ,我們上面介紹了硬件系統的組成部分,那么我們在來介紹一下軟件系統
軟件系統又分為“系統軟件”和“應用軟件”。
應用軟件分為:通用軟件和專業軟件
系統軟件一般就指的是我們通常所說的操作系統

計算機操作系統一般是有核心(kernel)和其提供的接口工具組成的,而我們的Linux就是操作系統的核心,它和眾多的GNU自由軟件一起組成了GUN/Linux操作系統。

那么開篇提到的Linux是什么呢?
由上可見我們的Linux就是一個操作系統最底層的核心及其提供的核心工具,而且是一個開源的操作系統。
因為我們的Linux是開源的,任何人可獲取源碼,可執行這個核心程序并對他進行修改,并且這個因為早期的linux都是由黑客工程師開發維護,并沒有考慮到一般用戶的能力,因此,很多商業公司或非盈利的團體就將Linux核心(含公具)與可運行的軟件整合起來,加上自己具有創意的工具程序,讓用戶直接安裝、管理Linux系統,這就有了Linux的發行版。Linux開發的時候就使用了POSIX規范,并為了讓軟件開發商和硬件開發人員有章可循,就有了LSB(Linux Standard Base)和FHS(File system Hierarchy Standard)的誕生,因此Linux各大版本提供的工具和創意上有所不同,但架構上都是類似的。
Linux發行版:(因為發行的公司和團體眾多,有數百種之多,我們只介紹幾種)

  1. Debian系列:Debian是社區類Linux的典范,1993年lan Murdock 創建
    • ubuntu:是基于Debian的unstable版本加強而來,它是一個擁有 Debian所以的優點,以及自己所加強的優點的近乎完美的Linux桌面系統
    • mint:是基于ubuntu的發行版
    • knopix:第一張Debian的自啟動運行光盤
  2. Slackware系列:1993年7月16日由創立者和開發領導者Patrick Volkerding發布,是力圖成為“UNIX風格”的Linux發行版本
    • S.u.S.E:來自德國,是歐洲最流行包
    • OpenSUSE:是一個新版本,基于社區,完全開源
  3. RedHat:也稱為RedHat系列,它包括:
    • Redhat 9.0:
      RedHat Enterprise Linux: 也就是RedHat 企業版RHEL,收費
    • CentOS: Community ENTerprise OS(RHEL的社區克隆版本,免費)
    • Fedora Core:由RedHat桌面版本發展而來的免費版本
  4. Gentoo:最年輕的發行版,能吸收它之前所以發行版的優點
  5. ArchLinux::基于KISS原則,針對i686的CPU做了優化,以.tar.xz格式打包并由包管理器進行跟蹤維護,特別適合動手能力強的linux

Linux的哲學思想:

  1. 一切皆文件。
    • 把幾乎所有的資源(包括硬件設備,通信接口等)全部抽象為文件形式,也就是說所有的資源在Linux上以文件形式存在。
  2. 由眾多的功能單一的程序組成。一個程序只做一件事情,并做好。組合小程序完成復雜的任務。
    • 一條命令是完成一個任務,這些小程序彼此獨立,代碼簡單,目的明確。多個單獨的小程序組合以完成復雜任務,這樣便于排錯,也讓程序運行的更完美
  3. 盡量避免跟用戶交互。
    • 易于用編程的方式實現任務的自動化,一個程序開始運行,就不需要用戶進行任何操作
  4. 使用文本文件保存配置文件
    • 使用簡單的文本編輯就能完成配置

Linux命令的格式:

  • ~]# COMMAND [OPTIONS…] [ARGUMENTS…]
    COMMAND :發起一個命令
    OPTIONS:指定命令的運行特性
    ARGUMNTS:命令的作用對象

Linux常用的命令介紹:

  1. ifconfig命令:查看活動接口的IP地址;或ip addr list
    ifconfig [-v] [-a] [-s] [interface]如:1
  2. echo命令:回顯;是一個內建命令
    echo [SHORT-OPTION]… [STRING]…
    如: [root@bogon ~]# echo “hello”

    • -n:不進行換行
    • -e:讓轉義符生效
      \n:換行
      \t:制表符
      \b:退格鍵
      “ ”:弱引用,變量會替換
      ’ ‘:強引用,變量不會替換
      例:2
  3. tty命令:查看當前的終端設備
    tty [OPTION]…
    物理終端:/dev/console
    虛擬終端:/dev/tty#[1,6]
    串行終端:/dev/ttyS#
    偽終端: /dev/pts/#
  4. startx命令:啟動圖形界面的命令
    startx [ [ client ] options … ] [ — [ server ] [ display ] options … ]
  5. export命令:內建命令,設置shell變量導出屬性
    export [-fn] [name[=value] …] or export -p
    修改環境變量值得方法:

    • ~]# explort 變量名=“值”
      例:export
  6. pwd命令:顯示當前工作目錄
    pwd [OPTION]…
  7. history命令:查看或者設置命令歷史相關參數
    history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg…]

該命令所對應的幾個環境變量:

  • HISTSIZE:命令歷史記錄的條數
  • HISTFILE: ~/.bash_history 命令歷史文件的存放位置
  • HISTFILESIZE:命令歷史文件記錄歷史的條數

該命令的常用選項:

  • -d:刪除歷史命令中的指定命令
  • -c:清空命令歷史
  • -a:手動追加當前會話緩沖區的命令歷史至歷史文件中
  • -w:把歷史文件列表中的命令加至歷史文件中
  • -r:從文件讀取命令 歷史至歷史列表中
  1. shutdown命令:關機命令
    shutdown [OPTIONS…] [TIME] [WALL…]

    常用選項:

    • -r:reboot重啟
    • -h:halt 關機
    • -c:chancle取消關機
      TIME:
      – now:立刻
      – +m:相對時間表示法,從命令提交開始后多久后
      – hh:mm:絕對時間表示,指命令具體時間
  2. poweroff命令:關機命令? ? ? poweroff [OPTIONS…]
  3. reboot命令:重啟命令? ? ? ? ? ?reboot [OPTIONS…]
  4. hwclock命令:修改時鐘包括系統時鐘和硬件時鐘? ? ? hwclock [function] [option…]
    用法:

    • -s:–hctosys 以硬件時間為準來修改系統時間
    • -w:–systohc 以系統時間為準來修改硬件時鐘
  5. date:
    顯示時間 date [OPTION]… [+FORMAT]

    • %F: 按照指定格式顯示
    • %D: 直接顯示日期 mm/dd/yy
    • %H:顯示小時,如:00…23
    • %M:顯示分鐘
    • %S:顯示秒
    • %s:從1970年1 月1日到現在所經歷過的秒數
    • %m:顯示月份
      date

設置時間 date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]

  • MM:月份
  • DD:幾號
  • hh:小時
  • mm:分鐘
  • CC:兩位年份
  • CCYY:4位年份
    如:設置系統時間為2015年12月21日15點40分40秒

date2

Linux如何獲取命令幫助:

獲取命令幫助信息時,內部命令和外部命令獲取方式是有區別的

  • 內部命令:help COMMAND
  • 外部命令:
    1. COMMAND –help 或 COMMAND -h
    2. 使用手冊:man COMMAND
    3. 信息頁 info COMMAND
    4. 程序自帶的幫助文檔
    5. 程序的官方文檔
    6. 發行版的官方文檔
    7. Google 搜索

man幫助文檔手冊頁位置:/usr/share/man;
man有8個章節:man1-man8;那么這8個章節是如何劃分的呢?
如何查詢命令所屬章節,我們使用 whatis COMMAND或者man -k COMMAND

  1. 用戶命令章節,所有用戶都可以使用
  2. 系統調用命令章節
  3. c庫調用
  4. 設備及特殊文件
  5. 配置文件的格式及相關參數
  6. 游戲
  7. 雜項
  8. 管理命令

Linux文件系統

Linux系統在安裝完成以后,會產生一些固定的目錄,來存放一些用戶容易識別的固定文件。Linux所識別的第一個被稱為與跟直接關聯的文件系統,我們稱之為根文件系統。
上文中我們提到過LSB和FHS,LSB是Linux的一個組織,它定義了發行版基礎目錄名稱命名法則及公用規定,這種標準叫做FHS,文件系統層級標準。
Linux的基礎目錄有哪些呢?
我們可以通過~}# ls / 來看以下根下的文件:

ls

  • /boot: 系統引導啟動時要加載的靜態文件;kernel,initramfs(initrd),grub等
  • /bin: 所有用戶可用的基本命令程序文件;
  • /sbin: 供系統管理使用的工具程序;
  • /dev: 存儲特使文件或設備文件;
  • /etc: 系統文件的配置文件,只能為靜態;
  • /home: 普通用戶的家目錄統一存放位置;
  • /lib: 為系統啟動或根文件系統上的應用程序提供共享庫,以及為內核提供內核模塊;
  • /lib64: 64位系統特有的存放64位共享庫的路徑;
  • /media: 便攜式移動設備掛載點;
  • /mnt: 臨時文件系統掛載點;
  • /opt: 附加應用程序的安裝位置;
  • /root: 管理員的家目錄;
  • /srv: services簡寫,當前主機為服務提供的數據;
  • /tmp: 為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄;
  • /usr: 全局共享的只讀數據路徑;
  • /var: 存儲常發生變化的數據路徑;
  • /proc:基于內存的虛擬文件系統,用于為內核及進程存儲其相關信息;
  • /sys: sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑;其主要作用在于為管理Linux設備提供了一種統一模型的接口;

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

(0)
夜風夜風
上一篇 2018-05-10
下一篇 2018-05-10

相關推薦

  • 目錄操作

    索引節點:  

    Linux筆記 2018-04-01
  • Linux入門知識

    #Linux基礎入門 用戶登錄 終端(terminal) 什么是shell? bash shell是什么? 命令提示符 shell內部可執行程序有兩類 Hash 緩存表 alias 命令的別名 命令格式 linux常用命令 bash 的快捷鍵 用戶登錄 root 用戶 一個特殊的管理帳戶 也被稱為超級用戶 root 已接近完整的系統控制 對系統損害幾乎有無限…

    Linux筆記 2018-05-07
  • 第十一周作業

    1、搭建php-fpm工作方式的LAMP環境,實現wordpress正常訪問

    2、什么是DML?常用SQL舉例,每個命令至少1個例子,最多不超過3個例子

    3、簡述ftp的主動和被動模式,并實現基于pam認證的vsftpd

    4、簡述NFS服務原理及配置

    5、簡述samba服務,并實現samba配置

    2018-07-20
  • 第四周作業

    第四周作業
    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。
    2、編輯/etc/group文件,添加組hadoop。
    3、手動編輯/etc/passwd文件新增一行,添加用戶hadoop,其基本組ID為hadoop組的id號;其家目錄為/home/hadoop。
    4、復制/etc/skel目錄為/home/hadoop,要求修改hadoop目錄的屬組和其它用戶沒有任何訪問權限。
    5、修改/home/hadoop目錄及其內部所有文件的屬主為hadoop,屬組為hadoop。
    6、顯示/proc/meminfo文件中以大寫或小寫S開頭的行;用兩種方式;
    7、顯示/etc/passwd文件中其默認shell為非/sbin/nologin的用戶;
    8、顯示/etc/passwd文件中其默認shell為/bin/bash的用戶;
    9、找出/etc/passwd文件中的一位數或兩位數;
    10、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行;
    11、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行;
    12、打出netstat -tan命令執行結果中以‘LISTEN’,后或跟空白字符結尾的行;
    13、添加用戶bash, testbash, basher, nologin (此一個用戶的shell為/sbin/nologin),而后找出當前系統上其用戶名和默認shell相同的用戶的信息;

    2018-06-07
  • 網絡管理 tcp/udp詳解 (傳輸層)

    簡介: TCP和UDP的區別 TCP是面向連接的傳輸控制協議,而UDP提供了無連接的數據報服務。 TCP具有高可靠性,確保傳輸數據的正確性,不出現丟失或亂序;UDP在傳輸數據前不建立連接,不對數據報進行檢查與修改,無須等待對方的應答,所以會出現分組丟失、重復、亂序,應用程序需要負責傳輸可靠性方面的所有工作; UDP具有較好的實時性,工作效率較TCP協議高; …

    2018-05-01

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-05-16 20:33

    命令可以用專門的命令格式寫。

欧美性久久久久