1. 程式人生 > 其它 >新學期開始了,第一週

新學期開始了,第一週

實在沒時間,看課程的時間都只能抽坐地鐵的時間,晚上有時候能看2小時,班主任和教練請多擔待。

一、按系列羅列Linux的發行版,並描述不同發行版之間的聯絡與區別。

Linux 的發行版本可以大體分為兩類:

商業公司維護的發行版本,以著名的 Red Hat 為代表;社群組織維護的發行版本,以 Debian 為代表。

  • Red Hat Linux

Red Hat(紅帽公司)創建於 1993 年,是目前世界上資深的 Linux 廠商,也是最獲認可的 Linux 品牌。
Red Hat 公司的產品主要包括 RHEL(Red Hat Enterprise Linux,收費版本)和 CentOS(RHEL 的社群克隆版本,免費版本)、Fedora Core(由 Red Hat 桌面版發展而來,免費版本)。


Red Hat 是在我國國內使用人群最多的 Linux 版本,資料豐富,如果你有什麼不明白的地方,則容易找到人來請教,而且大多數Linux 教程是以 Red Hat 為例來講解的(包括本教程)。
本教程以我國國內網際網路公司常用的 Linux 發行版本 CentOS 為例講解,它是基於 Red Hat Enterprise Linux 原始碼重新編譯、去除 Red Hat 商標的產物,各種操作使用和付費版本沒有區別,且完全免費。缺點是不向使用者提供技術支援,也不負任何商業責任。有實力的公司可以選擇付費版本。

  • Ubuntu

Ubuntu 基於知名的 Debian Linux 發展而來,介面友好,容易上手,對硬體的支援非常全面,是目前最適合做桌面系統的 Linux 發行版本,而且 Ubuntu 的所有發行版本都免費提供。

Ubuntu 的創始人 Mark Shuttleworth 是非常具有傳奇色彩的人物。他在大學畢業後建立了一家安全諮詢公司,1999 年以 5.75 億美元被收購,由此一躍成為南非最年輕有為的本土富翁。作為一名狂熱的天文愛好者,Mark Shuttleworth 於 2002 年自費乘坐俄羅斯聯盟號飛船,在國際空間站中度過了 8 天的時光。之後,Mark Shuttleworth 創立了 Ubuntu 社群,2005 年 7 月 1 日建立了 Ubuntu 基金會,併為該基金會投資 1000 萬美元。他說,太空的所見正是他創立 Ubuntu 的精神之所在。如今,他最熱衷的事情就是到處為自由開源的 Ubuntu 進行宣傳演講。

  • SuSE

SuSE Linux 以 Slackware Linux 為基礎,原來是德國的 SuSE Linux AG 公司釋出的 Linux 版本,1994 年發行了第一版,早期只有商業版本,2004 年被 Novell 公司收購後,成立了 OpenSUSE 社群,推出了自己的社群版本 OpenSUSE。
SuSE Linux 在歐洲較為流行,在我國國內也有較多應用。值得一提的是,它吸取了 Red Hat Linux 的很多特質。
SuSE Linux 可以非常方便地實現與 Windows 的互動,硬體檢測非常優秀,擁有介面友好的安裝過程、圖形管理工具,對於終端使用者和管理員來說使用非常方便。

  • Gentoo

Gentoo 最初由 Daniel Robbins(FreeBSD 的開發者之一)建立,首個穩定版本釋出於 2002 年。Gentoo 是所有 Linux 發行版本里安裝最複雜的,到目前為止仍採用原始碼包編譯安裝作業系統。
不過,它是安裝完成後最便於管理的版本,也是在相同硬體環境下執行最快的版本。自從 Gentoo 1.0 面世後,它就像一場風暴,給 Linux 世界帶來了巨大的驚喜,同時也吸引了大量的使用者和開發者投入 Gentoo Linux 的懷抱。
有人這樣評價 Gentoo:快速、設計乾淨而有彈性,它的出名是因為其高度的自定製性(基於原始碼的發行版)。儘管安裝時可以選擇預先編譯好的軟體包,但是大部分使用 Gentoo 的使用者都選擇自己手動編譯。這也是為什麼 Gentoo 適合比較有 Linux 使用經驗的老手使用。

要注意的是,由於編譯軟體需要消耗大量的時間,所以,如果你所有的軟體都由自己編譯,並安裝 KDE 桌面系統等比較大的軟體包,則可能需要花費很長時間。

  • 其他 Linux 發行版

除以上 4 種 Linux 發行版外,還有很多其他版本,表 1 羅列了幾種常見的 Linux 發行版以及它們各自的特點:

表 1 Linux 發行版及特點彙總

版本名稱

網 址

特 點

軟體包管理器

Debian Linux

www.debian.org

開放的開發模式,且易於進行軟體包升級

apt

Fedora Core

www.redhat.com

擁有數量龐人的使用者,優秀的社群技術支援. 並且有許多創新

up2date(rpm),yum (rpm)

CentOS

www.centos.org

CentOS 是一種對 RHEL(Red Hat Enterprise Linux)原始碼再編譯的產物,由於 Linux 是開發原始碼的作業系統,並不排斥樣基於原始碼的再分發,CentOS 就是將商業的 Linux 作業系統 RHEL 進行原始碼再編譯後分發,並在 RHEL 的基礎上修正了不少已知的漏洞

rpm

SUSE Linux

www.suse.com

專業的作業系統,易用的 YaST 軟體包管理系統

YaST(rpm),第三方 apt (rpm)軟體庫(repository)

Mandriva

www.mandriva.com

操作介面友好,使用圖形配置工具,有龐大的社群進行技術支援,支援 NTFS 分割槽的大小變更

rpm

KNOPPIX

www.knoppix.com

可以直接在 CD 上執行,具有優秀的硬體檢測和適配能力,可作為系統的急救盤使用

apt

Gentoo Linux

www.gentoo.org

高度的可定製性,使用手冊完整

portage

Ubuntu

www.ubuntu.com

優秀已用的桌面環境,基於 Debian 構建

apt

二、安裝Centos7.9ubuntu作業系統,建立一個自己名字的使用者名稱,並可以正常登入,將主要步驟截圖。

1、新建虛擬機器

2、選擇安裝驅動

3、選擇要安裝的作業系統型別為Centos 64位。

4、分配基本的磁碟大小,因為是筆記本,暫定20G,同時設定為儲存為單個檔案。

5、配置基本的硬體配置

6、啟動新建的虛擬機器。

7、從ISO檔案中啟動,開始安裝系統。

8、安裝進行中

9、為了後期少安裝各種服務,我選擇了Server with GUI,並選擇了所有功能應用。

10、設定root密碼

11、新建test使用者,並設定密碼。

三、配置環境變數,實現執行history的時候可以看到執行命令的時間。

A.~/.bash_profile檔案中新增一行,寫入:HISTTIMEFORMAT="”%F %T ",儲存退出。
B.使更新後的配置檔案生效,執行:source ~/.bash_profile。

四、總結Linux哲學思想。

A、一切皆檔案;

B、小型,單一用途的程式;

C、連線程式,共同完成複雜功能;

D、避免令人困惑的使用者介面;

E、配置資料儲存在文字中;

五、總結Linux常用命令使用格式,並用例項說明。例如echoscreendateifconfigexport等命令

5.1date

1).命令格式:date [選項]... [+格式]

2).命令功能:date 可以用來顯示或設定系統的日期與時間。

在顯示方面,使用者可以設定欲顯示的格式,格式設定為一個加號後接數個標記,其中可用的標記列表如下:

% : 打印出 %:

%n : 下一行

%t : 跳格

%H : 小時(00..23)

%I : 小時(01..12)

%k : 小時(0..23)

%l : 小時(1..12)

%M : 分鐘(00..59)

%p : 顯示本地 AM 或 PM

%r : 直接顯示時間 (12 小時制,格式為 hh:mm:ss [AP]M)

%s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數

%S : 秒(00..61)

%T : 直接顯示時間 (24 小時制)

%X : 相當於 %H:%M:%S

%Z : 顯示時區 %a : 星期幾 (Sun..Sat)

%A : 星期幾 (Sunday..Saturday)

%b : 月份 (Jan..Dec)

%B : 月份 (January..December)

%c : 直接顯示日期與時間

%d : 日 (01..31)

%D : 直接顯示日期 (mm/dd/yy)

%h : 同 %b

%j : 一年中的第幾天 (001..366)

%m : 月份 (01..12)

%U : 一年中的第幾周 (00..53) (以 Sunday 為一週的第一天的情形)

%w : 一週中的第幾天 (0..6)

%W : 一年中的第幾周 (00..53) (以 Monday 為一週的第一天的情形)

%x : 直接顯示日期 (mm/dd/yy)

%y : 年份的最後兩位數字 (00.99)

注:date +%Y%m%d%X //顯示當天年月日時間

date +%Y%m%d%X --date="+1 day" //顯示下一天的日期時間

date +%Y%m%d%X --date="-1 day" //顯示上一天的日期時間

date +%Y%m%d%X--date="-1 month" //顯示上一月的日期時間

date +%Y%m%d%X --date="+1 month" //顯示下一月的日期時間

date +%Y%m%d%X --date="-1 year" //顯示前一年的日期時間

date +%Y%m%d %X--date="+1 year" //顯示下一年的日期時間

5.2echo

1.命令格式:echo “ 字串”/變數

2.命令功能:可用於輸出一個字串也可用於批量處理建立

5.3、whereis

1.命令格式:whereis [選項 ] [引數]

2.命令功能:查詢二進位制檔案和說明檔案的位置

3.常用引數:

-b 查詢可執行檔案

-m 查詢幫助檔案

省略引數:返回所有資訊

  • 六、描述Linux發行版的系統目錄名稱命名規則以及用途。

1、系統目錄名稱命名規則:

  • 嚴格區分字元的大小寫;
  • 檔名可以使用除斜線(/)以外的任意字元;
  • 檔名不能超過255個字元;
  • 以點號開頭的檔案為隱藏檔案, 但是還有兩個特殊檔案: 一個點:表示當前目錄和還有一個是點點(..):這表示當前目錄的上一級目錄;

2、檔案路徑:

絕對路徑:從根目錄/顯示出現的路徑

相對路徑:從當前位置顯示出的路徑。

3、 Linux發行版基本目錄架構及用途描述:

Linux的重要思想之一就是“一切皆檔案”,Linux將一切資源歸結為檔案,那就必然將一切的資源都納到一個完整的目錄樹的檔案系統結構中。

Linux的目錄結構呈現倒置的樹形結構。

那麼我可以通過 tree 命令檢視到 它的全貌。

直接 tree / 可以檢視到 / 目錄下的全部子目錄

/boot 系統啟動引導檔案存放此目錄,核心檔案以及引導載入器都存放在此目錄下

/bin 存放所有使用者的基本命令,該目錄不可以獨立分割槽,系統啟動時會使用此目錄下的檔案

/sbin 存放管理類的基本命令,該目錄不能獨立分割槽,系統啟動時會使用此目錄下的檔案。

/lib 存放系統啟動時程式依賴的基本共享庫檔案和核心模組檔案(/lib/modules)

/lib64 專用於x86_64系統上的輔助共享庫檔案存放的位置

/etc 配置檔案目錄

/home 普通使用者的家目錄

/root 管理員使用者的家目錄

/media 移動式裝置的掛載點

/mnt 臨時檔案系統掛載點

/dev 裝置檔案和特殊檔案儲存位置

/opt 第三方引用程式的安裝位置

/srv 系統執行的服務用到的資料

/tmp 產生臨時檔案的程式提供的儲存臨時檔案的目錄

可以執行使用者執行寫入許可權,有特殊許可權

/tmp 臨時檔案儲存位置

/usr 全域性共享的只讀資料路徑

/var 儲存常發生變化的資料庫的目錄 一般情況下,使用較多的時 /var/log 日誌目錄

/proc 基於記憶體的虛擬檔案系統,為核心和程序儲存其相關資訊,多為核心引數。

/sys sysfs虛擬檔案系統提供一種比proc更加理想的訪問核心資料的途徑。用於管理Linux裝置

提供的一種統一模型的介面。