Linuxでサービスを開始すると、ファイルは存在するが、「そのようなファイルまたはディレクトリはありません」というエラーが表示される

Windowsでスタートアップファイルを編集し、Linuxサーバーにアップロードしました。ファイルはディレクトリ内にありましたが、起動すると「そのようなファイルまたはディレクトリはありません」というメッセージが表示されました。スタートアップファイルの内容を何度も確認しましたが、特に問題は見つかりませんでした。問題は改行文字にあることが判明しました。

Windowsでスタートアップファイルを編集し、アップロードします。サーバーをインストールした後、ファイルはディレクトリ内に確かに存在していたのですが、ファイルを起動すると「そのようなファイルまたはディレクトリはありません」というメッセージが表示されました。起動ファイルの内容を繰り返し確認しましたが、何も問題はありませんでした。問題は優れた。
次のコマンドラインを入力します。

/etc/init.d/v2ray を cat する

各行の後に ^M 記号があることに気づくでしょう。これらは復帰文字です。
Linuxシステムは、Windowsで編集されたスクリプトをシェルスクリプトとして正しく読み取れない場合があります。これは、Windowsではキャリッジリターン文字+を使用するため、テキストエディタやターミナルでWindows上でファイルを作成した際に発生する可能性があります。Linux システムは改行文字のみを使用しますが、改行文字として使用されます。
initスクリプトから改行を削除します。これは1行のsedで実行できます。

sed -i -e 's/\r//g' /etc/init.d/v2ray

復帰文字を削除すると、サービスを正常に開始できます。

スコア

手紙への返信

メールアドレスが変更されることはありません。 支払い欄に必須の項目は必須です