Error de FTP al cambiar de directorio


0

Estoy tratando de transferir archivos de Windows a un servidor vsFTPd que se ejecuta en Linux. Puedo transferir archivos con éxito al directorio de inicio, pero cuando cambio el directorio, aparece un error. A continuación hay una transcripción que demuestra el problema.

C:\>ftp
ftp> open 10.50.0.21
Connected to 10.50.0.21.
220 (vsFTPd 2.0.5)
User (10.50.0.21:(none)): user1
331 Please specify the password.
Password:
230 Login successful.

ftp> put D:/rez2g.ahk
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 2401 bytes sent in 0.00Seconds 2401000.00Kbytes/sec.

ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
apache-tomcat-6.0.29
rez2g.ahk
victor.war
226 Directory send OK.
ftp: 48 bytes received in 0.00Seconds 48000.00Kbytes/sec.

ftp> cd 1/
250 Directory successfully changed.
ftp> pwd
257 "/home/user1/1"

ftp> put D:/rez2g.ahk
200 PORT command successful. Consider using PASV.
553 Could not create file.

Respuestas:


1

Ha habido un viejo problema con SELINUX que no permitía a los usuarios de FTP escribir en sus rutas de inicio.
Por lo que he visto, puede solucionarlo de dos maneras:

[1] Desactive selinux (no recomendado para el entorno de producción)

[2] ejecute el siguiente comando como root (preferido):

setsebool -P ftp_home_dir=1

Editar:
¿Puede asegurarse de que write_enable=YESse agrega en /etc/vsftpd/vsftpd.conf?

Edición 2:
me encontré con varias otras cosas que pueden ser un problema, pero que son bastante fáciles de verificar: el
archivo ya existe, pero no tiene permisos para sobrescribirlo El
disco está lleno (o se ha alcanzado la cuota)

Además, esto puede ser un problema extraño de umask, con la anulación de vsftp. ¿Son las carpetas que creas 644?
Para user1 user, ¿cuál es la salida del umaskcomando?


ejecuté el comando anterior y luego
ejecuté

@vinod Edité la publicación. Algo tonto cruzó mi mente, pero es demasiado obvio y, por lo tanto, bastante fácil de supervisar :-)
extremko

en / etc no tengo vsftpd.conf. Tengo el archivo .conf en la ubicación "/ etc / vsftpd" cuando lo cambié también produce el mismo error
vinod

@vinod Cometí un error, tienes razón. Debería ser /etc/vsftpd/vsftpd.conf
extremko

la salida para desenmascarar es 0002
vinod
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.