1. 程式人生 > 其它 >計算機基礎和Linux安裝

計算機基礎和Linux安裝

20211116計算機基礎和Linux安裝

1.馮.諾伊曼體系結構

  • 數字計算機的數制採用二進位制,bit位 byte位元組 1byte=8 bit

  • 計算機應該按照程式順序執行

  • 計算機硬體由運算器、控制器、儲存器、輸入裝置和輸出裝置五大部分組成

2.二進位制和十進位制轉換

  • 記住如下常用轉換

十進位制和二進位制轉換

[14:40:19 root@centos8 ~]#bc
bc 1.07.1
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
2*3
6
obase=2
168
10101000

[14:41:27 root@centos8 ~]#bc
bc 1.07.1
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
ibase=2
101010
42

進位制轉換

[14:43:09 root@centos8 ~]#echo "obase=2;255" |bc
11111111
[14:43:36 root@centos8 ~]#echo "obase=10;ibase=8;337" |bc
223
[14:44:21 root@centos8 ~]#echo "obase=10;ibase=8;377" |bc
255
[14:44:50 root@centos8 ~]#echo "obase=10;ibase=2;11111111" |bc
255
[14:45:16 root@centos8 ~]#

確定當前系統是32位或64位

[14:46:56 root@centos8 ~]#getconf LONG_BIT
64
[14:47:09 root@centos8 ~]#arch
x86_64

1.1.3 摩爾定律

由英特爾(Intel)創始人之一戈登·摩爾於1965年提出,當價格不變時,積體電路上可容納的元器件的數目,約每隔18-24個月便會增加一倍,效能也將提升一倍

1.2 作業系統和Linux

1.2.1 作業系統功能

OS: Operating System 作業系統,通用目的的軟體程式

主要功能:

  • 硬體驅動
  • 程序管理
  • 記憶體管理
  • 網路管理
  • 安全管理
  • 檔案管理

OS分類:

  • 伺服器OS:CentOS,Ubuntu,Windows Server,AIX
  • 桌面OS:Windows 10,Mac OS,Fedora
  • 移動裝置OS:Andriod,IOS,AliOS,HarmonyOS

使用者和核心空間

使用者空間:User space

使用者程式的執行空間。為了安全,它們是隔離的,即使使用者的程式崩潰,核心也不受影響
只能執行簡單的運算,不能直接呼叫系統資源,必須通過系統介面( system call),才能向核心發出
指令

核心空間:Kernel space

是 Linux 核心的執行空間
可以執行任意命令,呼叫系統的一切資源

程式語言

  • 低階語言:計算機能理解的語言,二進位制
  • 機器語言:0和1
  • 組合語言:和機器語言一一對應,與硬體相關的特有程式碼、驅動程式開發
  • 高階語言: java,python,go,php,Objective-C,C#,易語言(中文),應用級程式開發,人類語言實現
  • C 語言,系統級應用、驅動程式

伺服器三大作業系統

  • Windows:

  • Linux:GNU/Linux

  • Unix:1969年 Ken Thompson

    ​ System: Bell Lab

    ​ AIX (IBM)

    ​ Solaris (SUN)

    ​ HP-UX (HP)

    ​ BSD: (BSRG)Berkeley System Distribution

    ​ NetBSD

    ​ OpenBSD

    ​ FreeBSD

GNU:GNU is Not Unix

1984年由Richard Stallman發起並建立
目標是編寫大量兼容於Unix系統的自由軟體
官方網站:http://www.gnu.org
GPL:GNU General Public License
自由軟體基金會:Free Software Foundation
允許使用者任意複製、傳遞、修改及再發布
基於自由軟體修改再次釋出的軟體,仍需遵守GPL
LGPL:Lesser General Public License,LGPL相對於GPL較為寬鬆,允許不公開全部原始碼
GNU作業系統:
Hurd:Hird(Hurd of Interfaces Representing Depth) of Unix-Replacing Daemons
官網:http://www.gnu.org/software/hurd/hurd.html
richard Stallman 為了無止境尋找完美核心,而忘記了HURD的原本目的:能用的作業系統

1.2.6 Linux

1.2.6.1 Linux 歷史

1991年的10月5日Linus Benedict Torvalds在comp.os.minix 新聞組上釋出訊息,正式向外宣佈他自行
編寫的完全自由免費的核心誕生(Freeminix-like kernel sources for 386-AT) — FREAX,含義是怪
誕的、怪物、異想天開類Unix的核心,在GPL下發布
官網:www.kernel.org
最早版本: https://mirrors.edge.kernel.org/pub/linux/kernel/Historic/

Linux作業系統:

完整的類UNIX作業系統
Linux核心+ GNU工具=Linux/GNU
如:CentOS,Ubuntu,Android

Linux的核心版本組成

  • 主版本號

  • 次版本號

  • 末版本號

  • 打包版本號

  • 廠商版本

1.2.6.2 Linux 發行版

  • slackware:SUSE Linux Enterprise Server (SLES) , OpenSuse桌面

  • debian: ubuntu,deepin(深度),mint

  • redhat: RHEL: RedHat Enterprise Linux, 每18個月發行一個新版本

    ​ CentOS: Community Enterprise Operating System 相容RHEL的格式

    ​ 中標麒麟:中標軟體

    ​ Fedora:每6個月發行一個新版本

  • Alpine: 一個面向安全的輕型 Linux 發行版。它不同於通常 Linux 發行版,Alpine 採用了 musl

  • libc 和 busybox 以減小系統的體積和執行時資源消耗,但功能上比 busybox 又完善的多,只有

  • 5M左右大小

  • ArchLinux:輕量簡潔,遵循K.I.S.S.原則( keep it simple and stupid ),Manjaro

  • Gentoo:極致效能,不提供傳統意義的安裝程式,下載原始碼在本機上編譯安裝軟體

  • LFS:Linux From scratch 自制Linux,只是一個說明書

  • Android:kernel+busybox(工具集)+java虛擬機器

Linux 分支參考網站:http://futurist.se/gldt/
Linux發行版排名: https://distrowatch.com/dwres.php?resource=popularity
Linux 發行版體驗: https://distrotest.net/

1.2.6.3 RHEL

RedHat 紅帽公司

Marc Ewing早在卡內基梅隆大學讀書的時候就戴著他祖父的紅色曲球帽. Marc在Marc Ewing大學常把
自己的軟體命名為Red Hat — Red hat 1, Red Hat 2 用來區別他人的軟體. 所以當他開始自己的Linux項
目, 自然就會命名為Red Hat Linux。Ewing非常樂於幫助同學解決計算機問題 “你的朋友可能會說, 去跟
我的朋友Marc交流. 誰是Marc? 他是紅帽男孩. ” 所以, 至少在他們最親密的朋友當中, 紅帽子成為了技術
專家的同義詞
1993年,Bob Young 建立ACC公司,營銷Linux和UNIX的支援軟體和書籍雜誌
1995年,Bob Young 收購了Marc Ewing的業務,合併後的ACC公司成為新的Red Hat軟體公司,釋出
了Red Hat Linux 2.0
2018年10月29日,IBM宣佈將以約340億美元收購開源軟體和技術主要供應商紅帽公司

紅帽發行版本

Red Hat Linux 1.0 (Mother's Day) 1994年11月03日
Red Hat Linux 2.0 1995年09月20日
Red Hat Linux 3.0 (Picasso) 1996年05月01日
Red Hat Linux 4.0 (Colgate) 1996年10月08日
Red Hat Linux 5.0 (Hurricane) 1997年12月01日
Red Hat Linux 6.0 (Hedwig) 1999年04月26日
Red Hat Linux 6.2 (Zoot) Red Hat Linux 6.2E 2000年04月03日
Red Hat Linux 7.0 (Guinness) 2000年03月27日
Red Hat Linux 7.2 (Enigma) Red Hat Enterprise Linux 2 2001年10月22日
Red Hat Linux 8.0 (Psyche) 2002年09月30日
Red Hat Linux 9.0 (Shrike) 2003年03月31日
Red Hat Enterprise Linux 3.0(Taroon) Fedora 1 (Yarrow) 2003年10月22日
Red Hat Enterprise Linux 4.0 2005年02月15日

Red Hat Enterprise Linux 5.0(Tikanga) 2007年03月14日
Red Hat Enterprise Linux 6.0(Santiago) 2010年11月10日
Red Hat Enterprise Linux 7.0(Maipo) 2014年06月10日
Red Hat Enterprise Linux 8.0 2019年05月07日

1.2.6.4 CentOS 和Rockey Linux

2004年,Gregory Kurtzer和CentOS的其他創始成員基於開源的RHEL建立了CentOS,將Enterprise
Linux引入了社群。
2014年,紅帽宣佈正式贊助CentOS。CentOS的幾個核心團隊入職Red Hat專門負責其開發。並在Red Hat
在理事會中佔了三席,但是其社群屬性得到保留,交易結果是一部分包括將CentOS商標和IP轉移到Red Hat
以安全儲存。
CentOS 8於2019年9月交付,緊隨RHEL 8之後,CentOS Stream的釋出和釋出是對下一個次要更新中即將
釋出內容預覽版本。可以說是RHEL的beta頻道。
2019,巨頭IBM花重資收購了Red Hat。並承諾Red Hat忠於其開源根基不會改變,聲稱" Red Hat對開源
的使命和堅定承諾將保持不變。"
2020年12月8日IBM宣佈將慣例支援到2029年CentOS 8,提前在2年內就終結,唯一的升級途徑是Centos
Stream—AKA,RHEL的Beta釋出,並建議不再生產環境中使用。預示著CentOS可能會正式死亡。CentOS已
死,但是CentOS精神將會永存。
隨後以CentOS創始人之一Gregory Kurtzer為首,8小時內250人嘯聚網路,計劃以建立Rocky
Linux(Rocky為已經逝世的另外一個CentOS創始人)取代CentOS。Rocky Linux與RHEL相容
目前已經建立了Github Rocky Linux專案組織(github.com/rocky-linux/rocky)和官網
(rockylinux.org)。

1.2.7 開源 Open Source

1998 年的 2 月 5 日,一場小型聚會在美國加州的 VA 研究中心舉行,與會的人包括了 一眾資訊科技領
域的知名學者和工程師。正是在這場會上,大家同意了 Christine Peterson 女士提出的用“開放原始碼”
(Open Source)一詞來替代容易在英語人士中引起歧義的“自由軟體”(Free Software)一詞,表達的
是同樣的軟體和意思,但更方便理解更容易獲取更多支援。從那一天開始,“開源”正式誕生。

開源 Open Source

  • 軟體和原始碼提供給所有人,自由分發軟體和原始碼,free 自由,不是免費的意思
  • 能夠修改和建立衍生作品

軟體分類:

  • 商業:收費,原始碼也不公開
  • 共享:免費使用,但原始碼不公開
  • 自由:原始碼公開

開源協議

世界上的開源許可證,大概有上百種

  • GPLv2, GPLv3, LGPL(lesser) :通用公共許可 copyleft

  • Apache: apache

  • BSD: bsd

  • Mozilla

  • MIT

2 Linux 安裝

2.1 Unix 哲學思想

  • 一切都是一個檔案(包括硬體)

  • 小型、單一用途的程式

  • 連結程式,共同完成複雜的任務

  • 避免令人困惑的使用者介面

  • 配置資料儲存在文字中

4.安裝Linux系統

虛擬機器:用軟體(如:vmware,virtualbox等)模擬硬體,方便實驗的靈活配置
虛擬化軟體,建議使用 Vmware Workstation

Linux 生產主流版本

CentOS
https://wiki.centos.org/Download
http://mirrors.aliyun.com
http://mirrors.sohu.com
http://mirrors.163.com
https://mirrors.tuna.tsinghua.edu.cn/centos/

Ubuntu
http://cdimage.ubuntu.com/releases/ Server版
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cdimage/releases/
http://releases.ubuntu.com/ Desktop版
http://mirrors.aliyun.com/ubuntu-releases/
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/

Ubuntu20.04下載

http://mirrors.aliyun.com/ubuntu-releases/20.04.1/ubuntu-20.04.1-live-serveramd64.iso

5.安裝

分割槽

  • /boot 1G ext4
  • /sawp 8G sawp
  • /100G xfs
  • / data 50G xfs

centos8安裝

Ubuntu18安裝

選擇語言

配置網路資訊

分割槽

選擇自定義

建立/boot分割槽1G 格式為ext4

建立swap分割槽

建立/分割槽 100G

勾選openshh