Introduction of Linux
lecturer︰薯羊
OUTLINE
- 簡介作業系統
- Linux的特色以及其歷史
- Linux的基礎操作指令
把作業系統課程簡化99%以後
常見的電腦作業系統



Windows
macOS
Linux
其實我們這些使用者在使用圖形介面時
中間的連繫是這樣的
USER

Hardware(硬件)
是指組成一台計算機的所有組件。
以桌機為例,它包括了
CPU(中央處理器)
RAM(隨機存取記憶體)
Harddisk(硬碟)
等設備。

Kernel(核心)
作為系統的主要核心,
主要是把使用者的指令
解譯為電腦能理解的語言。

Shell(殼層)
簡單來說就是使用者用到的所有應用程式。
包括了你平常在使用的瀏覽器,甚至你看到的視窗介面都是。

作業系統的功能
- 提供使用者簡易的操作環境
- 監控整個程式的執行過程
- 調配程式使用各種電腦資源
- 檔案管理
- 具備識別密碼保護措施確保資料的安全
所以,LINUX有什麼特色?
Linux的背景 (一)
1969年
肯尼斯·藍·湯普遜
(Kenneth Lane Thompson)
為了移植一套遊戲,透過組合語言程式撰寫一套暱稱 Unics 的軟體。
1973年
C語言的發明者 丹尼斯·里奇
(Dennis Ritchie)
把Unics改寫成一套作業系統,並更名Unix。
Linux的背景 (二)
1979年
第7版的Unix寫明
「不可以對學生提供原始碼」。
在這一個版本以後,Unix的原始碼就僅授權於部份大學。
1980 ~ 1990年
人們想有一個自由開放的Unix系統供使用
因此有部份人在不看Unix的原始碼的情況下,寫出了類似Unix的系統。
GNU 及 GPL條款也因為各種Unix like系統的出現下而誕生。
Linux的背景
1991年
一位芬蘭大學生 Linus Torvalds
當時他大二,在為了解決作業的情況下,
自行用GUN C寫出一個可以在Intel 386運行的小小的核心程式,這就是Linux的前身。
LINUX
因此Linux 是一款Unix Like系統
在同為Unix Like系統的情況下,
其實各位也認識一些Unix Like系統。
那套系統的名字叫︰
macOS 以及 Android
Windows
- Shell、Kernel
Mac
- Shell、Kernel
LINUX
- Kernel
3個系統所涵蓋的內容

Linux
平常我們說的LINUX系統到底是?

(Debian的圖形介面)
- Kernel
- Software (Shell)
- GUI (Graphical User Interface) (不一定有)
+
套件
=
Linux Distributions
各個Linux Distributions的版本︰
最新版本:
外面企業常用到的Linux Distributions︰
- RedHat (RHEL)
- CentOS
- SUSE
較常在家用版看到的︰
- Ubuntu
- Debian
7.6
7.6
15
18.10
9.6


LINUX的基礎操作指令
su
-
super user
-
登入擁有最高控制權的Root帳戶
-
**登入時的密碼,並不會有任何顯示**
sudo
-
super user do...
-
登入擁有最高控制權的Root帳戶,並執行指令
-
格式
-
sudo [完整指令]
-
身份控制
pwd
-
print working directory
-
從root開始,顯示當前路徑
ls
-
list
-
列出當前目錄下的檔案
-
格式︰
-
ls [參數] [路徑]
-
-
參數︰
-
-a 列出所有檔案
-
-l 列表
-
目錄控制 (一)
cd
- change directory
- 更改目錄
- 格式︰
- cd [目標路徑]
- 需要搭配 相對路徑 或 絕對路徑 使用。
目錄控制 (二)
-
例子︰
-
cd / 回到根目錄
-
cd ../ 回到上一層
-
cd test 移動到當前目錄下的test目錄
-
絕對路徑
- 從當前目錄出發
- 優點︰
- 用語簡短
- 彈性較大
- 例子︰
- cd file
目錄控制 (三)
-
從root出發
-
優點︰
-
清楚表達檔案的位置
-
-
例子︰
-
cd /home/sirla/桌面/file
相對路徑
more
- concatenate files and print on the standard output
- 連接文件並在屏幕上顯示
- 格式︰
- cat [參數] [檔案名稱]
檔案內容顯示
-
less is more
-
把文件內容以一頁一頁的方式顯示
-
操作方式與vi相同
-
格式︰
-
more [參數] [檔案名稱]
-
cat
LAB 01
用上面提到的技巧
尋找藏有flag的檔案
apt-get
-
Get Advanced Packaging Tools
-
取得 APT(進階打包工具)
-
格式︰
-
apt-get [動作] [工具名稱]
-
下載套件
-
動作︰
- install
-
remove
-
update
小練習
使用apt-get
取得tree工具
目錄控制 (四)
tree
- 列出資夾的樹狀結構
- 使用前需要下載套件tree
- 格式︰
- tree [參數] [顯示格式]
- 參數
- -C 為各種檔案加上色彩,方便辨識種類
mkdir
- make directory
- 建立資料夾
- 格式︰
- mkdir [資料夾名稱]
touch
- 格式︰
- touch [檔案名稱]
- 碰一下檔案,以更新最後更改的時間。
- 如果檔案不存在的話,側建立一個同名的空白檔案。
資料夾控制 (一)
cp
- copy
- 複製
- 格式︰
- cp [參數] [檔案1]
[檔案2]
- cp [參數] [檔案1]
- 參數︰
- -r 全部檔案
- -i 覆蓋前詢問
- -n 直接覆蓋
mv
- move
- 移動檔案
- 格式︰
- mv [參數] [檔案名稱1] [檔案名稱2]... [最後一個檔案名稱 為目標地點]
資料夾控制 (二)
rmdir
- remove directory
- 移除資料夾
- 格式︰
- rmdir [資料夾名稱]
- *必須是空白的資料夾才有效*
- *並不能使用rm的參數*
rm
- remove
- 移除檔案
- 格式︰
- rm [參數] [檔案名稱]
- 參數︰
- -f 強制
- -i 詢問
- -r 循環
資料夾控制 (三)
補充——命名法
檔案命名時,要避免使用空白鍵 或 特殊字元。因為兩者階會影響電腦的指令閱讀。
底線命名
Fate_Grand_Order
駝峰式大小寫
LeagueOfLegends
要斷開詞語,可以用底線 _ 取代 或 駝峰式大小寫CamelCase去命名
LAB 02
-
在 user 用 touch 建立一個檔案 "TouchThis"
-
在 user 裡建立一個資料夾 "my_dir"
-
把 "TouchThis" 的檔案移到 "my_dir" 的資料夾
-
在 user 下再建立一個資料夾 "RIP"
-
把 "my_dir" 移到 "RIP"
- 把 "my_dir" 及 "RIP" 移除掉
Thank you for
your listening!
LIS Introduction of Linux -- Week 1
By sheep_of_block
LIS Introduction of Linux -- Week 1
- 59