How can I connect to a server via SCP in Lubuntu 15?

381

Solution 1

If you need a SCP client with a GUI, than you could try filezilla:

sudo apt-get install filezilla

Use sftp as protocol (eg: sftp://myhost) in the Host field as Port 22

enter image description here

Solution 2

PCManFM supports mounting of network file shares.

In the main menu, select Go > Connect to Server...

Go > Connect to Server...

I'm not familiar with WinSCP, but I assume it uses SSH. To mount an SSH share, select SSH and fill in the appropriate information, including at least the host, port (if other than 22), and user.

SSH connection screen

Enter your password and how long you'd like to remain connected:

Enter password & timeout

And you're in! You can browse your files, and open/delete/edit/move them (assuming you have appropriate permissions), all within PCManFM.

Browsing Pictures on SSH mounted share in PCManFM

Solution 3

Although this has already been checked by the author, I wanted to mention a couple more choices.

First I apologize for items 5. It is command line but interesting. For your question, look at items (1), (4) and (6).

  1. pcmanfm is native to LUbuntu (since you asked about Lubuntu which I use). The answer about PCManFM is very relevant since it already incorporates the requested functionality. From its menu:

    Select "GO | Go to Location" Select ssh

To install this filemanager:

sudo apt-get install pcmanfm
  1. Nautilus file manager ships with many distros (and is popular - though not my favorite). It will do what you ask natively.

    In the left-hand pane select the Connect to Server icon. In the server address blank type ssh://server_name

It is actually using sftp (you could have typed sftp://server_name) so setting up ssh keys is recommended over passwords, but not required.

Nautilus may be installed on your distro already. If not, you can install it by:

sudo apt-get install nautilus

additionally, there are other things nautilus can do like connect to owncloud, dropbox and much more. For these two:

sudo apt-get install nautilus-owncloud
sudo apt-get install nautilus-dropbox

In general look at the list from the command apt-cache dumpavail | grep Package | grep nautilus to see how extensible it is. I note the nautilus scripting capability.

I suspect that most file managers have similar functionality.

  1. Filezilla which is extremely well explained in an answer above.

  2. gftp has gui functionality that is winscp like, as well. To install:

    sudo apt-get install gftp-gtk

  3. sftp - although not a gui it is worth mentioning. You can connect a remote file system over the commandline using sftp. By default this capability is enabled for all users in ubuntu if sftp is installed.

  4. sshfs -- then use any file manager -- my fav. Sshfs is a user space tool for mounting directories on remote servers over ssh. You do not need to be root, just create a directory in your home directory and mount to it, e.g. mkdir ~/data

Installing sshfs:

sudo apt-get install sshfs

Examples of mounting remote directories:

sshfs user@server /local/mount/point
sshfs  [email protected]:subdir/another_sub_dir  ~/data`

Browse the mounted directory with your file manager. To remove this mount:

fusermount -u /local/mount/point

Remember the local mount point (directory) must exist before you can mount on it -- just like nfs.

Finally, I'm not providing KDE programs since Ubuntu is largely a gnome based file system.

Share:
381

Related videos on Youtube

Rohan Singh
Author by

Rohan Singh

Updated on September 18, 2022

Comments

  • Rohan Singh
    Rohan Singh over 1 year

    I am using the following yaml file to build my artifacts in the dist directory and push to Heroku.

    name: Build and Deploy
    
    on:
      push:
        branches:
          - master
    
    jobs:
      build-and-deploy:
    
        runs-on: ubuntu-latest
        steps:
    
          - name: Install SSH Client
            uses: webfactory/[email protected]
            with:
              ssh-private-key: ${{ secrets.DEPLOY_KEY }}
    
          - name: Checkout
            uses: actions/checkout@master
    
          - name: Setup Node
            uses: actions/setup-node@master
            with:
              node-version: '14.x'
    
          - name: Build for production
            run: make build
    
          - name: Heroku Git Initialize
            env:
              HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }}
            run: cd dist && git init && heroku git:remote -a ${{ secrets.HEROKU_APP_NAME }}
    
          - name: Heroku Git Config
            env:
              HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }}
            run: cd dist && git config user.email "MY-EMAIL" && git config user.name "My Name"
    
          - name: Heroku Deploy
            env:
              HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }}
            run: cd dist && git add . && git commit -m "+1" && git push heroku master --force
    

    But, I get the following error on the last step git push heroku master --force.

    fatal: could not read Username for 'https://git.heroku.com': No such device or address
    Error: Process completed with exit code 128.
    

    How do I solve this issue?