118 lines
4.5 KiB
Markdown
118 lines
4.5 KiB
Markdown
---
|
|
title: Mount a Raspi with Ubuntu
|
|
layout: post
|
|
date: 2017-03-01
|
|
permalink: mount-a-raspi-with-ubuntu/
|
|
excerpt: How to connect to your Raspberry Pi over an Ethernet cable.
|
|
---
|
|
|
|
This post describes how to connect to your Raspberry Pi using the SSHFS (SSH File System) protocol over an Ethernet
|
|
cable.
|
|
This will allow you to edit files on the Raspberry Pi from a text editor in Ubuntu.
|
|
|
|
All instructions are to be executed from your computer, not from your Raspi, unless noted otherwise.
|
|
|
|
Section 1 describes the required one-time configuration.
|
|
Section 2 describes how to mount the Raspi for the current
|
|
session.
|
|
Section 3 describes how to automount the Raspi.
|
|
|
|
----------
|
|
|
|
## 1 Installation
|
|
This section describes the instructions to be performed before trying to connect to your Raspi.
|
|
You will only have to follow these instructions once.
|
|
|
|
0. Make sure SSH is enabled on your Raspi.
|
|
If it isn't, follow [⎋ this guide](https://www.raspberrypi.org/documentation/remote-access/ssh/).
|
|
1. Install the necessary packages.
|
|
|
|
$ sudo apt update && sudo apt upgrade
|
|
$ sudo apt install network-manager nmap sshfs
|
|
|
|
2. Configure the packages.
|
|
1. Open the file `/etc/fuse.conf` with `sudo` in your editor of choice.
|
|
2. Remove the `#` in the line `#user_allow_other`.
|
|
3. Create a directory in which you will later mount the Raspi.
|
|
|
|
$ sudo mkdir /mnt/raspi
|
|
|
|
4. Connect to your Raspi.
|
|
1. Plug the Ethernet cable into your Raspi and into your computer.
|
|
2. Open the program **Network Connections**.
|
|
3. Find the Wired connection for your Raspi. Click **Edit**.
|
|
4. Go to the tab **IPv4 Settings**. Set the **Method** to **Shared to other computers**.
|
|
5. Save your changes, and close Network Connections.
|
|
5. Reboot your computer.
|
|
|
|
----------
|
|
|
|
## 2 Connecting
|
|
These are the instructions for connecting to your Raspi.
|
|
You will have to repeat these instructions after each reboot, unless you follow the instructions in Section 3.
|
|
Note that only those blocks that begin with `$` are expected input.
|
|
Example output will be given directly after it in a separate code block.
|
|
|
|
0. Find the broadcast address of the Ethernet connection.
|
|
|
|
$ /sbin/ifconfig enp0s25 | grep "Bcast" | awk -F: '{print $3}' | awk '{print $1}'
|
|
10.42.0.255/24
|
|
|
|
1. Use the broadcast address to find the IP address of the Raspi.
|
|
Add the `/24` part to the IP address, even if it was not returned during the previous step.
|
|
The last IP address displayed in the output is the address of your Raspi.
|
|
|
|
$ nmap -n -sP 10.42.0.255/24
|
|
Starting Nmap 7.01 ( https://nmap.org ) at 2017-03-01 21:42 CET Nmap scan report for 10.42.0.1
|
|
Host is up (0.00036s latency).
|
|
Nmap scan report for 10.42.0.140
|
|
Host is up (0.0010s latency).
|
|
Nmap done: 256 IP addresses (2 hosts up) scanned in 2.41 seconds
|
|
|
|
2. Mount the Raspi with SSHFS. Replace the IP address in the command with the one you found in the previous step.
|
|
|
|
$ sshfs -o allow_other,default_permissions pi@10.42.0.140:/ /mnt/raspi
|
|
|
|
3. Enjoy!
|
|
|
|
### Disconnecting
|
|
To unmount the Raspi:
|
|
|
|
$ umount /mnt/raspi
|
|
|
|
If you are unable to unmount because you receive errors on input/output errors, try:
|
|
|
|
$ sudo umount -l /mnt/raspi
|
|
|
|
----------
|
|
|
|
## 3 Auto-mounting
|
|
I would recommend trying out the instructions in Section 2 before the instructions in this section.
|
|
Some information you will gather in Section 2 is necessary in this section.
|
|
Because it is possible that the IP address of the Raspi changes, you may need to reconfigure the auto-mounting at some
|
|
point.
|
|
|
|
0. Log in as root: `sudo -i`.
|
|
1. If you do not have a key pair yet, generate one.
|
|
You can generate it wherever you want.
|
|
If you don't know if you have a key pair, enter this command anyway and it will warn you that you have on already.
|
|
|
|
$ ssh-keygen -t rsa
|
|
|
|
2. Copy the public key of the Raspi to the key pair.
|
|
Replace the IP in the command with the one you found in part 2.
|
|
|
|
$ ssh-copy-id pi@10.42.0.140
|
|
|
|
3. Verify that you do not need to enter your password when you use `ssh pi@10.42.0.140`.
|
|
4. Open the file `/etc/fstab` in your editor of choice.
|
|
5. Add the following to the bottom of the file (this is **one** line):
|
|
|
|
pi@10.42.0.140:/ /mnt/raspi fuse.sshfs allow_other,_netdev
|
|
|
|
If you decided in step 1 not to save the key pair in the default location, add `,IdentityFile=<file to key pair>`
|
|
at the end of the line.
|
|
|
|
7. Reboot your computer to verify that this works as intended.
|
|
Note that using `sudo mount -a` is **not** the same as rebooting.
|