Linux基礎入門1

Linux基礎入門1

目錄

  1. 計算機組成及其功能
  2. 簡述Linux發行版
  3. Liunx哲學思想
  4. Linux命令格式
  5. Linux系統獲取命令幫助信息
  6. Linux基礎目錄簡述

1. 計算機組成及其功能

ENIARC:埃尼阿克,世界上第一臺通用計算機,誕生于1946年美國賓夕法尼亞大學。

馮諾依曼體系-計算機五大基礎部件:運算器、控制器、存儲器、輸入設備和輸出設備。

Linux基礎入門1
1.png
  • CPU:運算器、控制器、內部存儲器(寄存器、緩存)
  • 存儲器:分主存儲器(內存)和輔助存儲器(外存)。內存RAM(Random Access Memory),僅僅用于存放當前正在執行的數據和程序,斷電后數據消失。外存,通常指磁盤、光盤等,能長期保存數據信息。
  • 輸入設備:下指令,提供數據等。(鼠標、鍵盤等)
  • 輸出設備:輸出數據加工后的結果。(顯示器等)

最小存儲單元Cell: 1 Bytes=8 bits


2.簡述Linux發行版

Linux基礎入門1
linux主流發行版.png

Linux發行版有數百種之多,目前主流三大分支:Debian、Slackware、Redhat。

Debian:三大主流發行版中唯一以社區方式運作,沒有商業公司參與。

  • ubuntu:基于Debian的二次發行版。早期應用于桌面,現在ubuntu server領域也應用廣泛。
  • mint:致力于使桌面系統對個人用戶每天的工作更易用,更高效。桌面漂亮。
  • knoppix:是以自由軟件Linux 的 Debian 套件為主干的操作系統,無需安裝可以直接在光盤上運行。

Slackware:

  • S.u.S.E:Slcakware二次發行版
  • SLES:SUSE Linux Enterprise Server
  • OpenSUSE:由openSUSE項目社區開發維護,界面華麗。

Redhat:

  • RHEL
  • CentOS:基于redhat企業版的二次發行版
  • Oracle Enterprise:基于redhat企業版的二次發行版
  • Fedora Core:桌面版,每6個月發行一次新版本。

另外有兩個重要分支Gentoo、Arch Linux

  • Gentoo:Linux世界最年輕的發行版本,正因為年輕,所以能吸取在她之前的所有發行版本的優點.
  • Arch Linux:起源于加拿大的一份致力于使用簡單、系統輕量、軟件更新速度快的GNU/Linux發行版。

3.Linux哲學思想

  • 一切皆文件:把幾乎所有的資源統統抽象為文件形式,包括硬件設備、通信接口等。
  • 由眾多功能單一的程序組成:一個程序只做一件事,組合小程序完成復雜任務。
  • 盡量避免與用戶交互:目標是易于以編程的方式實現自動化任務。
  • 使用文本文件保存配置信息:只需要文本編輯器即可編輯、修改配置文件。

4.Linux命令格式

命令的通用語法格式:

~]# COMMAND OPTIONS ARGUMENT

**COMMAND:**

命令本身是一個可執行的程序文件:二進制格式的文件,有可能會調用共享庫文件;

多數系統程序文件都存放在:/bin, /sbin, /usr/bin, /usr/sbin,/usr/local/bin, /usr/local/sbin

普通命令:/bin, /usr/bin, /usr/local/bin

管理命令:/sbin, /usr/sbin, /usr/local/sbin

共享庫:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64

32bits的庫:/lib, /usr/lib, /usr/local/lib

64bits的庫:/lib64, /usr/lib64, /usr/local/lib64

命令分為兩類:

  • 由shell程序的自帶的命令:內置命令(builtin)
  • 獨立的可執行程序文件,文件名即命令名:外部命令

查看命令類型:~]# type COMMAND

查看文件類型:~]# file /PATH/TO

**OPTIONS:**

指定命令的運行特性

選項有兩種表現形式:

短選項: -C 多個短選項一般情況下可以合并使用

長選項: –word 長選項不能合并

**ARGUMENTS:**

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

tips:有些命令可以同時帶多個參數,以空白字符間隔。例:~]# ls -ld /war /etc

命令實例:

  • ifconfig:用于配置和顯示Linux內核中網絡接口的網絡參數。

centos7 版本系統minimal最小化安裝后沒有這個命令,需要執行以下命令安裝


[root@localhost ~]# yum install net-tools

  • echo:回顯

echo [SHORT-OPTION]… [STRING]…

-n: 不進行換行;

-e:讓轉義符生效;

\n:換行

\t:制表符

  • tty: 顯示連接當前標準輸入設備的文件名

[root@localhost ~]# tty

/dev/pts/0

  • startx: 啟動GUI,實際上啟動x window的程序為xinit.
  • export: 用于將shell變量輸出為環境變量,或者將shell函數輸出為環境變量。
  • pwd: printing working directory 以絕對路徑的方式顯示用戶當前工作目錄。

[root@localhost ~]# pwd

/root

  • history: Display or manipulate the history list. //顯示或操作歷史列表

常見使用方法:

  • -c:清空命令歷史
  • -d :刪除指定命令歷史
  • -r:從文件讀取命令歷史至歷史列表中
  • -w:把歷史列表中的命令追加至歷史文件中
  • shutdown: Halt, power-off or reboot the machine

用法:shutdown [OPTIONS…] [TIME] [WALL…]

  • -h:halt
  • -r:reboot
  • -c:cancel

TIME: now;hh:mm;+m;

  • poweroff: Halt, power-off or reboot the machine
  • -n:關閉操作系統時不執行sync操作;
  • -w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中;
  • -d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄;
  • -f:強制關閉操作系統;
  • -i:關閉操作系統之前關閉所有的網絡接口;
  • -h:關閉操作系統之前將系統中所有的硬件設置為備用模式。
  • reboot: Halt, power-off or reboot the machine
  • -d:重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有“-n”參數效果;
  • -f:強制重新開機,不調用shutdown指令的功能;
  • -i:在重開機之前,先關閉所有網絡界面;
  • -n:重開機之前不檢查是否有未結束的程序;
  • -w:僅做測試,并不真正將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。
  • hwclock: query or set the hardware clock。 //查詢或設置硬件時鐘。
  • -s –hctosys:以硬件為準,把系統時鐘調整為與硬件時間相同;
  • -w –systohc:以系統為準,把硬件時間調整為系統相同;
  • cal: 日歷
  • 用法:cal [[month]year]
  • date: print or set the system date and time
  • 用法: date [OPTION]… [+FORMAT]
  • FORMAT:格式符:%F;%T;%Y;%m;%d;%H;%M;%S

[root@localhost ~]# date 111110002015.00  //設置當前系統時間為2015年11月11日10點0分0秒

Sat Nov 11 10:00:00 CST 2015

[root@localhost ~]#


5. Linux系統獲取命令幫助信息

內部命令:help COMMAND

外部命令:

(1) 命令自帶簡要格式的使用幫助

~]# COMMAND --help

(2) 使用手冊:manual 位置:/usr/share/man

~]# man COMMAND

SECTION:

  • NAME:功能性說明
  • SYNOPSIS:語法格式
  • DESCRIPTION:描述
  • OPTIONS:選項
  • EXAMPLES:使用示例
  • AUTHOR: 作者
  • BUGS: 報告程序bug的方式
  • SEE ALSO: 參考

**SYNOPSIS: **

  • []:可選內容;
  • <>:必須提供的內容;
  • a|b|c:多選一;
  • …:同類內容可出現多個;
  • 使用手冊:壓縮格式的文件,有章節之分;位置: /usr/share/man[1,2,…]
  • man1:用戶命令;
  • man2:系統調用;
  • man3:C庫調用;
  • man4:設備文件及特殊文件;
  • man5:文件格式;(配置文件格式)
  • man6:游戲使用幫助;
  • man7:雜項;
  • man8:管理工具及守護進行;

~]# man CHAPTER COMMAND //使用格式

注意:并非每個COMMAND在所有章節下都有手冊;

~]# whatis COMMAND //查看命令所在手冊章節

注意:其執行過程是查詢數據庫進行的;

手動更新數據庫:

~]# makewhatis

man命令打開手冊以后的操作方法:

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

文本搜索:

  • /keyword:從文件首部向文件尾部依次查找;不區分字符大小寫;
  • ?keyword:從文件尾部向文件首部依次查找;
  • n: 與查找命令方向相同;
  • N: 與查找命令方向相反;

退出:q: quit

選項:

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

(3) info COMMAND

獲取命令的在線文檔;

(4) 很多應用程序會自帶幫助文檔:/usr/share/doc/APP-VERSION

(5) 主流發行版官方文檔

(6) 程序官方的文檔:

(7) 搜索引擎


6. Linux基礎目錄簡述

Linux基礎入門1
linux目錄結構.png

/bin: [Essential user command binaries (for use by all users)] 基本用戶命令二進制文件(供所有用戶使用)

/boot: [Static files of the boot loader] 引導加載程序的靜態文件

/dev: [Device files] 設備文件

/etc: [Host-specific system configuration] 寄主專一性的系統配置

/home: [User home directories (optional)] 用戶家目錄(可選)

/lib: [Essential shared libraries and kernel modules] 必要的共享庫和內核模塊

/lib64: [Alternate format essential shared libraries ] 備用格式基本共享庫(64位)

/media: [Mount point for removable media] 可移動媒體的掛載點

/mnt: [Mount point for a temporarily mounted filesystem] 用于臨時掛載文件系統的掛載點。

/opt: [Add-on application software packages] 附加的應用程序軟件包

/root: [Home directory for the root user (optional)] 根用戶的主目錄(可選)

/run: [Run-time variable data] 運行時變量數據

/srv: [Data for services provided by this system] 本系統提供的服務數據

/tmp: [Temporary files] 臨時文件;可供所有用戶提供讀寫和特殊權限

/usr: User System Resources 用戶資源系統;

程序的配置文件、動態的數據文件等都不會存放到/usr,所以除了安裝、卸載軟件外,一般無需修改/usr中的內容。說在系統正常運行時,/usr甚至可以被只讀掛載。由于這一特性,/usr常被劃分在單獨的分區,甚至有時多臺計算機可以共享一個/usr

  • /usr/bin 多數日常應用程序存放的位置。如果/usr被放在單獨的分區中,Linux的單用戶模式不能訪問/usr/bin,所以對系統至關重要的程序不應放在此文件夾中。
  • /usr/include 存放C/C++頭文件的目錄
  • /usr/lib 系統的庫文件
  • /usr/local 新裝的系統中這個文件夾是空的,可以用于存放個人安裝的軟件。安裝了本地軟件的/usr/local里的目錄結構與/usr相似
  • /usr/sbin 在單用戶模式中不用的系統管理程序,如apache2等。
  • /usr/share 與架構無關的數據。多數軟件安裝在此。
  • /usr/X11R6 該目錄用于保存運行X-Window所需的所有文件。該目錄中還包含用于運行GUI要的配置文件和二進制文件。
  • /usr/src 源代碼

/var: contains variable data files. This includes spool directories and files, administrative and logging data, and transient and temporary files. 包含可變數據文件。這包括spool目錄和文件、管理和日志記錄

  • /var/cache 應用程序的緩存文件
  • /var/lib 應用程序的信息、數據。如數據庫的數據等都存放在此文件夾。
  • /var/local /usr/local中程序的信息、數據
  • /var/lock 鎖文件
  • /var/log 日志文件
  • /var/opt /opt中程序的信息、數據
  • /var/run 正在執行著的程序的信息,如PID文件應存放于此
  • /var/spool 存放程序的假脫機數據(即spool data)

-/var/tmp 臨時文件

/proc: [Kernel and process information virtual filesystem] 內核和過程信息虛擬文件系統

/sys: [Kernel and system information virtual filesystem] 內核和系統信息虛擬文件系統

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

(0)
mgmt.cfgmgmt.cfg
上一篇 2017-12-19
下一篇 2017-12-19

相關推薦

  • ?Nginx

    Nginx 概述 yum安裝Nginx 編譯安裝Nginx 主要文件路徑 主配置文件nginx.conf main block:全局配置段 http/https 協議相關配置段 性能優化初步 調試、定位問題的配置 events段配置 worker、method、accept_mutex http協議相關配置段 虛擬主機 基于PORT、IP、Server Na…

    Linux干貨 2016-10-24
  • sed初步認識

     ◆ sed基礎概念 ◆ sed用法 一.sed 基礎概念: Stream EDitor (流/行編輯器) sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕…

    2017-03-16
  • 由Linux中一個小問題引發的思考

    一、一個小問題 1、在學習Linux中我們經常會遇到很多有趣的小問題,今天筆者就遇到了一個很有意思的小問題,現在分享給大家:      “如何在本機字符終端登陸時,除顯示原有信息外,再顯示當前終端號,時間和主機名?” 2、實現方法如下:      輸入vim /etc/…

    2017-07-16
  • 22期第十四周課堂練習

    系統的INPUT和OUTPUT默認策略為DROP; [root@localhost ~]# iptables -P INPUT DROP [root@localhost ~]# iptables -P OUTPUT DROP 1、限制本地主機的web服務器在周…

    Linux干貨 2017-03-15
  • N26-博客作業-week12

    1、請描述一次完整的http請求處理過程; (1) 建立或處理連接:接收請求或拒絕請求; (2) 接收請求:接收來自于網絡上的主機請求報文中對某特定資源的一次請求的過程; (3) 處理請求:對請求報文進行解析,獲取客戶端請求的資源及請求方法等相關信息; (4) 訪問資源:獲取請求報文中請求的資源; (5) 構建響應報文: (6) 發送響應報文: (7) 記錄…

    Linux干貨 2017-05-23

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-01-07 16:25

    很詳細的一篇博文。用腦圖總結知識點還是非常棒的,繼續加油~

欧美性久久久久