Table of Contents

Linux FTP tutorial

If you use Linux on your computer, you may be disappointed that some of the recommended FTP programs are not available for Linux. However, as a Linux user you have available to you a very simple yet powerful FTP program – the “ftp” command line program.

If you don't have much terminal experience, it can seem daunting, but once you get used to it, it is actually very simple and efficient.

All you need to know about the terminal

As a Linux user you've probably used the terminal at least a little bit, but the only thing you need to know to use “ftp” is this:

Using the terminal consists of typing a command, optionally adding a space and then arguments (options for the command), and then pressing enter.

For example, cd myfolder is the command “cd” with the argument “myfolder”. As another example, ftp is simply the command “ftp” without any arguments.

Connecting to your seedbox

Firstly, to open the “ftp” interface, simply open the terminal program and run the command ftp. You should be presented with the following:

ftp>

This is the ftp prompt, which is essentially a terminal, but with only FTP-specific functionality.

The very first thing you should do is connect to your seedbox, by running open (SEEDBOX HOSTNAME) and then entering your username and password. The whole process looks something like this:

ftp> open myseedbox.xirvik.com
Connected to myseedbox.xirvik.com.
220 ProFTPD Server (myseedbox.xirvik.com) [12.34.56.78]
Name (myseedbox.xirvik.com): myusername
331 Password required for myusername
Password: (Type password here)
230 User myusername logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

There is a lot of text that appears on the screen, but the only important parts are that you type your username when it says “Name”, and your password when it says “Password”. Note that your password is not visible when you type it; this is for security.

Using the "ftp" program

You are now very close to downloading files. But first, there are a few ftp commands you should know.

Where am I?

With FTP, you always have a folder on your computer, and a folder on your seedbox, which you are currently in. lpwd (Local Print Working Directory) and pwd (Print Working Directory) show you what these folders are.

ftp> lpwd
Local directory: /home/myusername
ftp> pwd
Remote directory: /

In this example, you are currently in the folder /home/myusername on your computer, and you are in the root folder on your seedbox. (This means you have not entered any folder, and are in the default location)

How do I get in a folder?

To enter a folder, you can run lcd (Local Change Directory) or cd (Change Directory) depending on whether you want to enter a folder on your computer or the seedbox.

Note: If a folder name contains spaces you will have to put quotation marks around it, as shown in the example.

ftp> pwd
Remote Directory: /
ftp> cd "My Excellent Folder"
ftp> pwd
Remote Directory: /My Excellent Folder

How do I see my files?

Type ls (LiSt) to list the files on the seedbox, that are in your working directory.

ftp> ls
229 Entering Extended Passive Mode (|||64895|)
150 Opening ASCII mode data connection for file list
drwxrws---   2 myusername      33           4096 Aug 25 04:15 My Excellent Folder
-rw-rw----   1 myusername      33          89322 Aug 24 02:23 My Excellent File.rar
226 Transfer complete

You can tell that something is a folder if it has the “d” at the left side of the screen, which stands for “Directory”.

How can I download a file?

Finally it is time to download a file. To do so, simply run get (FILENAME).

Note: Similarly to cd and lcd, you will have to put the name in quotation marks if it has any spaces.

ftp> get "My Excellent File.rar"
local: My Excellent File.rar
229 Entering Extended Passive Mode (|||64830|)
150 Opening BINARY mode data connection for My Excellent File.rar (731785220 bytes)
  2% |*                                                           | 15151 KiB    1.13 MiB/s    10:00 ETA

You will see a progress bar, the amount that has been downloaded, the speed of the download, and the estimated time remaining in the download.

If you want to cancel a download, you can press Ctrl+C, but you may be left with an incomplete file which you will need to delete.

How can I upload a file?

Uploading is exactly the same process as downloading, but with put instead of get.

How do I get out of the ftp prompt?

Simply run the command bye and the “ftp” program will exit.