第一周作業
一 、計算機的組成及其功能
計算機由CPU,控制器,存儲器,輸入設備,輸出設備組成的。
CPU是計算機的重要硬件之一,主要負責運算和指令解釋。
控制器是控制計算機系統的各個硬件設備協同工作的如(主板的南橋,北橋等)
存儲器分為內存和硬盤,內存負責程序運行,硬盤負責數據存儲。
輸入設備有鍵盤,鼠標等。
輸出設備有顯示器,打印機等。
二 、Linux現有發行版及不同發行版之間的聯系與區別
Linux是一種自由和開放源代碼的類UNIX操作系統。該操作系統的內核由林納斯·托瓦茲在1991年10月5日首次發布。
Linux發行版指的就是通常所說的“Linux操作系統”,它是有Kernel(Linux內核)和許多GNU軟件組成的。發行版為許多不同的目的而制作,包括對不同電腦硬件結構的支持,對普通用戶或開發者使用方式的調整,針對實時應用或嵌入式系統的開發等等。目前,超過三百個發行版被積極的開發,最普遍被使用的發行版有大約十二個。較為知名的有Redhat,CentOS,Fedora、Debian、Ubuntu等。
我們這里以打包方式主要介紹一下常用的兩類系的發行版本及其相互關系:
基于Dpkg (Debian系):
Debian GNU / Linux是一種強調使用自由軟件的發行版。它支持多種硬件平臺。Debian及其派生發行版使用deb軟件包格式,并使用dpkg及其前端作為包管理器。
Debian GNU/Linux:由大批社區志愿者收集的包,擁有龐大的軟件包可供選擇(29000個以上),支持大量的硬件平臺(12個計算機系統結構)。Debian強調開源和自由。
Ubuntu:知名Linux發行版之一,由Canonical有限公司贊助,基于Debian,使用自己的軟件包庫,與Debian的有所不同,旨在開發出更加友好的桌面。
Linux Mint:基于Ubuntu,人氣與Ubuntu不相上下的發行版。
基于RPM (Red Hat系):
Red Hat Linux和SUSE Linux是最早使用RPM格式軟件包的發行版,如今RPM格式已廣泛運用于眾多的發行版。這兩種發行版后來都分為商業版本和社區支持版本。Red Hat Linux的社區支持版本現稱為Fedora,商業版本則稱為Red Hat Enterprise Linux。
CentOS:由社區支持的包,旨在100%地與Red Hat Linux企業版兼容,但不包含Red Hat 的商業軟件。
Fedora:可用作工作站、桌面以及服務器,由紅帽公司及其社區開發。
Red Hat Enterprise Linux:紅帽Linux家族中唯一的商業分支。
三 、Linux哲學思想
1.一切皆文件,把幾乎所有資源統統抽象為文件形式;包括硬件設備,甚至通信接口等。
2.由眾多功能單一的程序組成;一個程序只做一件事,并且做好。目的是組合小程序完成復雜任務。
3.盡量避免跟用戶交互。目的是易于以編程的方式實現自動化任務。
4.使用文本文件保存配置信息。
四. Linux系統命令使用格式以及簡單命令使用介紹
命令語法的簡單格式: ~]#COMMAND OPTIONS ARGUMENTS
COMMAND 命令
發起一個命令就是請求內核將某個二進制程序運行為一個進程。
命令本身是一個可執行的程序文件:二進制格式的文件,有可能會調用共享庫文件
Linux的命令格式是ELF,可以通過file命令來查看命令格式。
例:[root@localhost ~]#file /bin/ls
Linux命令分為兩大類:
1.內部命令:是由Shell自帶的命令。
2.外部命令:是獨立可執行的程序文件,文件名就是命令名
可以用type命令來查看命令是內部還是外部命令。
例:[root@localhost ~]#type /bin/ls
OPTIONS 選項
選項可以指定命令的運行特性。
選項有兩種表現形式:
1.短選項:例如: -l , -d 等
如果同一命令同時使用多個短選項,多數可合并:-l -d = -ld
2.長選項:–word, 例如–help, –human-readable
長選項是不可以合并的。
ARGUMENTS 參數
參數就是命令的作用對象,就是命令對什么生效。
例:[root@localhost ~]#ls -ld /var/etc
下面我們介紹幾個簡單的命令:
ifconfig:被用于配置和顯示Linux內核中網絡接口的網絡參數。
[root@vps ~]# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 101.13.25.219 netmask 255.255.255.0 broadcast 101.13.25.255 ether 00:16:3e:00:3f:2a txqueuelen 1000 (Ethernet) RX packets 65589 bytes 37677310 (35.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 85365 bytes 6314341 (6.0 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 111.222.124.179 netmask 255.255.252.0 broadcast 111.222.124.255 ether 00:16:3e:00:4f:ea txqueuelen 1000 (Ethernet) RX packets 498951 bytes 80017221 (76.3 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 414429 bytes 40452755 (38.5 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 loop txqueuelen 0 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
可以查看到本機的網卡信息。
echo:用于在shell中打印shell變量的值,或者直接輸出指定的字符串。
[root@localhost ~]# echo good good study day day up good good study day day up
tty:查看終端設備命令。
[root@localhost ~]#tty /dev/pts/0
返回值相對應設備:
物理終端:/dev/console
虛擬終端:/dev/tty# [1,6]
串行終端:/dev/ttyS#
偽終端:/dev/pts/#
startx:startx命令用來啟動X Window
exprot:用于將shell變量輸出為環境變量,或者將shell函數輸出為環境變量。
pwd:以絕對路徑的方式顯示用戶當前工作目錄。
[root@vps ~]# pwd /root
history:用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區和將歷史命令緩沖區中的目錄寫入命令文件。
[root@vps ~]# history 1 cat /etc/redhat-release 2 w 3 hostname 4 cat /etc/hosts 5 cat /etc/networks 6 iconfig 7 ipaddr 8 ip \addr 9 ip addr 10 cat /etc/redhat-release 11 cat /etc/sysconfig/networks 12 cat /etc/sysconfig/network 13 vi /etc/sysconfig/network 14 vi /etc/networks 15 vi /etc/hosts 16 cat /etc/sysconfig/network 17 reboot 18 cat /etc/sysconfig/network 19 vi /etc/hosts 20 cat /etc/networks 21 cat /etc/hostname 22 vi /etc/hostname 23 reboot
shutdown:系統關機命令。shutdown指令可以關閉所有程序,并依用戶的需要,進行重新開機或關機的動作。
poweroff:用來關閉計算機操作系統并且切斷系統電源
reboot:用來重新啟動正在運行的Linux操作系統。
hwclock:是一個硬件時鐘訪問工具,它可以顯示當前時間、設置硬件時鐘的時間和設置硬件時鐘為系統時間,也可設置系統時間為硬件時鐘的時間。
date:顯示或設置系統時間與日期。
[root@vps ~]# date Sun Dec 4 14:01:14 CST 2016
五 、Linux系統中如何獲得命令的幫助信息
Linux系統中命令是分為內部命令和外部命令的:他們獲取幫助信息的方式不不同的。
內部命令:
help COMMAND
外部命令:
(1) 命令自帶簡要格式的使用幫助
使用格式:# COMMAND –help
(2) 使用手冊:man
man手冊的存儲位置:/usr/share/man
使用格式:# man COMMAND
其中man手冊是以壓縮格式的文件,存放在 /usr/share/man 中。分別有man1,man2,man3…等,分別都是以不同章節劃分的,各章節意義如下:
1:用戶命令;
2:系統調用;
3:C庫調用;
4:設備文件及特殊文件;
5:文件格式;(配置文件格式)
6:游戲使用幫助;
7:雜項;
8:管理工具及守護進行;
六 、Linux基礎目錄命名法則及功用
多數Linux發行版都遵循FHS文件系統標準。
FHS(英文:Filesystem Hierarchy Standard 中文:文件系統層次結構標準),多數Linux版本采用這種文件組織形式,FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄同時還給出了例外處理與矛盾處理。 FHS定義了兩層規范,第一層是, / 下面的各個目錄應該要放什么文件數據,例如/etc應該要放置設置文件,/bin與/sbin則應該要放置可執行文件等等。 第二層則是針對/usr及/var這兩個目錄的子目錄來定義。例如/var/log放置系統登錄文件、/usr/share放置共享數據等等。
可以用tree命令來查看/目錄下的文件:
[root@vps ~]# tree / -L 1 / ├── bin -> usr/bin ├── boot ├── dev ├── etc ├── home ├── lib -> usr/lib ├── lib64 -> usr/lib64 ├── lost+found ├── media ├── mnt ├── opt ├── proc ├── root ├── run ├── sbin -> usr/sbin ├── srv ├── sys ├── tmp ├── usr └── var
我們詳細說明/目錄下各目錄的功能:
/bin:所有用戶可用的基本命令程序文件;
/sbin:供系統管理使用的工具程序;
/boot:引導加載器必須用到的各靜態文件:kernel, initramfs(initrd), grub等;
/dev:存儲特殊文件或設備文件;
設備有兩種類型:字符設備(線性設備)、塊設備(隨機設備);
/etc:系統程序的配置文件,只能為靜態;
/home:普通的家目錄的集中位置;一般每個普通用戶的家目錄默認為此目錄下與用戶名同名的子目錄,/home/USERNAME;
/root:管理員的家目錄;可選;
/lib:為系統啟動或根文件系統上的應用程序(/bin,/sbin等)提供共享庫,以及為內核提供內核模塊
/lib64:64位系統特有的存放64位共享庫的路徑;
/media:便攜式設備掛載點,cdrom, floppy等;
/mnt:其它文件系統的臨時掛載點;
/opt:附加應用程序的安裝位置;可選路徑;
/srv:當前主機為服務提供的數據;
/tmp:為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄;可供所用戶執行寫入操作;有特殊權限;
/usr:usr Hierarchy,全局共享的只讀數據路徑;
/usr/local:Local hierarchy,讓系統管理員安裝本地應用程序;也通常用于安裝第三方程序;
/var:/var Hierarchy,存儲常發生變化的數據的目錄;
原創文章,作者:Eason,如若轉載,請注明出處:http://www.www58058.com/62446
總結的很好,有例子有說明,加油