In linux is possible to mounting network drive by FTP with fuse and curlftps. Here the step to install.
Install fuse utils with yum command
yum install fuse-utils
Install CurlFTPfs via rpm. You can get RPM of CurlFTPfs from http://pkgs.repoforge.org/fuse-curlftpfs/ . In this case, we want to install in CentOS 6.x with 64 bit arch, so we use the fuse-curlftpfs-0.9.1-1.el6.rf.x86_64.rpm file.
rpm -Uvh http://pkgs.repoforge.org/fuse-curlftpfs/fuse-curlftpfs-0.9.1-1.el6.rf.x86_64.rpm
Installation finish!. Now, let’s configure mounting network drive. In this case, we have ftp server with this detail;
FTP Server : ftpserver.ssh9.com
Username : ftpusername
Password : ftppassword
And we want mounting to /disk1 in localserver.
Create directory disk1 ;
mkdir disk1
Now, Mounting it.
curlftpfs -v -o allow_other -o user="ftpusername:ftppassword" ftpserver.ssh9.com disk1/
Check mounting will work ;
cd /disk1 ls -l
Try to copy some file to directory /disk1, and check the ftp server.
Here the Option for curlftpfs
ftpfs_debug print some debugging information transform_symlinks prepend mountpoint to absolute symlink targets disable_epsv use PASV, without trying EPSV first skip_pasv_ip skip the IP address for PASV ftp_port=STR use PORT with address instead of PASV disable_eprt use PORT, without trying EPRT first tcp_nodelay use the TCP_NODELAY option connect_timeout=N maximum time allowed for connection in seconds ssl enable SSL/TLS for both control and data connections ssl_control enable SSL/TLS only for control connection ssl_try try SSL/TLS first but connect anyway no_verify_hostname does not verify the hostname (SSL) no_verify_peer does not verify the peer (SSL) cert=STR client certificate file (SSL) cert_type=STR certificate file type (DER/PEM/ENG) (SSL) key=STR private key file name (SSL) key_type=STR private key file type (DER/PEM/ENG) (SSL) pass=STR pass phrase for the private key (SSL) engine=STR crypto engine to use (SSL) cacert=STR file with CA certificates to verify the peer (SSL) capath=STR CA directory to verify peer against (SSL) ciphers=STR SSL ciphers to use (SSL) interface=STR specify network interface/address to use krb4=STR enable krb4 with specified security level proxy=STR use host:port HTTP proxy proxytunnel operate through a HTTP proxy tunnel (using CONNECT) proxy_anyauth pick "any" proxy authentication method proxy_basic use Basic authentication on the proxy proxy_digest use Digest authentication on the proxy proxy_ntlm use NTLM authentication on the proxy httpproxy use a HTTP proxy (default) socks4 use a SOCKS4 proxy socks5 use a SOCKS5 proxy user=STR set server user and password proxy_user=STR set proxy user and password tlsv1 use TLSv1 (SSL) sslv3 use SSLv3 (SSL) ipv4 resolve name to IPv4 address ipv6 resolve name to IPv6 address utf8 try to transfer file list with utf-8 encoding codepage=STR set the codepage the server uses iocharset=STR set the charset used by the client
And there is Fuse Option’s
-d -o debug enable debug output (implies -f) -f foreground operation -s disable multi-threaded operation -o allow_other allow access to other users -o allow_root allow access to root -o nonempty allow mounts over non-empty file/dir -o default_permissions enable permission checking by kernel -o fsname=NAME set filesystem name -o subtype=NAME set filesystem type -o large_read issue large read requests (2.4 only) -o max_read=N set maximum size of read requests -o hard_remove immediate removal (don't hide files) -o use_ino let filesystem set inode numbers -o readdir_ino try to fill in d_ino in readdir -o direct_io use direct I/O -o kernel_cache cache files in kernel -o [no]auto_cache enable caching based on modification times (off) -o umask=M set file permissions (octal) -o uid=N set file owner -o gid=N set file group -o entry_timeout=T cache timeout for names (1.0s) -o negative_timeout=T cache timeout for deleted names (0.0s) -o attr_timeout=T cache timeout for attributes (1.0s) -o ac_attr_timeout=T auto cache timeout for attributes (attr_timeout) -o intr allow requests to be interrupted -o intr_signal=NUM signal to send on interrupt (10) -o modules=M1[:M2...] names of modules to push onto filesystem stack -o max_write=N set maximum size of write requests -o max_readahead=N set maximum readahead -o async_read perform reads asynchronously (default) -o sync_read perform reads synchronously -o atomic_o_trunc enable atomic open+truncate support -o big_writes enable larger than 4kB writes -o no_remote_lock disable remote file locking