在Day 23:偉大的隱藏者.GPIO和電路板中,你是一個大學生。而你的大學室友們打算拉你一起偷偷潛入女生宿舍送宵夜。你跟眼鏡仔一起破解女生宿舍的門禁系統,但眼鏡仔出包了,還觸發了門禁系統的保護機制──女生宿舍的GPIO迷宮。你也知道了GPIO就是General Purpose Input/Output的縮寫,就是通用輸入輸出接腳的意思。
而眼鏡仔也想出辦法:找到這個房間隱藏的電路板,之後再用它來欺騙門禁系統,讓門禁系統以為你們是合法的使用者,這樣你們就可以逃出去了。
你、眼鏡仔、毛帽哥三人開始分開找線索,結果你在化妝包裡找到一個口紅USB。你們把它插到電腦上,然後在Terminal輸入lsblk
指令,看系統的裝置,他發現有一個叫做sda
的裝置。裡面有三個檔案。
你們把口紅USB插到電腦上,眼鏡仔在Terminal輸入
lsblk
指令,看系統的裝置。接著,他發現有一個叫做sda
的裝置,還有一個分割區sda1
,掛載點是/media/pi/LIPSTICK
。
「為什麼要輸入lsblk
指令?」你問眼鏡仔。
「lsblk
指令就是一種查看電腦裡有哪些儲存裝置的文字命令。」眼鏡仔解釋。
「sda
的裝置?分割區sda1
?這些是什麼?」毛帽哥也湊過來看。
「sda
的裝置、分割區sda1
就是表示電腦硬碟的名稱和位置的文字代號。字母s
表示這是一個SATA或SCSI類型的硬碟,數字a
表示這是第一顆硬碟。如果有第二顆硬碟,它的名稱就會是sdb
。」眼鏡仔繼續解釋,「sda1
的意思就是──這是屬於sda
硬碟的第一個分割區。」
「那/media/pi/LIPSTICK
呢?那是什麼?」毛帽哥又問。
「那是掛載點
。掛載點
是一個目錄,就像是一個門牌號碼一樣,讓我們可以找到硬碟或分割區上的資料。」眼鏡仔繼續解釋,「掛載點通常是一個斜線後面加上一個/多個單字。」
說完,眼鏡仔接著在Terminal中輸入
cd/media/pi/LIPSTICK
,切換到口紅的分割區。然後他輸入ls-l
指令,列出該目錄下所有檔案的權限。接著,你們看到畫面顯示,口紅USB中有三個檔案。
rw-r--r-- 1 pi pi 1024 Oct 9 22:40 welcome.txt
-rw-r--r-- 1 pi pi 2048 Oct 9 22:41 myraspberry.jpg
-rwxr-xr-x 1 pi pi 512 Oct 9 22:42 script.py
「哇賽!你怎麼弄的?」毛帽哥驚呆了,問道:「cd/media/pi/LIPSTICK
是什麼?」
「cd/media/pi/LIPSTICK
就是要進入到掛載點的目錄,我們可以用cd
指令來切換工作目錄。」眼鏡仔說,「像我剛才輸入的cd/media/pi/LIPSTICK
,就表示把工作目錄切換到/media/pi/LIPSTICK
目錄下,讓我們可以在那裡執行其他指令或操作檔案。」
「那ls-l
指令呢?那是幹嘛的?」你問。
「ls-l
指令是一種讓電腦詳細列出目錄中的檔案和子目錄的指令。」眼鏡仔解釋,「它可以顯示每個檔案和子目錄的詳細資訊,協助管理和操作這些檔案和子目錄。」
「那這三行一大串英文的東西又是什麼?」你們繼續用問題轟炸眼鏡仔。
「代表這裡有三個檔案。」眼鏡男說,「一個是note.txt
,一個是photo.jpg
,一個是script.py
。」
「那些r
跟w
又是什麼?」
「r
跟w
就是『檔案權限』,是一種用來控制檔案存取和操作的設定。就像一個保險箱,你需要有正確的鑰匙或密碼,才能打開它。」眼鏡仔心很累,但還是繼續解釋,「而且,它可以決定誰可以對檔案做什麼事情,例如讀取r
、寫入w
、執行x
等。就像是可以決定誰可以使用你的鑰匙或密碼。」
「原來如此。」你感嘆,眼鏡仔真是人不可貌相。
「那我們現在要點開那些檔案來看看嗎?」毛帽哥提議。
「好啊,你們想先開哪個?」
「先看照片好了!說不定可以看到什麼厲害的喔!」毛帽哥不知道想到什麼,笑到口水都快流出來了。
你們點開那個myraspberry.jpg
的照片,發現這是一張大漂亮的照片,看起來很像外拍照。背景是藍天白雲,還有一輛不知道是誰的機車。不過,照片裡的她很可愛。
「喔……好可愛……我沒了……」毛帽哥看到大漂亮的照片,直接原地暈倒。
「等一下,這雙手上拿什麼……」你湊近電腦螢幕,發現原來照片裡還有一雙不知道是誰的手,拿著一串紅色的樹莓要給她。
「為什麼這個人要拿著樹莓?」眼鏡哥不懂。
「我猜……『樹莓』應該是一個提示,我們可能要找到某個像『樹莓』的東西。」你得出結論。