When it comes to FTP clients, there’s no shortage of choices available on Ubuntu 20.04 Focal Fossa. Variety is nice, but it makes it a little more challenging to select the very best tool for the job. We hope to make that decision easier for you in this guide as we look at some of the most popular FTP clients available and compare their features.
Selecting an FTP client can depend on many factors, especially since some only support basic FTP functionality and other clients may support additional protocols such as SFTP, SMB, AFP, DAV, SSH, FTPS, NFS, etc. Whatever your requirements may be, you’ll be able to make an informed decision after reading our breakdown of the different software.
In this tutorial you will learn:
- How to install and use various FTP clients
Category | Requirements, Conventions or Software Version Used |
---|---|
System | Installed Ubuntu 20.04 or upgraded Ubuntu 20.04 Focal Fossa |
Software | Nautilus, FileZilla, gFTP, Krusader, Konqueror, ftp, NcFTP, LFTP |
Other | Privileged access to your Linux system as root or via the sudo command. |
Conventions |
# – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command$ – requires given linux commands to be executed as a regular non-privileged user |
Nautilus
Nautilus is probably the most obvious go-to choice for basic FTP functions on Ubuntu because it should already be installed – that is, if you’re using the default Ubuntu 20.04 Focal Fossa GNOME desktop.
Nautilus isn’t just an FTP client, it’s GNOME’s default file manager. Connecting to a server from within your file manager is very convenient, plus it supports “drag and drop” functionality, making it very intuitive to work with.
In case Nautilus isn’t already installed, or if you’d just like to update it, open a terminal and run the following commands:
$ sudo apt update $ sudo apt install nautilus
You can open Nautilus by hitting the Files
icon on your dock bar or finding the App inside Ubuntu’s applications launcher.
Alternatively, you can always open it from a terminal window with this command:
$ nautilus
To initiate a new FTP connection, you need to click on “Other Locations” on the left side of the window, and then enter the server information in the “Connect to Server” dialog box.
You can always click on the little question mark to remind yourself of the correct syntax. You’ll always need to enter the IP address or hostname of the server, while preceeding it with the protocol you are using to connect. So, to connect to host linuxconfig.org over FTP, you’d enter:
ftp://linuxconfig.org
Hit “Connect” and you’ll be asked to enter your FTP credentials. For public FTP servers, you can choose to login anonymously. Enter your credentials to authenticate with the remote server and have full access right from within Nautilus:
FileZilla
FileZilla is a well-known and popular choice for FTP and SFTP because it’s rich in features and capable of being used as a general file manager. To install FileZilla, open a terminal and type this command:
$ sudo apt install filezilla
When it has finished installing, you can open it in the application launcher or type the following command in a terminal:
$ filezilla
The interface is pretty straightforward and intuitive. You can enter the hostname or IP address of the FTP server and the requisite credentials near the top of the screen and then click “Quickconnect.” If you have multiple servers that you log into often, FileZilla can save these settings for you inside the site manager (pictured below). This makes future connections pretty slick, and you can have simultaneous connections open in different tabs.
Once you become more familiar with FileZilla, check out the settings menu where you can fine-tune the software’s extensive set of features.
gFTP
gFTP excels at being a lightweight and simple FTP client for Ubuntu 20.04. Although it has a fair amount of features, its simple interface makes it pleasing to use. You can install gFTP on your system by typing this command in terminal:
$ sudo apt install gftp
After it has finished installing, find it from inside the applications laucher or just open the program from terminal with this command:
$ gftp
gFTP is incredibly simple, but that doesn’t mean it’s devoid of extra features. Just check out the settings menu to see all the underlying components it’s packing, including support for a number of network protocols:
Krusader
Krusader is another great contender for FTP clients. It’s a Swiss knife for managing files and comes with tools for every occasion. By default, it only supports the FTP protocol, but you can extend its support to SFTP and other network protocols by installing the kio-extras
package.
Krusader relies on services provided by the KDE Frameworks base libraries. If you are using a KDE desktop environment on your system, these libraries will already be installed. Otherwise, if you’re using GNOME or some other desktop manager, expect the install to be a bit larger since these extra packages will also be downloaded during installation.
Install Krusader and its extra support package by executing this command in a terminal window:
$ sudo apt install krusader kio-extras
Once Krusader has finished installing, open it in the applications launcher or with this command in terminal:
$ krusader
Krusader will do some initial configuration since this is the first time it’s being run on your system. Click through these menus and you’ll be brought to the FTP client interface. Navigate to Tools > New Net Connection
to create a new FTP connection, or just press Ctrl+N
on your keyboard:
Enter your host info and credentials here, then click connect.
Konqueror
Konqueror is the default file manager in KDE Plasma desktop environment. Like Nautilus, it still works well as an FTP client, even on GNOME. You can install it with this command:
$ sudo apt install konqueror
After installation, open Konqueror through the applications launcher or via terminal with this command:
$ konqueror
The correct syntax for connecting to an FTP server is to use this format: ftp://username:password@FTP-SERVER-HOST-OR-IP
It can’t get much simpler than just entering all the relevant info on a single line. This is where Konqueror feels awfully convenient.
ftp
If you aren’t using any GUI on your system, as is the case with most Ubuntu servers, ftp
is a great command line option that should already be installed on your system. Being that it’s command line only, you can use it to script out and automate many file management tasks. In case you need to install or update it, enter:
$ sudo apt install ftp
Inside a terminal window, create an FTP connection with the following syntax: ftp FTP-SERVER-HOST-OR-IP
. Once prompted, enter your user name and password.
For more information about what commands you can use with ftp
and what it can do, check out the man page:
$ man ftp
NcFTP
NcFTP is another command line option but it offers some additional features and greater ease of use than the built-in ftp
program. So, use this if you’re looking for an alternative. Install NcFTP with the following command:
$ sudo apt install ncftp
To establish a new FTP connection with NcFTP, use the following syntax: ncftp -u USERNAME FTP-SERVER-HOST-OR-IP
.
For a complete list of functions and usage syntax, enter:
$ man ncftp
LFTP
Looking for a feature-rich, command line FTP client? LFTP is what you want. It’s the perfect compromise for command line gurus, since it has a ton of the features you’d normally find in GUI clients, yet allows you to utilize them from the command line. The man page alone contains over 2100 lines of information about what it can do. To install it, type the following command:
$ sudo apt install lftp
The basic command syntax for opening a new FTP connection is: lftp USERNAME@FTP-SERVER-HOST-OR-IP
.
To check out what else LFTP can do, we’d recommend perusing the man page:
$ man lftp
Conclusion
In this article, we learned about some of the many options available for FTP clients on Ubuntu 20.04 Focal Fossa. Whatever your particular needs may be, one of the choices presented here will surely do the job. Whether you need a graphical interface or a command line tool, a feature-rich or a decidedly simple client, this article covers an extensive selection.