Linux ルート サーバーの 2 番目の HDD にファイルをアップロードする方法

Linux ルート サーバーの 2 番目の HDD にファイルをアップロードする方法

これは非常に簡単な質問だとはわかっていますが、2 台の 4TB HDD を搭載したかなり大きなサーバーの使用は初めてなので、それについて多くのことを学びたいと思っています。

cron として実行される PHP スクリプトがあります。スクリプトは、FTP サーバーからファイルをダウンロードし、そのファイルをサーバー上の特定のフォルダーに配置するシェル コマンド (aria2c) を呼び出します。これは数か月前から正常に動作しています。サーバー上のファイルは、ユーザーがダウンロードできる必要があります。

しかし、今度はファイル用のスペースを増やすために 2 台目の HDD をマウントしました。ご覧のとおり、マウントは成功しました。

2 日前、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" という名前のディレクトリにファイルをダウンロードしていることがわかります。メイン HDD "/" にあると思います。"df" コマンドを実行して、2 番目の HDD がマウントされている場所を確認し、出力パスを次のように変更します。

/media/HDD2/files/$remfile

答え2

エラーのリストを確認した後、問題の解決策を見つけました。

  1. 2番目のHDDへのパスは次のとおりです。 /mnt/ディスク1(ヒントをくれたNIZに感謝します)
  2. このディレクトリをオープンベースディレクトリの中にphp.iniのように:[その他のディレクトリ]:/mnt/disk1
  3. シェルでログインしてメートルdir. dir disk1を書き込み可能にする。例:sudo chmod 777 ディスク1
  4. test.txtを書いてfopen("/mnt/disk1/text.txt");
  5. test.txt ファイルは、絶対パス「/mnt/disk1/test.txt」を含むダウンロード スクリプトを使用してダウンロードできるようになりました。

同じ問題に直面している方々のお役に立てれば幸いです。

関連情報