好的開始是成功的一半(第一週)

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

  1. Redhat,應該稱爲Redhat系列
    RHEL(Redhat Enterprise Linux,也就是所謂的Redhat Advance Server,收費版本。
    Fedora Core(由原來的Redhat桌面版本發展而來,免費版本)
    CentOS(RHEL的社區克隆版本,免費)。Redhat應該說是在國內使用人羣最多 的Linux版本,甚至有人將Redhat等同於Linux
    Redhat系列的包管理方式採用的是基於RPM包的YUM包管理方式,包分發方式是編譯好的二進制文件。穩定性方面RHEL和CentOS的穩定性非常好,適合於服務器使用, 但是Fedora Core的穩定性較差,最好只用於桌面應用。
  2. Debian,或者稱Debian系列,包括Debian和Ubuntu等
    Debian是社區類Linux的典範,是迄今爲止最遵循GNU規範 的Linux系統。Debian最早由Lan Murdock於1993年創建,分爲三個版本分支(branch): stable, testing 和 unstable。其中,unstable爲最新的測試版本,其中包括最新的軟件包,但是也有相對較多的bug,適合桌面用戶。testing的版本都經過unstable中的測試,相對較爲穩定,也支持了不少新技術(比如SMP等)。
    而stable一般只用於服務器,上面的軟件包大部分都比較過時,但是穩定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其實Redhat的YUM也是在模仿Debian的APT方式,但在二進制文件發行方式中,APT應該是最好的了。Debian的資料也很豐富,有很多支持的社區。
  3. Ubuntu嚴格來說不能算一個獨立的發行版本
    Ubuntu是基於Debian的unstable版本加強而來,可以這麼說,Ubuntu就是 一個擁有Debian所有的優點,以及自己所加強的優點的近乎完美的 Linux桌面系統。根據選擇的桌面系統不同,有三個版本可供選擇,基於Gnome的Ubuntu,基於KDE的Kubuntu以及基於Xfc的Xubuntu。特點是界面非常友好,容易上手,對硬件的支持非常全面,是最適合做桌面系統的Linux發行版本。
  4. Gentoo是Linux世界最年輕的發行版本,正因爲年輕,所以能吸取在她之前的所有發行版本的優點,這也是Gentoo 被稱爲最完美的Linux發行版本的原因之一
    Gentoo最初由Daniel Robbins(FreeBSD的開發者之一)創建,首個穩定版本發佈於2002年。由於開發者對FreeBSD的熟識,所以Gentoo擁有媲美FreeBSD的廣受美譽的ports系統 ——Portage包管理系統。
    不同於APT和YUM等二進制文件分發的包管理系統,Portage是基於源代碼分發的,必須編譯後才能運行,對於大型軟 件而言比較慢,不過正因爲所有軟件都是在本地機器編譯的,在經過各種定製的編譯參數優化後,能將機器的硬件性能發揮到極致。Gentoo是所有Linux 發行版本里安裝最複雜的,但是又是安裝完成後最便於管理的版本,也是在相同硬件環境下運行最快的版本。
  5. FreeBSD並不是一個Linux系統,但FreeBSD與Linux的用戶羣有相當一部分是重合的,二者支持的硬件環境也比較一致,所採用的軟件也比較類似,所以可以將FreeBSD視爲一個Linux版本來比較。
    FreeBSD擁有兩個分支: stable和current。stable是穩定版,而current則是添加了新技術的測試版。FreeBSD採用Ports包管理系統,與Gentoo類似,基於源代碼分發,必須在本地機器編後後才能運 行,但是Ports系統沒有Portage系統使用簡便,使用起來稍微複雜一些。FreeBS的最大特點就是穩定和高效,是作爲服務器操作系統的最佳選 擇,但對硬件的支持沒Linux完備,所以並不適合作爲桌面系統。

二、安裝Centos7.6操作系統,創建一個自己名字的用戶名,並可以正常登錄,將主要步驟截圖。
按照自己安裝方式:
好的開始是成功的一半(第一週)
安裝contos7.6
好的開始是成功的一半(第一週)
查看hostname
好的開始是成功的一半(第一週)
安裝完成配置ip,dns,使用Xshell登錄
好的開始是成功的一半(第一週)
完成配置環境和版本查看

三、配置環境變量,實現執行history的時候可以看到執行命令的時間。
在、/etc/bashrc下添加:Histtimeformat
好的開始是成功的一半(第一週)

四、總結Linux哲學思想。
這裏也就學習馬哥課程主要內容,並添加自己的想法Linux的哲學思想:

  1. 一切皆文件:
    把幾乎所有資源統統抽象爲文件形式;包括硬件設備,甚至通信接口等;
    open(), read(), write(), close(), delete(), create()(內核中系統調用)
  2. 由衆多功能單一的程序組成;一個程序只做一件事,並且做好;
    組合小程序完成複雜任務;
  3. 儘量避免和用戶交互;
    目標:易於以編程的方式實現自動化任務;
  4. 使用文本文件保存配置信息;將配置信息傳遞參數給執行文件(JSON、YAML等輕量化格式)

五、總結Linux常用命令使用格式,並用實例說明。例如echo、screen、date、ifconfig、export等命令
[[email protected] ~]# 命令[選項][參數]
一般[]表示可以省略,Linux崇尚極簡就是精煉

  1. Echo命令
    echo - display a line of text
    SYNOPSIS
    echo [SHORT-OPTION]... [STRING]...
    echo LONG-OPTION
    已輸出屏幕的方式顯示echo後面的內容。

  2. Screen命令
    Screen是一款由GNU計劃開發的用於命令行終端切換的自由軟件。用戶可以通過該軟件同時連接多個本地或遠程的命令行會話,並在其間自由切換。
    GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了統一的管理多個會話的界面和相應的功能。
    Screen一般是沒有安裝的,需要yum install screen
    安裝完成後,直接敲命令screen就可以啓動它。
    配置一個名稱:~]# screen -S mage
    查看窗口和窗口名稱:打開多個窗口後,可以使用快捷鍵Ctrl+a w列出當前所有窗口。
    會話分離與恢復:那麼在screen窗口鍵入Ctrl+a d,Screen會給出detached回話將會分離,使用screen -r #(隔離時提示數字)
    更多更爲詳細內容,man screen

  3. Date命令
    NAME
    date - print or set the system date and time
    SYNOPSIS
    date [OPTION]... [+FORMAT]
    date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
    date命令可以按照指定格式顯示日期,只鍵入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-60)
    %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)
    %Y : 完整年份 (0000-9999)
    上述格式不必全都記住,只需要掌握幾個常用的即可。例如%Y表示年,%m表示月,%d表示日,%H表示小時,%M表示分鐘,%S表示秒,%s表示從 1970 年 1 月 1 日 00:00:00 UTC 到目前爲止的秒數,相當於time函數,%w表示一週中的第幾天。

  4. Ifconfig命令
    ifconfig - configure a network interface
    以我自己電腦爲例
    給eth0網卡配置IP地:192.168.120.56
    ifconfig eth0 192.168.200.201
    給eth0網卡配置IP地址:192.168.200.201 ,並加上子掩碼:255.255.255.0
    ifconfig eth0 192.168. 200.201 netmask 255.255.255.0
    給eth0網卡配置IP地址:192.168.20.201,加上子掩碼:255.255.255.0,加上個廣播地址: 192.168.120.255
    ifconfig eth0 192.168.200.201 netmask 255.255.255.0 broadcast 192.168.200.255
    ifconfig只是簡單爲用戶臨時配置ip而使用。

  5. Export命令:
    在 shell 中執行程序時,shell 會提供一組環境變量。export 可新增,修改或刪除環境變量,供後續執行的程序使用。export 的效力僅限於該次登陸操作。
    SYNOPSIS
    export [-fnp][變量名稱]=[變量設置值]
    參數說明:
    -f  代表[變量名稱]中爲函數名稱。
    -n  刪除指定的變量。變量實際上並未刪除,只是不會輸出到後續指令的執行環境中。
    -p  列出所有的shell賦予程序的環境變量。
    Export -p 列出當前所有的環境變量
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章