Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Linux入門導覽

Avatar for Shawn OY Shawn OY
March 14, 2019

 Linux入門導覽

給Linux初學者的入門導覽教學

Avatar for Shawn OY

Shawn OY

March 14, 2019
Tweet

More Decks by Shawn OY

Other Decks in Education

Transcript

  1. 1 Linux 情境一: 小明最近常聽到一個新的名詞叫 Linux ,但是小明完全不知道這到底是什麼東西,唯一知道的就 是 Linux 這幾年來越來越熱門,那 Linux

    到底是什麼東西? 解析: 一般我們在說的 Linux 其實就是作業系統,和一般使用者常在使用的 Windows 沒有什麼太大差的 差別。 由於微軟的 Windows 市佔率太大因此大家在學電腦接觸的系統都是 Windows ,相較比較少人在 使用的 Linux 自然就會覺得陌生,但是 Windows 和 Linux 所做的事情都是一樣的! 比較特別的在於 Linux 是自由軟體,只要會寫程式就可以架構出自己所需求的系統環境,就像是 會收取服務費的版本一樣也是會附上 Linux 的程式源始碼。
  2. 2 Linux 情境二: 小明對於 Linux 的由來很好奇,到底是在什麼樣的情況下誕生了 Linux ? 解析: Linux

    的核心最早是由芬蘭人 Linus Torvalds 因個人興趣而開發的, Linus 因為不滿意 Minix 這套作 業系統因而自己開發一個新的作業系統,接著在 1991 年 10 月發佈 Linux 並在新聞群組發佈了 一則訊息: Hello everybody out there using minix- I'm doing a (free) operation system (just a hobby,won't be big and professional like gnu) for 386(486) AT clones. Linus 當時的個人興趣吸引了全世界無數駭客的目 光,因此 Linux 的發展遠遠超出許多人的想像,到 現今也越來越多人轉而使用 Linux 。
  3. 3 Linux 情境三: 小明發現 Linux 常使用一企鵝當標誌,到底這隻企鵝和 Linux 有什麼關係? 解析: 其實這隻企鵝是

    Linux 的吉祥物!因為 Linus 以前在澳洲的動物園被企鵝咬了一口因此 Linus 決定 使用企鵝來當 Linux 的標誌,而且這隻企鵝還是有名字的!名字就叫做 Tux 。
  4. 4 Linux 情境四: 小明現在想使用看看 Linux 但是完全不知道 Linux 可以做什麼,到底 Linux 可以做什麼和一般常在

    使用的 Windows 有什麼差別? 解析: 其實各位在 Windows 可以做什麼 Linux 就可以做什麼!比如要打文書報告可以使用 OpenOffice 要 和朋友用 MSN 聊天可以使用 Pidgin ,想要逛網站也有 FireFox 或是想用 OutLook 來收信當然也沒 問題,同樣可以使用 Thunderbird ,想玩遊戲?在 Linux 有無數的免費遊戲可以玩,但是遊戲部份 會比 Windows 麻煩一點,因為大部份的遊戲都沒有 Linux 版本。
  5. 7 Linux 情境五: 小明現在又有問題了!到底我適不適合使用 Linux ?或是什麼人比較適合使用 Linux ? 解析: 每個人都適合使用!如果你只是一般的使用者那麼在

    Linux 也有 X Window ,操作就像你在使用微 軟的 Windows 一樣,甚至於有比 Windows 更漂亮但硬體需求更低的圖型操作環境,如果你想架 設伺服器 Linux 更是不錯的選擇,別忘了 Windows 能做什麼 Linux 就能做什麼!
  6. 8 Linux 情境六: 小明一直在想到底該用 Windows 好還是 Linux 好? Windows 和

    Linux 差別在那裡? 解析: Windows 與 Linux 那個好很難去做一個評比, Windows 在操作上比較人性化,大部份的設定都 有圖型使用者介面可以操做,而 Linux 大 部份的設定並需用修改檔案的方式,操作起來比較麻 煩,而最大的問題則在於軟體支援的部份 , 好比一般的專業製圖軟體都沒有 Linux 的版本,雖然 還是有方法可以在 Linux 執行,但效能則會比在 Windows 上面執行差。 相對 Windows 用習慣的人來說要改用 Linux 大部份的人會産生非常強大的排斥心。
  7. 9 Linux 情境七: 小明現在想開始學習使用 Linux ,但是小明完全不知道從何開始, Linux 該怎麼學比較好? 解析: 學習

    Linux 沒有標準的方式,有人從 X Window 的介面學起相對的也有人從終端機學起,那一種方 式比較好沒有一定的準則,如果完全找不到方向可以試著將 Windows 能做的事情換成 Linux 來使 用,避免 Linux 安裝好了但開機後完全不知道自己要做什麼事情。 另外也有不少人是因為極度討厭微軟因此改用 Linux ,而這類人中不少還是擁有頂尖技術的駭客。
  8. 10 Linux 情境八: 小明聽說 Linux 上面的軟體都是免費不用錢的,但是 Linux 所使用的軟體真的都不用錢或是沒有所 謂的版權嗎? 解析:

    自由軟體並不等於免費軟體!免費軟體可以不用花錢購買也能使用但軟體的源始碼並不會一起附上 而自由軟體則是會連帶程式源始碼,但是自由軟體不一定是免費的!不論是自由軟體或免費軟體兩 者都不代表該軟體沒有版權。 而 Linux 上面的軟體大部份使用 GPL 的授權方式。 GNU 的 GPL 授權說明 http://www.gnu.org/licenses/gpl.html
  9. 11 Linux 情境九: 小明現在想安裝 Linux 來用,但小明發現 Linux 的版本 (Distribution) 眾多,小明現在完全不知道該

    選擇那一個版本來安裝使用。 解析: 初學者建議使用 Ubuntu 來當做入門的 Linux ,最主要是 Ubuntu 安裝簡便,不需要太複雜的設定而 且全程都有圖型安裝介面,對於看到純文字介面就頭痛的初學者來說算是非常的友善,而且以目前 來看 Ubuntu 算是唯一有中文官方網站並且有討論區的版本,使用上有問題或任何的心得都可以在 網站上面和其他同好一起討論。 另外 Ubuntu 也有提供 Live CD ,只需要使用 Live CD 來開機就能使用簡易功能的 Linux 而不需要 進行任何的安裝,也不會破壞到原本硬碟裡面的資料。 Ubuntu 臺灣官方網站 http://www.ubuntu-tw.org/
  10. 12 Linux 情境十: 小明將 Linux 安裝好並成功進入了 X Window ,接下來小明完全不知道該如何操作。 解析:

    X Window 的操作方式和 Windows 差不多,滑鼠左鍵點一下可以選擇檔案或資料夾點兩下可以執行 程式或開啟檔案與資料夾,滑鼠右鍵點一下會彈出快顯功能表。 如果想從 X Window 切換到終端機可以按下 Ctrl + Alt + F1~F6 ,這個時候畫面會切換到終端機底 下也就是純文字的指令介面,如果想從 A 終端機切到 B 終端機或是切回 X Window 只需要按下 Alt + F1~F6 ,而按下 Alt + F7 則是切回 X Window 。
  11. 13 Linux 情境十一: 小明現在開始學習在終端機底下操作 Linux ,但是小明切到終端機後完全不知道下一步該怎麼做, 只看到一大堆的英文字,現在小明該怎麼辦? 解析: 在終端機登入後看到的畫面會因 Linux

    的版本不同而有所不同,但大至上會看到類似下面的畫面。 [root@localhost ~]# 首先 root 就是你目前使用的帳號,請注意! root 這個帳號和 Windows 的 Administrator 的帳號一樣 都是最高權限管理者,沒事最好不要使用 root 來操作 Linux ,再來後面的 localhost 則是你目前主 機的位址,  localhost  則是代表自己本機的電腦,最後會看到一個 ~ ,這個則是目前的目錄名 稱,而 ~ 這個符號則是代表在自己的家目錄。
  12. 14 Linux 情境十二: 小明想在終端機底下查看有那些檔案和資料夾,現在該怎麼做? 解析: 在終端機列出檔案和資料夾則必需下 ls 這個指令。 [root@localhost ~]#

    ls 但光是用 ls 無法顯示隱藏檔,這時必需加上參數 -a 。 [root@localhost ~]# ls -a 如果想看比較完整的資訊可以在後面加上參數 -l 。 [root@localhost ~]# ls -l 隨堂練習: 要列出所有檔案包含隱藏檔並且同時要用完整的資訊來程現,請問指令該如何下? 解答: [root@localhost ~]# ls -al
  13. 15 Linux 情境十三: 小明用 ls -l 後發現多了很多原本 ls 沒有的東西,現在這些資訊分別代表什麼意思? 解析:

    下達 ls -l 指令後會看到類似下面的畫面。 drwxr-xr-x 3 root root 1024 2009-01-01 00:00 home 可以看到分成七個部份,這七個部份分別代表著: drwxr-xr-x 3 root root 1024 2009-01-01 00:00 home [ 檔案權限 ]   [ 結點 ]   [ 擁有者 ]   [ 群組 ]   [ 檔案大小 ]     [ 日期 ]     [ 檔案名稱 ] 檔案權限說明: 以上面範例可以將權限的部份拆解成 1.d 2.rwx 3.r-x 4.r-x 第一部份如果是 d 則代表這是目錄,如果是檔案則會用 - 第二部份為檔案擁有者的權限 第三部份為群組的權限 第四部份為非本群組的權限 權限說明 權限 說明 代號 r 可讀取 4 w 可寫入 2 x 可執行 1 - 無權限 0
  14. 17 Linux 情境十四: 小明知道如何顯示檔案和資料夾了,但是現在小明想切換到別的目錄該用什麼指令? 解析: 在終端機要切換目錄可以使用 cd 這個指令,比如切換到 /home 。

    [root@localhost ~]# cd /home 另外也可以往上一層目錄做切換。 [root@localhost ~]# cd .. 切換到指定的目錄。 [root@localhost ~]# cd /etc/X11
  15. 20 Linux 情境十七: 小明想把剛才建立的目錄刪除,那麼現在又該使用什麼指令? 解析: 想要建立新的目錄可使用 rmdir 。 [root@localhost ~]#

    rmdir test 如果想刪除巢狀目錄可以加上參數 -p 。 [root@localhost ~]# rmdir -p test1/test2/test3/test4/test5
  16. 21 Linux 情境十八: 現在小明要在終端機底下新增檔案,指令又該如何下? 解析: 要新增檔案使用 touch 。 [root@localhost ~]#

    touch fax.txt 在 Linux 上面副檔名是沒有任何用處的,只是單純讓使用者方便判斷。另外請注意!在 Linux 系統 上不論是檔案或是目錄大小寫英文視為不同的字。
  17. 22 Linux 情境十九: 小明現在想要把檔案從隨身碟裡複製出來,現在又該使用那個指令? 解析: 要複製檔案使用 cp 。 [root@localhost ~]#

    cp fax.txt MyFiles cp 後面需要有想複製的檔案和想將檔案複製到那裡。 cp fax.txt MyFiles [ 指令 ]   [ 檔案來源 ]   [ 目的 ] [root@localhost ~]# cp fax.txt MyFiles 加上 -a 參數可以複製目錄。 [root@localhost ~]# cp -a MyFiles MyFiles2
  18. 23 Linux 情境二十: 小明突然發現剛才新增的檔案名稱打錯了而且也放錯了目錄!現在小明該怎麼解決這個問題? 解析: 重新命名與移動檔案同樣都是使用 mv 。 [root@localhost ~]#

    mv fax.txt Fax.txt mv fax.txt Fax.txt [ 指令 ]   [ 錯誤的檔名 ]   [ 正確的檔名 ] [root@localhost ~]# mv fax.txt MyFiles mv fax.txt MyFiles [ 指令 ]   [ 要移動的檔案 ]   [ 目的 ] 將 fax.txt 移到 MyFiles 目錄。
  19. 24 Linux 情境二十一: 小明現在想把剛才練習新增的檔案刪除,現在該怎麼做? 解析: 刪除檔案可以使用 rm 。 [root@localhost ~]#

    rm fax.txt [root@localhost ~]# rm -f fax.txt 加上 -f 參數可以強制刪除。 加上 -r 參數可以刪除目錄。 [root@localhost ~]# rm -r MyFiles 隨堂練習: 現在想要將一個不是空的目錄一次刪除請問指令該如何下? 解答: [root@localhost ~]# rm -rf SomeDirectory
  20. 25 Linux 情境二十二: 小明想要查看某一個檔案的內容但是除了用 VI 之外有沒有指令可以做到? 解析: 如果只是單純想要查看檔案內容可以使用 cat 這個指令。

    [root@localhost ~]# cat fax.txt [root@localhost ~]# cat -n fax.txt 加上 -n 參數可以在每行最前面顯示行數。 加上 -E 參數可以在每行最後面加上 $ 符號,注意這邊是大寫 E 。 [root@localhost ~]# cat -E fax.txt 加上 -b 參數和 -n 一樣,但是 -b 遇到空行時不會顯示行數。 [root@localhost ~]# cat -b fax.txt
  21. 27 Linux 情境二十四: 小明現在比較熟 Linux 了,但是小明在用 ls -l 或是 cat

    的時候常常會發生資訊太多頁面卷動太快, 在使用卡非常不方便,是否有比較好的方式? 解析: 在終端機下可以使用 Shift + Page Up 往上一頁或是 Shift + Page Down 往下一頁,除此之外也可以 使用 more 的方式來做查詢,使用 more 當資訊剛好一個畫面時會先暫停,按下空白鍵後才會繼續 顯示下一頁,在查詢過程中可以隨時按 q 結束。 [root@localhost ~]# more fax.txt 使用 ls 的方式加上 more 。 [root@localhost ~]# ls -l | more
  22. 28 Linux 情境二十五: 小明現覺得雖然 more 已經很方便但是有沒有更方便的指令可以使用? 解析: 除了 more 之外也可以使用

    less , less 和 more 差別不大,但是 less 在查詢過程中可以配合使用鍵 盤的 Page Up 和 Page Down 往上下一頁翻,也可以隨時按下 q 結束。 [root@localhost ~]# less fax.txt 使用 ls 的方式加上 less 。 [root@localhost ~]# ls -l | less
  23. 31 Linux 情境二十八: 小明現在想知道一些常用的執行檔是放在那個目錄底下,有沒有指令可以快速尋找? 解析: which 可以尋找指定執行檔的所在目錄。 [root@localhost ~]# which

    ifconfig /sbin/ifconfig [root@localhost ~]# 另外可以使用 whereis 的指令,不但連所在目錄也能查到還包含說明檔的位址。 [root@localhost ~]# whereis ifconfig ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz [root@localhost ~]#
  24. 32 Linux 情境二十九: 小明發現 which 或 whereis 都只能找到執行檔,現在想要找檔案時該用什麼指令? 解析: 想找檔案時用

    locate 會比較方便。 [root@localhost ~]# locate fax.txt 因為 locate 是從 Linux 建立的索引檔去尋找,因此有時會發生找不到東西的情況,這個時候必需先 用 updatedb 這個指令更新索引檔,請注意! updatedb 這個指令必需為 root 才能使用。 [root@localhost ~]# updatedb
  25. 33 Linux 情境三十: 小明現在想幫家人弄一個新的帳號,現在該怎麼做才能新增使用者? 解析: 要新增使用者直接使用 useradd , useradd 這個指令只有

    root 可以執行。 [root@localhost ~]# useradd someone 加上 -m 參數在建立帳號時會一起建立該使用者的家目錄。 [root@localhost ~]# useradd -m someone 加上 -M 參數在建立帳號時不會建立該使用者的家目錄。 [root@localhost ~]# useradd -M someone
  26. 34 Linux 情境三十一: 小明幫弟弟弄了一個新的帳號,但是弟弟的帳號無法登入,現在發生什麼事情了? 解析: 新增帳號後必需先幫該帳號設定密碼 , 如果沒有設密碼就算帳號新增沒問題一樣無法做登入的動 入,現在使用 passwd

    來修改帳號的密碼。 如果 passwd 後面沒有加上帳號則是修改自己的密碼,而且只有 root 可以修改其它帳號的密碼。 [root@localhost ~]# passwd 在 passwd 後面加上要修改密碼的帳號。 [root@localhost ~]# passwd someone
  27. 35 Linux 情境三十二: 小明的弟弟要期未考了,為了避免弟弟一直玩電腦不唸書,小明想讓弟弟先別玩電腦,但用說的都 沒有用,在 Linux 有沒有什麼強制的做法? 解析: 同樣使用 passwd

    這個指令可以先將某一個帳號凍結起來不能登入或是解凍。 加上 -l 參數可以將帳號凍結。 [root@localhost ~]# passwd -l someone 加上 -u 參數可以將帳號解凍。 [root@localhost ~]# passwd -u someone
  28. 37 Linux 情境三十四: 小明現在幫弟弟建立了一些檔案和目錄,但是這些檔案和目錄的擁有者都是小明,結果弟弟在使用 上很不方便,該如何將擁有者改為小明的弟弟? 解析: 要修改擁有者則使用 chown 。 [root@localhost

    ~]# chown -R someone file 加上 -R 參數可以連目錄裡面的檔案與子目錄一起修改。 [root@localhost ~]# chown someone file chown someone file [ 指令 ]   [ 擁有者 ]   [ 檔案 ]
  29. 38 Linux 情境三十五: 小明想要把一些檔案和目錄開出來給別的使用者用,但是別的使用者都一直出現沒有權限的錯誤訊 息,小明該怎麼做才能修改權限? 解析: 修改權限的指令為 chmod 。 [root@localhost

    ~]# chmod -R 755 file 加上 -r 參數可以連目錄裡面的檔案與子目錄一起修改。 [root@localhost ~]# chmod 755 file chmod 755 file [ 指令 ]   [ 權限 ]   [ 檔案 ]
  30. 39 Linux 情境三十六: 小明在整理電腦上的檔案,但有些檔案太大了浪費不少硬碟空間,在 Windows 上有很多的壓縮軟 體,那麼在 Linux 有沒有相關的壓縮軟體? 解析:

    Linux 上有很多壓縮檔案的指令,基本上 Linux 安裝好後一定會有,常見的 bzip2 。 [root@localhost ~]# bzip2 -d file -z 的參數是將檔案壓縮的參數。 -d 則是解壓縮。 [root@localhost ~]# bzip2 -z file -k 參數可以保留壓縮的檔案。 [root@localhost ~]# bzip2 -zk file -1~9 可以選擇壓縮效果,數字越大壓縮效果越好但也越花時間。 [root@localhost ~]# bzip2 -z9 file
  31. 40 Linux 情境三十七: 小明想將出去玩的照片壓縮起來方便整理,但是 bzip2 似乎無法壓縮目錄或是大量的檔案,現在 小明該怎麼做? 解析: 可以使用 tar

    來打包大量的檔案。 也可以將 -j 參數改成 -z 改用 gzip 的方式壓縮。 [root@localhost ~]# tar -cjvf files.tar.bz2 files tar -cjvf files.tar.bz2 files [ 指令 ]   [ 參數 ]   [ 壓縮後的檔名 ]   [ 要壓縮的檔案或目錄 ] [root@localhost ~]# tar -czvf files.tar.gz files 要解壓縮則是將 -c 改成 -x 。 [root@localhost ~]# tar -xjvf files.tar.bz2
  32. 41 Linux 情境三十八: 小明聽說 Linux 有個很可靠的男人,只要指令不會用都可以問他,那麼這個男人到底是誰? 解析: 其實所謂的男人就是 man 這個指令,是

    manual 的縮寫,也就是說明啦,透過 man 可以查詢指 令的說明檔。 除了 man 之外也可以在指令後面加上 --help 看指令的說明。 [root@localhost ~]# man ls [root@localhost ~]# ls --help
  33. 42 Linux 情境三十九: 小明現在想編輯一些設定檔,但是在 Linux 該如何做文字的編輯? 解析: Vi 是在 Linux

    中最多人在使用的文字編輯器,只要是裝 Linux 的電腦基乎都可以看到它存在,而且 可以直接在終端機上面使用,就算電腦沒裝 X Window 也沒問題。 直接輸入 vi 就可以進入 VI 編輯器。 vi 後面加上檔案名稱則是開啟該檔,如果檔案不存在則會在存檔時建立該檔。 [root@localhost ~]# vi file.txt [root@localhost ~]# vi
  34. 43 Linux 情境四十: 小明一進到 VI 就傻掉了,完全不知道該怎麼操作, VI 到底該如何使用? 解析: VI

    有分成三種模式 1. 一般模式: 一般模式下無法編輯文件,但可以做刪除或是複製貼上。 2. 編輯模式 在編輯模式下可以修改文件的內容。 3. 命令模式 想將檔案存檔或是離開編輯時必需在命令模式。
  35. 44 Linux 在 VI 想移動游標可以使用鍵盤的↑ (k) 、↓ (j) 、← (h)

    、→ (l) 來移動。 要切換到編輯模式可用以下的方式 i :從游標目前所在位址開始插入。 I :從游標目前所在行的第一個字開始插入。 a :從游標目前所在的下一個字開始插入。 A :從游標目前所在行的最後一個字開始插入。 o :在游標目前所在行的上方插入新的一行。 O :在游標目前所在行的下方插入新的一行。 r :取代游標目前所在位址的文字。 R :切換成取代編輯直到按下 ESC 。 從編輯模式切回一般模式則按下 ESC 。
  36. 45 Linux 而在一般模式下也有非常多好用的指令。 x :刪除游標右邊的字。 X :刪除游標左邊的字。 Nx :刪除游標右邊 N

    個字。 NX :刪除游標左邊 N 個字。 dd :將游標目前所在行刪除。 Ndd :將游標目前所在行開始往下刪除 N 行。 yy :將游標所在行複製下來。 Nyy :將游標目前所在行開始往下複製 N 行。 p :將複製的東西貼到游標目前所在行的上一行。 P :將複製的東西貼到游標目前所在行的下一行。
  37. 46 Linux 情境四十一: 小明想把修改完的設定檔存檔或是離開 VI 該怎麼做? 解析: 不論是想存檔或是想離開 VI 都必需在命令模式,所以要先按

    ESC 切換。 在命令模式下輸入: :w :存檔。 :w filename :檔案另存新檔。 :r filename :開啟檔案。 :q :離開 VI 。 :wq :存檔後離開, w 和 q 的位址不能反過來。 :q! :不儲存離開。 :set nu :顯視行數。 :set nonu :取消行數顯視。 :set nu! :取消行數顯視的另一種方式。
  38. 47 Linux 情境四十二: 小明發現在有一個程式好像當掉了不會動,在 Windows 底下可以呼叫出工作管理員強制關掉,但 是 Linux 該怎麼處理? 解析:

    可以使用 ps aux 先找出該程式的 PID 再使用 kill 指令關閉。 [root@localhost ~]# ps aux | grep firefox [root@localhost ~]# kill 6567
  39. 48 Linux 情境四十三: 小明現在想在 /etc/passwd 裡面找到某個帳號,有沒有什麼方式可以讓小明很快的找到? 解析: 可以用 grep 尋找特定的文字。

    [root@localhost ~]# grep 'root' passwd 加上 -n 參數可以顯示行數。 [root@localhost ~]# grep -n 'root' passwd 加上 -v 參數可以過濾指定的文字。 [root@localhost ~]# grep -v 'root' passwd