我知道這是一個非常簡單的問題,但我剛開始使用具有兩個 4TB HDD 的大型伺服器,我想了解更多相關知識。
我有一個作為 cron 運行的 php 腳本。該腳本呼叫 shell 命令 (aria2c),該命令從 ftp 伺服器下載檔案並將該檔案放入我的伺服器上的特定資料夾中。幾個月以來,這一直運作良好。伺服器上的檔案必須可供使用者下載。
但現在我們安裝了第二個硬碟以獲得更多的檔案空間。可以看到,掛載成功了。
兩天前,HDD1 的配額已滿,腳本拋出錯誤。到目前為止,我相信上傳會自動切換到hdd2。但這是錯誤的!我的問題就出現在這裡。如何將檔案上傳到 HDD2 並使其可供使用者下載?
我的 aria2c 上傳指令是:
aria2c --ftp-user $username --ftp-passwd $password -c -p -t 100 -s 2 --max-connection-per-server 1 --max-download-limit $speedLimit --allow-overwrite=true --file-allocation none --summary-interval 0 ftp://$server/$remfile -o files/$remfile
答案1
正如我在您的命令中看到的,您將檔案下載到名為“files”的目錄中。我想它在你的主硬碟“/”中。執行「df」指令查看第二個 HDD 的安裝位置並將輸出路徑變更為如下所示:
/media/HDD2/files/$remfile
答案2
在查看了錯誤清單後,我找到了解決問題的方法:
- 我的第二個硬碟的路徑是。 /mnt/磁碟1(感謝NIZ的提示)
- 將此目錄包含到open_basedir在裡面php.ini喜歡:[其他目錄]:/mnt/disk1
- 使用 shell 登入並轉到米恩特目錄。使 dir disk1 可寫,例如須藤 chmod 777 磁碟1
- 寫一個 test.txt 與
fopen("/mnt/disk1/text.txt");
- 現在可以使用包含絕對路徑「/mnt/disk1/test.txt」的下載腳本下載 test.txt 檔案
我希望我可以幫助任何面臨相同問題的人。