1

Vim を使用してリモート サーバー上のいくつかのファイルを編集しようとしています。過去に問題なく他のサーバーでこれを管理しましたが、この場合、次のように入力します。

$ vim ftp://username@xxxxxx.com/

パスワードの入力を求められたので入力すると、次のように表示されます。

Name (notixvalet.com:george): User cannot log in. 
Please login with USER and PASS. 
Please login with USER and PASS. 
Please login with USER and PASS. 
ftp: Login failed 

'george' は私のローカル マシン (Mac OS X 10.8) での私のユーザー名です。これをテストするために、ログインしようとしているサーバーのユーザー名と同じユーザー名で MacBook に新しいアカウントを作成し、そのアカウントから正常にログインできました。これは明らかに非常にハックなソリューションです。通常のアカウントから正しいユーザー名を使用して接続するにはどうすればよいですか?

(ちなみに、私が使用しているユーザー名とパスワードは 100% 間違いなく正しいです。それらを使用して、FileZilla などの FTP クライアントを介してサーバーに接続できます。)

4

1 に答える 1

1

リモート ファイルの編集に使用しているnetrwプラ​​グインは、コメントで Ingo が指摘したように です。プラグインのヘルプ ファイルは、 から読むことができます:h netrw。特に:

  NETRC                         *netrw-netrc*

  The <.netrc> file, typically located in your home directory, contains lines
  therein which map a hostname (machine name) to the user id and password you
  prefer to use with it.

  The typical syntax for lines in a <.netrc> file is given as shown below.
  Ftp under Unix usually supports <.netrc>; ftp under Windows usually doesn't.
  >
     machine {full machine name} login {user-id} password "{password}"
     default login {user-id} password "{password}"

  Your ftp client must handle the use of <.netrc> on its own, but if the
  <.netrc> file exists, an ftp transfer will not ask for the user-id or
  password.

     Note:
     Since this file contains passwords, make very sure nobody else can
     read this file!  Most programs will refuse to use a .netrc that is
     readable for others.  Don't forget that the system administrator can
     still read the file!  Ie. for Linux/Unix: chmod 600 .netrc

問題なく接続できる他のサーバーから ~/.netrc ファイルをコピーするのを忘れた可能性はありますか? または、最後の段落で述べたように、権限が正しくありませんか?

于 2013-06-24T16:27:54.427 に答える