上傳或下載檔案通常都會另外安裝 FTP 軟體,不過這個方法不需要裝東西,因為我懶得裝東西所以我更喜歡用這個方式傳檔案
在開始之前先調整一下權限,昨天那個方法比較像是應急,正常來說會設定一個權限群組,然後把目錄的群組改成這個,還有把使用者加入到群組裡,每個人都有自己的帳號,最小範圍的開放權限
首先要新增群組,Linux 中新增群組的指令是 groupadd {名稱}
,我想新增一個專門用來修改這個網站的群組,所以就叫做 2023ironman
sudo groupadd 2023ironman
輸入 cat /etc/group
查看群組列表,看看有沒有建立成功
在最底下出現了 2023ironman
接下來是把使用者加入到群組的指令 usermod -aG {群組名稱} {使用者名稱}
sudo usermod -aG 2023ironman admin
再來一次 cat /etc/group
看看有沒有加入成功
2023ironman 後面多了 admin,看來是加入進去了
最後是把 /var/www/html/
的群組權限改掉,修改資料夾的群組權限是 chgrp -R {群組名稱} {資料夾目錄}
sudo chgrp -R 2023ironman /var/www/html/
輸入 ls -al /var/www/html/
來看看權限有沒有變成 2023ironman
差點忘了還要改讀寫權限,左邊中間三個字元是群組的讀寫權限,現在是 -xr
表示只有讀取和執行權限,現在的權限是 755,要把它改成 775,輸入 sudo chmod -R 775 /var/www/html/
再來一次 ls -al /var/www/html/
看看有沒有修改成功
現在就可以建立新的檔案或資料夾了~
回到本機,新增一個資料夾 about,並且在裡面放一個 index.html 檔案
about
└─ index.html
上傳檔案的指令
scp {本機檔案路徑} user@host:{遠端檔案目錄}
上傳目錄的指令
scp -r {本機目錄路徑} user@host:{遠端檔案目錄(路徑不包含要傳目錄)}
現在我要將 about 整個目錄上傳到 /var/www/html/
,所以指令是以下這樣
scp -r about/ 2023ironman:/var/www/html/
瞬間就傳完了,連線進去看看確實傳上來了呢
然後就發現這個權限不對阿,不是應該要是 root 2023ironman 嗎,這樣其他在 2023ironman 的使用者就改不了這個資料夾了欸
所以上傳完記得要把權限改成對的,$_
表示最後使用過的參數
sudo chown -R root:2023ironman /var/www/html/ && sudo chmod -R 775 $_
這樣就完成啦
下載也很簡單,反過來寫就可以了
下載檔案的指令
scp user@host:{遠端檔案路徑} {本機檔案目錄}
下載目錄的指令
scp -r user@host:{遠端檔案目錄} {本機目錄路徑(路徑不包含要傳目錄)}
來試試下載 about 資料夾
scp -r 2023ironman:/var/www/html/about/ .
看起來沒甚麼問題,順利下載成功