Linux系統的介紹及如何獲取幫助?(學習筆記)

第一、Linux 基礎

  CPU架構:

     x86

     x64 (amd64)

     m68000,m68k

     arm

     ultrasparc

     Power;PowerPC(aix) (IBM公司設計RISC的CPU)

     MIPS,ARM(多用在網關,機頂盒,便捷式設備的處理)

     alpha (HP公司的)

    POSIX:(Portable Operating System Interface)

    window和linux都遵循POSIX ,俗稱的API

   硬件–> 驅動—>  kernel –》操作系統(API(SysCall,LibCall))    

   blob.png

       硬件部分

   blob.png

  Unix-like 開源協定:

     GPL:General Public License (強制開源)

     copyright,copyleft

     LGPL:lesser GPL (稍微)

     GPLv2,GPLv3

     FSF:Free

     BSD:

     Apache :只要不以原作者名義商業化,都可以不開源,商業用途

     ASF:Apache Software Foundation

     雙線授權:

     Community : 遵循開源協定

     商業授權:

     Enterprise(企業版) (針對企業提供付費服務,維護)

     程序管理:

  相關開源協議的介紹

    http://www.awflasher.com/blog/archives/939


    https://www.oschina.net/question/54100_9455


  程序的組成部分:

     二進制程序(就是主程序)

     配置文件(定制化配置,以方便特定運行服務)

     庫文件(為二次開發提供的接口)

     幫助文件:(使用說明)

  程序包管理器:

     1,程序的組成文件打包成一個或者幾個有限文件

     2,安裝:

     3,卸載

     4,查詢

  各種系統安裝包管理器

     Debian :dpkg,apt-get

     RedHat: rpm ,yum,dnf(yum升級版)

     S.u.S.E: rpm,zypper

     ArchLinux: port

     Gentoo: 邊編譯邊安裝

     LFS: Linux From Scratch (完完全全顯示了系統編譯-創建的過程)

     Kali:

    硬件資源的復用創建出了虛擬機

     CPU的復用:時序

     內存的復用:空間切片

     硬盤的復用:空間

     I/O的復用:時序

     網卡的復用 :時序

     ps:目前主流的虛擬化軟件:vmware workstations;virtualbox 

  終端(terminal)用戶界面

     gui:graphic user interface

     gnome ked 

     cli:command line interface

     bash ,ksh ,csh,

 終端分類、操作和切換:

    物理終端:控制臺,console

    虛擬終端:6個 稱為:tty

    ctrl+alt+F[1-6]

    圖案終端:

    CentOS 6 

    Ctrl+Alt+F7

    CentOS 7 

    在相應的虛擬終端上啟動

    串行終端:ttyS

    偽終端:pty

     遠程連接:

     ssh協議:secure shell

     命令:ss -tnl

     查看系統是否監聽于tcp協議的22號端口

     ]# ip addr list

     ]# ifconfig

    如果是遠程安裝的,需要遠程連接,確保關閉防火墻

    ]# iptables -L -n # 查看防火墻是否關閉

    關閉防火墻

    CentOS 7 :

    ~]# systemctl disable firewalld.service

    ~]# systemctl stop firewalld.service

    

    CentOS 6:

    ~]# service iptables stop

    ~]# chkconfig iptables off

第二、Linux 重要思想:

  1,一切皆文件(硬件設備都是文件表示)

     物理終端:/dev/console

     虛擬終端:/dev/tty#[1-6]

     串行終端:/dev/ttyS#

     偽終端:/dev/pts/#

  2,有眾多功能單一的程序組成:一個程序只做一件事,組合小程序完成復雜任務

  3,盡量避免跟用戶交互

     目標:易于以編程的方式實現自動化

  4,使用文本文件保存配置信息

  CLI接口

     命令行[smile@www ~]#  

     prompt(提示符的解釋) 相關環境變量是PS1

     #,管理員,$普通用戶

     建議用非管理員用戶登錄,安全操作起見 執行管理操作,臨時切換就行

  幾個基礎命令:

     tty:查看當前終端設備

     ifconfig或者ip addr list:查看活動接口的ip地址

     echo:回顯

     ping 探測網絡的目標地址和當前的主機之間的連通性

    

    關機命令:

     CentOS 7 

     ~]# systemctl poweroff

     ~]# systemctl reboot ; 重啟

     

stallman: 

自由含義:自由學習和修改,自由使用;自由分發,自由創建衍生版

思考:文件是什么?眾多文件如何組織起來?


     目錄:路徑映射

     文件:存儲空間存儲的一段流式數據,對數據可以做到按名存取

    文件系統:層級結構

     /: 原初節點,倒置樹狀結構

     文件路徑表示: 相對路徑(從當前位置出發)和絕對路徑(從根位置出發)

     文件名使用法則:

     嚴格區分字符大小寫;目錄也是文件,同一個目錄下,兩個文件不能同名

     支持使用除“/"以外的任意字符

     最長不能超過255個字符

     basename:最右側的文件或者目錄名

     dirname:basename左側的路徑

    程序的組成部分:二進制程序文件,庫文件,配置文件,幫助文件

     前兩者一般都是二進制文件,后兩個是文本文件

     庫文件:不能獨立執行,只能被調用時執行

     命令存放的目錄:/sbin, /bin, /usr/bin, /usr/sbin, /usr/local/bin,/usr/loacl/sbin

    庫文件: /lib,/lib64,/usr/lib,usr/lib64

   注意:并非所有的命令都有一個在某個目錄里有一個對應的可執行文件


  命令可兩類:

     shell自帶的命令, 內置命令(builtin)

     獨立的可執行程序文件,文件名即命令:外部命令

    命令語法的基本格式

     Command OPTIONS ARGUMENTS

    shell 程序是獨特的程序,負責解析用戶提供的命令

     環境變量: eg:HOME,PATH

     查看命令的類型:

     type COMMAND 

     OPTIONS: 指定命令運行的特性

     注意:1,有些命令的選項沒有-,多個選項可以合并;2,–help,這種長選項不能合并;3,有些選項可以帶參數,此稱為選項參數

     ARGUMENTS:命令的作用對象,命令對什么生效

第三、如何獲取幫助?

    

     內部命令:help COMMAND

     外部命令:使用手冊 manual (man COMMAND)

     手冊所在目錄:/usr/share/man

     SECTION:

     NAME:功能性說明

     SYNOPSIS: 語法格式

     DESCRIPTION:描述

     OPTIONS:選項

     EXAMPLES:使用案例

     AUTHOR:作者

     BUGS:報告程序的BUG方式

     SEE ALSO:參考

    

     SYNOPSIS:

     []:可選內容

     <>:必須提供的內容

     a|b|c: 多選一

     ….同類內容可出現多個

    

  使用手冊:壓縮格式的文件,并有章節之分

     /usr/share/man1,man2,man3

     1,用戶命令

     2,系統調用

     3,C庫調用

     4,設備文件及特殊文件

     5,文件格式 (配置文件格式)

     6,游戲使用幫助

     7,雜項

     8,管理工具及守護進程

     查看命令有哪些章節

     whatis COMMAND,有依賴數據庫: makewhatis(手動更新數據庫)

  操作man手冊的閱讀方式

     空格:向文件尾部翻一屏

     b鍵:向文件首部翻一屏

     ctrl+d:向文件尾部翻半屏

     ctrl+u:

     回車鍵:向文件尾部翻一行

     k:向文件首部翻一行

     G:直到最后一行

     1G:直到文件首行

     #G:直到指定行

    -M 選項 : 到指定目錄下面查找命令手冊并打開

  info COMMAND: 獲取在線幫助文檔

    README:程序相關信息

    INSTALL:安裝幫助

    CHANGES;版本更改信息

  google搜索:

     keyword filetype:pdf

     keyword site:domain.tld

第四、Linux文件系統


     1,文件名嚴格區分大小寫

     2,文件名可以使用除/以外的任意字符

     3,文件名長度不能超過255字符

     4,以.開頭的文件是隱藏文件

     .是當前目錄

     ..是上一級目錄

  常用命令:

     pwd:printing working directory (顯示路徑

     cd:change directory 改變目錄(就是改變路徑

     直接cd或者cd~ 直接到家目錄

     在bash中,~表示家目錄

     cd ~USERHOME 切換到USERHOME的家目錄

     cd – 和上一級來回切換

    

     $PWD:當前工作目錄

     $OLDPWD:前次的工作目錄

  ls:list 列出指定目錄下的內容

     -a: 顯示所有文件(包含隱藏文件

     -A:顯示除.和..之外的所有文件

     -l:–long 顯示出詳細信息

     -h,–human-readable 對文件大小單位換算,換算大小可能不是非常精確

     -d,查看目錄本身,不是目錄內部內容

     -r:逆序顯示

     -R:遞歸顯示

    

  cat:catenate 查看文本文件 

     -n :顯示行號

     -E:顯示行結束符

     tac:反過來顯示文本文件命令,和cat對比

    

     file :determin file type 確定文件類型

     查看文件類型

    

  echo :回顯

     -n:不換行

     -e:執行轉義字符

    

  單引號和雙引號的區別

     單引號:強引用,變量引用不能被替換

     eg:'$SHELL' 還是$SHELL

     雙引號:弱引用,變量引用能被替換

     eg:'$SHELL' 是SHELL

  shutdown :halt ,power-off,reboot

     OPTIONS:

     -h:halt

     -r:reboot

     -c:cancel

     TIME:

     now

     hh:mm

    

     wall: 向所有終端發出信息

  日期相關的命令

     Linux:系統啟動時從硬件讀取時間和日期:讀取完以后,就不在與硬件相關

     還有就是和服務器時間同步時間

     系統時鐘和硬件時鐘

     date: 查看系統時鐘

     顯示日期:date [OPTION][+FORMART]

     %s:從1970年1月1日(Unix元年)0分0秒到現在所經過的秒數

     設置日期:date [MMDDhhmm[[CC]YY][.ss]]

     clock: 顯示和設置硬件時鐘

     -s: –hctosys 以硬件為準,同步系統時間

     -w: –sysyshc: 以系統為準,同步硬件時鐘

    

     hwclock和clock同一個命令

    

     cal :查看日歷

原創文章,作者:不忘初衷,如若轉載,請注明出處:http://www.www58058.com/63341

(1)
不忘初衷不忘初衷
上一篇 2016-12-12 02:45
下一篇 2016-12-12 10:47

相關推薦

  • 系統啟動流程

    CentOS 5和6的啟動流程服務管理Grub管理自制Linux啟動排錯編譯安裝內核 系統啟動流程:  POST –> 讀取BootSequence (BIOS),決定引導次序 –>讀取引導設備的Bootloader(MBR grubstage1–>stage1.5/boot…

    Linux干貨 2016-09-13
  • 馬哥教育網絡班21期+第4周作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -r /etc/skel /home/ && mv /home/skel&nbsp…

    Linux干貨 2016-08-02
  • Shell編程 詳解特殊變量之位置參數

    今天我們來探討shell編程的特殊變量:位置變量。 首先我創建了一個testargs.sh的小腳本: #!/usr/bin/env bash # # Author: jacky18676887374@aliyun.com # date: 20160813-19:30:59 # Vervion:&nb…

    Linux干貨 2016-08-15
  • 第三次作業

    第三次作業 一、軟鏈接與硬鏈接的區別    硬鏈接就是同一個文件使用了多個別名(他們有共同的 inode)。 硬鏈接可由命令 link 或 ln 創建,如: 1 2 #link oldfile newfile  #ln oldfile newfile   由于硬鏈接是有著相同 i…

    Linux干貨 2016-08-03
  • LVS管理平臺使用手冊(第一版)[原創]

     為了更好管理、維護LVS平臺,本人基于Django+certmaster+func開發了一套管理平臺,主要功能模塊分為性能圖表、數據中心、虛擬IP池、主機管理、監控模塊等功能,基本上是按F5-LTM管理平臺思路來設計,下面只要對這幾大塊功能進行說明。1、性能圖表 功能說明:以小時、日、星期、月、年的圖表展示LVS SERVER、VIP、SERVE…

    Linux干貨 2015-03-28
  • M20 – 1- 第二周(1):課堂練習與作業

    課堂練習:  1、字符終端登錄時,顯示當前登錄終端號,主機名和當前時間 [root@centos6 ~]# tty             #顯示當前終端號 /dev/pts/0 [root@cent…

    Linux干貨 2016-08-02
欧美性久久久久