LINUX的初探

一般而言,計算機的組成遵循著“馮諾依曼體系結構”。這種結構的體現實質上是一種存儲程序的原理,把程序本身當作數據來對待,程序和該程序處理的數據用同樣的方式來存儲。這種結構的要點是:計算機的數制采用二進制;計算機應該按照程序順序執行。

計算機的組成

馮諾依曼體系

? ? ? ? 一般而言,計算機的組成遵循著“馮諾依曼體系結構”。這種結構的體現實質上是一種存儲程序的原理,把程序本身當作數據來對待,程序和該程序處理的數據用同樣的方式來存儲。這種結構的要點是:計算機的數制采用二進制;計算機應該按照程序順序執行。

? ? ? ? 由“馮諾依曼體系”可以知道,計算機是由幾個獨立的單元所組成的,包括控制器,運算器,存儲器,輸入設備,輸出設備五大單元所組成。

1

各組成的功能

??????? 從宏觀角度來講,計算機又分為兩個部分組成,分別是硬件和軟件。硬件的組成對應著“馮諾依曼體系結構”的五大單元。軟件則是由包括匯編語言,系統軟件和應用軟件。一臺正真意義上的標準計算機必須是帶有軟件和硬件的。

硬件:

??????? 控制器:所對應的硬件為CPU,CPU被稱為計算機的中央處理器,它是計算機的核心組成部分??刂破魇撬闹匾M成部分之一??刂破魇怯嬎銠C的指揮系統,它通過地址訪問存儲器,從存儲器中取出指令,經編碼器分析后,更具指令分析結果產生相應的操作控制信號作用于其他部件,使得個部件在控制器下有條不紊地協調工作。

??????? 運算器:所對應的硬件也為CPU,它也是CPU重要的組成部分之一??刂破饔脕韺崿F算數運算和邏輯運算的部件。

??????? 存儲器:存儲器是計算機中用來存放所有數據和程序的記憶部件,它的基本功能是按指定的地址存(寫)入或者?。ㄗx)出信息。計算機中的存儲器可分成兩大類:一類是內存儲器,簡稱為內存;另一類是外存儲器,簡稱外存。存儲器由若干個存儲單元所組成,每個存儲單元都有一個地址,CPU通過地址對存儲單元進行讀寫。存儲器對應著電腦上的內存條和硬盤。內存儲器就是內存,外存儲器就是硬盤。一個存儲器所包含的字節數即為存儲容量,單位為B,KB,MB,GB,TB等。

軟件:

???????? 軟件是指一系列按照特定順序組織的計算機數據和指令的集合。一般來講軟件被劃分為系統軟件,應用軟件和介于兩者之間的中間件。

匯編語言:一種用于CPU的低級語言。它使用助記符代替二進制語言,方便人們的閱讀及操作。一種匯編語言只能與相應的計算機系統結構對應,無法在不同平臺移植。

系統軟件:用來運行或控制硬件所開發的計算機軟件,如操作系統,編譯器,數據庫等。

應用軟件:為了某種特定用途而被開發的軟件。它可以是一個特定的程序,也可以是一個由眾多獨立程序組成的龐大軟件系統。

LINUX的發行版

什么是LINUX

? ? ? ? ? ? ?Linux是一套免費使用和自由傳播的Unix操作系統,是一個基于POSIXUNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟件、應用程序和網絡協議。它支持32位64位硬件。Linux繼承了Unix網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作系統。

? ? ? ? ? ? ?該操作系統的內核Linux Torvalds于1991年10月5日首次發布。

LINUX的著名發行版

? ? ? ? ? ? ? 按照程序包管理器的不同,Linux被分成了許多不同的派系。

Linux的主流發行版有一下幾種:

1.Debian

分支: Ubuntu,knopix

2.Slackware

????? 分支:S.u.S.E

???????????? SLES, OpenSUSE

3.RedHat

????? 分支:RedHat Enterprise Linux,? Centos,? Fedora Core.

4.其他版本

????? Gentoo, ArchLinux.

2

LINUX發行版之間的不同

? ? ? ? ? ? Linux各發行版之間最大的不同之處在于軟件包管理器的不同,不同的系統,軟件包管理系統也不相同。常見的軟件包管理系統有:

dpkg: 一般常用在Debian系列。

rpm : 一般常用于RedHat系列,S.u.S.E也可使用.

前端工具:

apt-get:用于Debian系列

yum:用于RHEL和CentOS

dnf:用于Fedora

ZYpper:用于S.u.S.E和opensuse

urpmi:用于Mandriva Linux和Mageia

LINUX的哲學思想

  1. 一切皆文件?

? ? ? ? ?此思想是UNIX/LINUX的基本哲學之一。不僅普通文件,目錄,字符設備,快設備等在UNIX/LINUX中都以文件被對待;它們雖然類型有所不同,但是對其提供的只是同一套操作界面。

物理終端:/dev/console

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

串行終端:/dev/ttyS#

偽終端:/dev/pts/#

  1. 小型,單一用途的程序;

???? 程序和可執行文件不能太復雜,這樣能夠保證Linux內核的高效運行。

  1. 連接程序,共同完成復雜功能。

???? 復雜的任務可以通過連接多個簡單的程序實現復雜的功能。對于復雜的功能linux通過許多簡單程序的組合等方式實現,在保證簡單功能的高效性的同時,復雜的程序也必然是高效性的。

  1. 避免了令人困惑的用戶界面。

???? 在使用windows的過程中,常常會出現一些致命的提示錯誤或誤操作導致系統無形的崩掉,如果解決不了,就要操作系統,這樣的操作大大的給用戶帶來了麻煩。Windows作為一個閉源系統,一旦出現復雜性的問題,一般的人是根本沒有辦法解決的。對于Linux這樣的開源系統,無論什么問題都可以通過簡潔的命令行來實現排錯,修改系統的配置文件,一切都是簡潔明了地實行操作。

  1. 配置數據庫存儲在文本中。

???? Linux所有的配置信息都存放在文本配置文件中,無論什么配置只需要修改其配置文件即可。

  1. 盡量避免與用戶交互

???? 方便容易以編程的方式實現自動化任務

Linux系統上命令的使用格式和幾種常用命令的使用方法

命令格式

? ? ? ? ?命令的語法通用格式:command [options] [arguments]

???????? 命令的使用原理:發起命令實則為請求內核將某個二進制程序運行為一個進程。

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

命令存放路徑:

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

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

共享庫存放路徑:

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

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

*:并非所有的命令都有一個在某目錄與之對應的可執行程序文件

命令必須遵循特定的格式規范:exe, msi, ELF(Linux)

可通過file命令來查詢? 實例:~】#file /bin/ls

命令的兩大類:

???????? Shell程序自帶的命令:內置命令

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

???????? Shell程序是獨特的程序,負責解析用戶所提供的命令,它被稱為命令解析器。查看命令的類型命令:type COMMAND

選項(OPTIONS):

? ? ? ? ? 選項用來指定命令的運行特性;

選項的兩種表現形式:

????????? 短選項:-C,? 舉例:-l, -d

????????????????? 有些命令的選項沒有“-”;如果命令同時使用多個短選項,多數可合并:-l -d = -ld

????????? 長選項:–word, 舉例:–help, –human-readable

????????????????? 長選項不能合并;

參數(ARGUMENTS):

????????? 參數用來指定命令的作用對象;

????????? 有些命令可同時帶多個參數,多個之間以空白字符分隔;

????????? 舉例:ls? -ld? /var/log

常用命令:

ifconfig

????????? ifconfig命令被用于配置和顯示Linux內核中網絡接口的網絡參數。

語法:ifconfig [interface]

常用方法:

ifconfig:查看當前系統中存在的網絡接口設備信息

3

ifconfig [name]:查看指定的網絡接口設備信息

4

ifconfig -a:查看所有網絡接口信息(包括非運行狀態下的網卡)

ifconfig [name] up:啟動指定網卡設備工作。

ifconfig [name] down:關閉指定網卡設備工作。

ifconfig [name] add “IPV6 ip address”:添加指定網卡的ipv6地址。

ifconfig [name] del “IPV6 ip address”:刪除指定網卡的ipv6地址。

ifconfig [name] hw ether “MAC address”:修改指定網卡的mac地址。

ifconfig [name] “ip address”:設置指定網卡的ip地址

ifconfig [name] “ip address” netmask “netmask”:設置指定網卡的IP和子網掩碼。

ifconfig [name] “ip address”netmask “netmask”broadcast “ip address”:設置指定網卡的IP和子網掩碼,廣播地址。

iconfig [name] mtu [num]:設置指定網卡的最大傳輸單元。

*:使用此命令若需要永久生效,則需要通過修改配置文件,配置文件路徑為:

/etc/sysconfig/network-scripts/

echo

??? ?echo用來將字符串輸出到終端上。它通常在Shell腳本中使用,以便將狀態信息輸出到屏幕或文件中。

????? 語法格式:echo [short options] [string]

??????????????? echo [long options]

echo -n:不進行換行

echo -e:讓轉義符生效;

轉義符號:

\a:發出警報聲

\b:刪除前一個字符

\c:不加換行符

\f:換行且光標仍停留在原來的位置

\n:換行

\r:光標移至行首,但不換行

\t:制表符

\\:插入“\”字符

????? String可以使用引號,均可使用單引號和雙引號;

????? 單引號:強引用,變量引用不執行替換;

? ? ? ? ? ? ? ? ? ? ?~]# echo ‘$SHELL’

????? 雙引號:弱引用,變量引用會被替換;

? ? ? ? ? ? ? ? ? ? ?~]# echo “$SEHLL”

tty

? ? ? tty用來查看當前的終端設備

???? 語法格式:tty [options]

常用方法:

tty

4.

startx

?????? startx用來帶動x-window。

常用方法:

start:啟動x會話

startx -w:強制啟動x會話

export

?????? 用于將shell變量輸出為環境變量。

?????? 語法格式:bash builtin commands

常用方法:

-f:代表【變量名稱】中為函數名稱

-n:刪除指定的變量。變量實際上并為刪除,只是不會輸出到后續指令的執行環境中。

-p:列出所有shell賦予程序的環境變量

pwd

??????? pwd用來表示以絕對路徑的方式顯示用戶當前的工作目錄。

??????? 語法格式:pwd [options]

常用方法:

pwd:顯示當前用戶的工作目錄

5

history

??????? history用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區,將歷史命令緩沖區寫入命令文件。

??????? 語法格式:bash builtin commands

常用方法:

-c:清空當前的歷史命令

-a:將歷史命令文件中的命令寫入歷史命令文件中

-r:將歷史命令文件中的命令讀入當前歷史命令緩沖區

-w:將當前歷史命令緩沖區命令寫入歷史命令文件中

“number”:打印最近n條歷史命令

shutdown

???????? shutdown用來關閉操作系統

???????? 語法格式:[options…] [time] [wall…]

常用方法:

-c:取消關機

-f:重新啟動時不執行fsck

-F:重新啟動時執行fsck

-h:將系統關機

-k:送出信息給所有用戶,但不會實際關機

-n:不調用init程序進行關機,而由shutdown控制

-r:重啟系統

time:設置多久時間后執行shutdown指令

wall:要傳送給所有登入用戶的信息

poweroff?

?????? poweroff是用來關閉操作系統的另一命令

???????? 語法格式:poweroff [options]

-n:關閉操作系統時不執行sync操作

-w:不是真正意義上的關機

-d:關機時,不將操作寫入日志文件

-f:強制關閉系統

-i:關閉系統之前關閉所有的網卡

-h:關閉操作系統之前將系統中所有的操作設置為備用模式

reboot

???????? reboot用來重啟操作系統

???????? 語法格式:reboot [options]

常用方法:

-d:重新開機時不將數據寫入數據文件/var/tmp/wtmp

-f:強制重新開機,不調用shutdown指令的功能

-i:在重開機之前,先關閉所有網絡界面

-n:重開機之前不檢查是否有未結束的程序

-w:僅做測試使用,并不是真正的將系統重新啟動,只會將重新開機的數據寫入/var/log目錄下的wtmp記錄文件

hwclock

????????? hwclock是一個硬件時鐘訪問工具,它用于顯示當前時間,設置硬件時鐘的時間和設置硬件時鐘為系統時間,也可設置系統時間為硬件時鐘的時間。

????????? 語法格式:hwclock [functions] [options]

常用方法:

-adjust:校正目前的硬件時鐘

-debug:顯示hwclock執行時詳細的信息

-hctosys:將系統時鐘調整與當前的硬件時鐘一致

-set -date:設定硬件時鐘

-show:顯示硬件時鐘的時間與日期

-systohc:將硬件時鐘調整為與當前的系統時鐘一致

-text:測試程序

date

??????? date用于顯示或設置系統時間與日期

??????? 語法格式:date [options] [+format]

常用方法:

-d<字符串>:顯示字符串所指的日期與時間

-s<字符串>:根據字符串設置的日期與時間

+format:格式符

%F:年月日

%T:小時分鐘秒

%Y:年

%m:月

%d:日

%H:小時(24H進制)

%S:秒

%s:秒(從1970-01-01 00:00:00開始到命令執行那一刻的描述unix元年)

LINUX上獲取命令幫助

獲取命令的使用幫助

? ? ? ? ?命令大體分為內部命令和外部命令

???????? 內部命令:help COMMAND

???????? 外部命令:

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

? ? ? ? ? #COMMAND? –help

  1. 使用手冊:manual

位置:/usr/share/man

#man? COMMAND

MAN的section:

NAME:功能性說明

SYNOPSIS:語法格式

DESCRIPTION:描述

OPTIONS:選項

EXAMPLES:使用示例

AUTHOR:作者

BUGS:報告程序bug的方式

SEE ALSO:參考

在SYNOPSIS中:

???????? [ ]:可選內容;< >:必須提供的內容;

???????? a | b | c:多選一; …:同類內容可出現多個;

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

man1, man2,…

man1:用戶命令:

man2:系統調用;

man3:C庫調用;

man4:設備文件及特殊文件;

man5:文件格式;(配置文件格式)

man6:游戲使用幫助;

man7:雜項;

man8:管理工具及守護進行;

~]# man? CHAPTER? COMMAND

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

?????????? 查看:~]# whatis COMMAND

打開手冊后的操作方法:

空格鍵:向文件尾翻一屏;

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

ctrl+u:向文件首部翻半屏

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

K:向文件首部翻一行

G:跳轉至最后一行

數字+G:跳轉至指定行

1G:跳轉至文件首部

文本搜索:

/keyword:從文件首部向文件尾部依次查找;不區分字符大小寫;

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

n:與查找命令方向相同;

N:與查找命令方向相反;

退出:q:quit

LINUX發行版的基礎目錄名稱命名法則及使用規定

LINUX文件系統

??????? 規則:1.文件名名稱嚴格區分字符大小寫;

? ? ? ? ? ? ? ? ? ?2.文件可以使用除/以外任意字符;

? ? ? ? ? ? ? ? ? ?3.文件名長度不能超過255字符;

? ? ? ? ? ? ? ? ? 4.以.開頭的文件為隱藏文件;

? ? ? ? ? ? ? ? ? ? ? .:當前目錄;

? ? ? ? ? ? ? ? ? ? ?..:當前目錄的上一級目錄;

工作目錄:working directory

家目錄:home

LINUX文件系統描述

/:主層次的根,是整個文件系統層次結構的根目錄;

/bin: 存放在單用戶模式可用的必要命令二進制文件,所有用戶均可用。

/boot:存放引導加載程序文件,如kernels,initrd等;

/dev:存放必要的設備文件

/etc:存放主機特定的系統級配置文件。

/home:用戶的主目錄,包括保存的文件,個人配置,等;

/lib:/bin和/sbin中的二進制嗯我那件的必需的庫文件

/media:可移動的多媒體掛載點。

/mnt:臨時掛載的文件系統

/opt:可選的引用程序軟件包

/proc:以文件形式提供進程以及內核信息的虛擬文件系統,在Linux中,對應進程文件系統的掛載點;

/root:根用戶的主目錄;

/sbin:必要的系統級二進制文件,如,init,ip,mout;

/srv:系統提供的站點特定數據

/tmp:臨時文件通常在系統重啟后刪除;

/usr:二級層級存儲用戶的只讀數據;包含(多)用戶主要的公共文件以及應用程序;

…….

67

????????

?

????

?

?

?

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

(1)
ConanConan
上一篇 2018-03-04
下一篇 2018-03-04

相關推薦

  • 循環語句for、while、until

    作用:    循環語句的作用是它可以讓一段代碼重復的執行,直到所需條件不滿足為止。 在linux中變量的賦值方式有三種:       第一:直接等于號賦值       第二:通過read交互賦值       第三:for循環的賦值 bash腳本中的循…

    Linux干貨 2016-08-22
  • 3rd work

    1、列出當前系統上所有已經登陸的用戶名,注意同一個用戶登陸多次,則只顯示一次即可。 [root@localhost ~]# w 11:50:45 up 24 min, ?3 users, ?load average: 0.04, 0.04, 0.10 USER ? ? TTY ? ? ?FROM ? ? ? ? ? ? LOGIN@ ? IDLE ? JCP…

    Linux干貨 2017-10-08
  • N22-第七周作業

    1、創建一個10G分區,并格式為ext4文件系統;    (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;    (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; 創建一個10G的分區:  &nbs…

    Linux干貨 2016-12-18
  • Linux用戶與權限管理

    由于Linux是多用戶、多任務系統,出于一些需要,當我們創建的文件希望對一部分用戶開放,對一部分用戶隱藏的時候應該怎么辦呢?這樣的話,就需要涉及到Linux系統中對用戶以及對文件權限的管理。 一、相關文件 在Linux中,一切配置文件都是以文本文檔的方式來保存的,同樣用戶的信息也保存在系統的一些文件中,其位置為/etc/passwd。此文件只有root用戶具…

    Linux干貨 2016-08-05
  • Linux 作業

    1.       描述計算機的組成及其功能。 答:CPU、I/O、存儲器; CPU:由運算器和控制器組成;運算器主要功能是對數據進行各種運算,除了進行常規計算外還能進行邏輯運算以及數據的比較、移位等操作。控制器是整個計算機系統的控制中心,它指揮計算機各部分協調地工作,保證計算機按照預先規定的目標和步…

    Linux干貨 2016-10-29
  • vim編輯器和bash算術入門

    vim末行模式:       內建的命令行接口      (1)地址界定          :start_pos[,end_pos]          #: 特定的第#行,例如5即第5行; &nbsp…

    Linux干貨 2016-12-23

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-03-06 22:10

    作業寫的很不錯,基礎命令及Linux組成有一個了解,繼續加油。

欧美性久久久久