Documentation/Maemo PC Connectivity Tutorial/File Sharing

(categorize)
(wikify slightly)
Line 1: Line 1:
-
= File Sharing =
+
== Disk mounting ==
-
 
+
-
= Disk mounting =
+
Maemo PC Connectivity provides some tools for easily sharing files between a Maemo device and a host PC. You can can mount the file system of a Maemo device to the host PC over a network and interact with it as it is a local disk. Also, it is possible to mount a file system of a host PC to the Maemo device. For that, you have to install Maemo PC Connectivity on the Maemo device and Host PC Connectivity on the host PC (Linux, Windows and Mac OS X).
Maemo PC Connectivity provides some tools for easily sharing files between a Maemo device and a host PC. You can can mount the file system of a Maemo device to the host PC over a network and interact with it as it is a local disk. Also, it is possible to mount a file system of a host PC to the Maemo device. For that, you have to install Maemo PC Connectivity on the Maemo device and Host PC Connectivity on the host PC (Linux, Windows and Mac OS X).
Line 9: Line 7:
The recommended tools and methods to mount the file system of a Maemo device to a host PC are listed in table 6.1.
The recommended tools and methods to mount the file system of a Maemo device to a host PC are listed in table 6.1.
-
 
+
{| class="wikitable"
-
 
+
-
 
+
-
 
+
-
{| border="1" cellpadding="3"
+
|+ '''Table 6.1:''' Recommended mount tools for PC
|+ '''Table 6.1:''' Recommended mount tools for PC
|-
|-
-
| align="CENTER" |
+
|
-
| align="CENTER" | Linux
+
! Linux
-
| align="CENTER" | Windows
+
! Windows
-
| align="CENTER" | Mac OS
+
! Mac OS
|-
|-
-
| align="CENTER" | SSHFS
+
! SSHFS
-
| align="CENTER" | X
+
| X
-
| align="CENTER" |
+
|
-
| align="CENTER" | X
+
| X
|-
|-
-
| align="CENTER" | NFS
+
! NFS
-
| align="CENTER" | X
+
| X
-
| align="CENTER" |
+
|
-
| align="CENTER" | X
+
| X
|-
|-
-
| align="CENTER" | SAMBA
+
! SAMBA
-
| align="CENTER" | X
+
| X
-
| align="CENTER" | X
+
| X
-
| align="CENTER" | X
+
| X
|}
|}
-
 
-
 
The recommended tools and methods to mount the file system of a host PC to a Maemo device are listed in table 6.2.
The recommended tools and methods to mount the file system of a host PC to a Maemo device are listed in table 6.2.
-
 
+
{| class="wikitable"
-
 
+
-
 
+
-
 
+
-
{| border="1" cellpadding="3"
+
|+ '''Table 6.2:''' Recommended mount tools for Maemo device
|+ '''Table 6.2:''' Recommended mount tools for Maemo device
|-
|-
-
| align="CENTER" |
+
|
-
| align="CENTER" | Linux
+
! Linux
-
| align="CENTER" | Windows
+
! Windows
-
| align="CENTER" | Mac OS
+
! Mac OS
|-
|-
-
| align="CENTER" | SSHFS
+
! SSHFS
-
| align="CENTER" | X
+
| X
-
| align="CENTER" |
+
|
-
| align="CENTER" | X
+
| X
|-
|-
-
| align="CENTER" | NFS
+
! NFS
-
| align="CENTER" | X
+
| X
-
| align="CENTER" |
+
|
-
| align="CENTER" |
+
|
|-
|-
-
| align="CENTER" | SAMBA
+
! SAMBA
-
| align="CENTER" | X
+
| X
-
| align="CENTER" | X
+
| X
-
| align="CENTER" | X
+
| X
|}
|}
-
 
-
 
On the host PC, you must type the commands below in the terminal on Linux and Mac OS X and in the Cygwin command shell on Windows.
On the host PC, you must type the commands below in the terminal on Linux and Mac OS X and in the Cygwin command shell on Windows.
-
== Using SSHFS mounts ==
+
=== Using SSHFS mounts ===
SSHFS (SSH File System) is a file system client based on the SSH protocol. It allows users to mount locally a remote file system via SSH. With SSHFS, you can remotely access the Maemo device file system from the host PC and vice versa.
SSHFS (SSH File System) is a file system client based on the SSH protocol. It allows users to mount locally a remote file system via SSH. With SSHFS, you can remotely access the Maemo device file system from the host PC and vice versa.
Line 103: Line 89:
If you want to mount the host PC file system to your Maemo device, you can execute the following commands:
If you want to mount the host PC file system to your Maemo device, you can execute the following commands:
-
$ mkdir ~/hostpc
+
<pre>
-
$ sshfs &lt;host_pc_user&gt;@&lt;host_pc_ip&gt;:/ ~/hostpc -o rw,nonempty
+
$ mkdir ~/hostpc
-
  &lt;host_pc_user&gt;@&lt;host_pc_ip&gt;'s password: &lt;type user password here&gt;
+
$ sshfs <host_pc_user>@<host_pc_ip>:/ ~/hostpc -o rw,nonempty
 +
  <host_pc_user>@<host_pc_ip>'s password: <type user password here>
 +
</pre>
-
As SSHFS is a user mode file system, you cannot use the standard Linux <span><font face="monospace">mount</font></span> command directly. For example, you should execute the following command to unmount the Maemo device file system from the host PC.
+
As SSHFS is a user mode file system, you cannot use the standard Linux <code>mount</code> command directly. For example, you should execute the following command to unmount the Maemo device file system from the host PC.
  $ fusermount -u ~/maemo
  $ fusermount -u ~/maemo
Line 113: Line 101:
You can configure SSH to use keys and not to ask for a password every time by exchanging the SSH keys as described in the SSH installation chapter.
You can configure SSH to use keys and not to ask for a password every time by exchanging the SSH keys as described in the SSH installation chapter.
-
== Using NFS mounts ==
+
=== Using NFS mounts ===
With NFS (Network File System), you can share folders from your Maemo device or host PC over a network. Below are instructions on how to share a folder from a Maemo device using NFS.
With NFS (Network File System), you can share folders from your Maemo device or host PC over a network. Below are instructions on how to share a folder from a Maemo device using NFS.
-
=== Configuring NFS for Maemo device ===
+
==== Configuring NFS for Maemo device ====
You should follow these steps to share a folder from your Maemo device through NFS using Maemo PC Connectivity configuration widget:
You should follow these steps to share a folder from your Maemo device through NFS using Maemo PC Connectivity configuration widget:
Line 127: Line 115:
* Click on the '''Exported Paths''' button. Then add the folders to be shared, figure [[#fig:pc_connectivity_mpc_maemo_nm_nfs_folders|6.2]].
* Click on the '''Exported Paths''' button. Then add the folders to be shared, figure [[#fig:pc_connectivity_mpc_maemo_nm_nfs_folders|6.2]].
* Click on the '''Allowed IPs''' button. Then add the host PC's IP addresses that are allowed to access the shared folders, figure [[#fig:pc_connectivity_mpc_maemo_nm_nfs_ips|6.3]].
* Click on the '''Allowed IPs''' button. Then add the host PC's IP addresses that are allowed to access the shared folders, figure [[#fig:pc_connectivity_mpc_maemo_nm_nfs_ips|6.3]].
-
 
-
 
{| summary="PC Connectivity Manager - NFS option"
{| summary="PC Connectivity Manager - NFS option"
Line 136: Line 122:
[[Image:mpc_maemo_nm_nfs.png|Image mpc_maemo_nm_nfs]]
[[Image:mpc_maemo_nm_nfs.png|Image mpc_maemo_nm_nfs]]
|}
|}
-
 
-
 
-
 
-
 
{| summary="PC Connectivity Manager - Shared folders list"
{| summary="PC Connectivity Manager - Shared folders list"
Line 147: Line 129:
[[Image:mpc_maemo_nm_nfs_folders.png|Image mpc_maemo_nm_nfs_folders]]
[[Image:mpc_maemo_nm_nfs_folders.png|Image mpc_maemo_nm_nfs_folders]]
|}
|}
-
 
-
 
-
 
-
 
{| summary="PC Connectivity Manager - Allowed IPs list"
{| summary="PC Connectivity Manager - Allowed IPs list"
Line 159: Line 137:
|}
|}
 +
If you want, you can share a folder from your Maemo device manually. The following steps describe how to share the folder (<code>/home/user/MyDocs</code>) from a Maemo device over a network by giving access to the host PC IP address (<code>192.168.2.14</code>).
-
 
+
Connect to the Maemo device via <code>SSH</code>. Edit the file <code>/etc/exports</code> and add the folder you want to share and set the permissions of your shares (IP addresses).
-
If you want, you can share a folder from your Maemo device manually. The following steps describe how to share the folder (<span><font face="monospace">/home/user/MyDocs</font></span>) from a Maemo device over a network by giving access to the host PC IP address (<span><font face="monospace">192.168.2.14</font></span>).
+
-
 
+
-
Connect to the Maemo device via <span><font face="monospace">SSH</font></span>. Edit the file <span><font face="monospace">/etc/exports</font></span> and add the folder you want to share and set the permissions of your shares (IP addresses).
+
  /home/user/MyDocs 192.168.2.14(rw,no_root_squash,async,no_subtree_check)
  /home/user/MyDocs 192.168.2.14(rw,no_root_squash,async,no_subtree_check)
Line 171: Line 147:
  $ /etc/init.d/unfs3 restart
  $ /etc/init.d/unfs3 restart
-
=== Configuring NFS for host PC ===
+
==== Configuring NFS for host PC ====
-
You must follows these steps to share a folder from a host PC over a network and giving access to it for Maemo device's IP address (<span><font face="monospace">192.168.2.15</font></span>):
+
You must follows these steps to share a folder from a host PC over a network and giving access to it for Maemo device's IP address (<code>192.168.2.15</code>):
{|
{|
Line 181: Line 157:
|}
|}
-
Edit the file <span><font face="monospace">/etc/exports</font></span> and add the folder you want to share and set the permissions for your shares (IP addresses).
+
Edit the file <code>/etc/exports</code> and add the folder you want to share and set the permissions for your shares (IP addresses).
  /home/&lt;host_pc_user&gt; 192.168.2.15(rw,no_root_squash,async,no_subtree_check)
  /home/&lt;host_pc_user&gt; 192.168.2.15(rw,no_root_squash,async,no_subtree_check)
Line 189: Line 165:
  $ sudo /etc/init.d/unfs3 restart
  $ sudo /etc/init.d/unfs3 restart
-
=== Accessing NFS shares with Maemo device ===
+
==== Accessing NFS shares with Maemo device ====
Once you configured NFS on your Maemo device, you can access the shared folders from your host PC over the network. Below are instructions on how to access the shared NFS folders from the Linux host PC.
Once you configured NFS on your Maemo device, you can access the shared folders from your host PC over the network. Below are instructions on how to access the shared NFS folders from the Linux host PC.
-
On the host PC, run the <span><font face="monospace">showmount</font></span> command to check if NFS sharing is working.
+
On the host PC, run the <code>showmount</code> command to check if NFS sharing is working.
-
$ showmount -e &lt;device_ip&gt;
+
<pre>
-
Export list for 192.168.2.15:
+
$ showmount -e <device_ip>
-
/home/user/MyDocs 192.168.2.14
+
Export list for 192.168.2.15:
 +
/home/user/MyDocs 192.168.2.14
 +
</pre>
Next mount the exported Maemo device folder from the host PC.
Next mount the exported Maemo device folder from the host PC.
-
$ mkdir /tmp/MyDocs
+
<pre>
-
$ sudo mount -t nfs &lt;device_ip&gt;:/home/user/MyDocs /tmp/MyDocs
+
$ mkdir /tmp/MyDocs
 +
$ sudo mount -t nfs <device_ip>:/home/user/MyDocs /tmp/MyDocs
 +
</pre>
You can unmount the same folder with the following command:
You can unmount the same folder with the following command:
Line 208: Line 188:
  $ sudo umount /tmp/MyDocs
  $ sudo umount /tmp/MyDocs
-
=== Accessing NFS shares with Host PC ===
+
==== Accessing NFS shares with Host PC ====
Once you have configured NFS on your host PC, you can access the shared folders from your Maemo device over a network. Below are instructions on how to access the shared NFS folders from your Maemo device.
Once you have configured NFS on your host PC, you can access the shared folders from your Maemo device over a network. Below are instructions on how to access the shared NFS folders from your Maemo device.
Line 214: Line 194:
On the Maemo device mount the shared host PC folder.
On the Maemo device mount the shared host PC folder.
-
$ mkdir ~/hostpc
+
<pre>
-
$ mount -t nfs &lt;host_pc_ip&gt;:/home/&lt;host_pc_user&gt; ~/hostpc
+
$ mkdir ~/hostpc
 +
$ mount -t nfs <host_pc_ip>:/home/<host_pc_user> ~/hostpc
 +
</pre>
You can unmount the same folder with the following command:
You can unmount the same folder with the following command:
Line 221: Line 203:
  $ sudo umount ~/hostpc
  $ sudo umount ~/hostpc
-
== Using Samba mounts ==
+
=== Using Samba mounts ===
Samba allows file sharing between computers over the network. With Samba, you can remotely access the Maemo device file system from the host PC and vice versa. Once you have shared your file system through Samba, it is available every time you reconnect to the network.
Samba allows file sharing between computers over the network. With Samba, you can remotely access the Maemo device file system from the host PC and vice versa. Once you have shared your file system through Samba, it is available every time you reconnect to the network.
Line 231: Line 213:
|}
|}
-
=== Configuring Samba for Maemo device ===
+
==== Configuring Samba for Maemo device ====
To be able to share a folder from your Maemo device, you should follow these steps.
To be able to share a folder from your Maemo device, you should follow these steps.
Line 241: Line 223:
* Click on the '''Exported Paths''' button. Then add the folders to be shared, figure [[#fig:pc_connectivity_mpc_maemo_nm_samba_paths|6.5]].
* Click on the '''Exported Paths''' button. Then add the folders to be shared, figure [[#fig:pc_connectivity_mpc_maemo_nm_samba_paths|6.5]].
* Click on the '''Apply''' button.
* Click on the '''Apply''' button.
-
 
-
 
{| summary="PC Connectivity Manager - Samba options"
{| summary="PC Connectivity Manager - Samba options"
Line 250: Line 230:
[[Image:mpc_maemo_nm_samba.png|Image mpc_maemo_nm_samba]]
[[Image:mpc_maemo_nm_samba.png|Image mpc_maemo_nm_samba]]
|}
|}
-
 
-
 
-
 
-
 
{| summary="PC Connectivity Manager - Samba shared folders"
{| summary="PC Connectivity Manager - Samba shared folders"
Line 261: Line 237:
[[Image:mpc_maemo_nm_samba_paths.png|Image mpc_maemo_nm_samba_paths]]
[[Image:mpc_maemo_nm_samba_paths.png|Image mpc_maemo_nm_samba_paths]]
|}
|}
-
 
-
 
You can access your host PC shared folders from your Maemo device.
You can access your host PC shared folders from your Maemo device.
Line 269: Line 243:
* Click on the '''Shared folders''' option, figure [[#fig:pc_connectivity_mpc_maemo_nm_samba_access|6.6]].
* Click on the '''Shared folders''' option, figure [[#fig:pc_connectivity_mpc_maemo_nm_samba_access|6.6]].
* Select the desired shared folder.
* Select the desired shared folder.
-
 
-
 
{| summary="PC Connectivity Manager - Shared folders dialog"
{| summary="PC Connectivity Manager - Shared folders dialog"
Line 279: Line 251:
|}
|}
-
 
+
==== Configuring Samba for Linux ====
-
 
+
-
=== Configuring Samba for Linux ===
+
To be able to share a folder from your Linux host PC, you should follow these steps:
To be able to share a folder from your Linux host PC, you should follow these steps:
Line 289: Line 259:
* Type the '''Share name''' and check the '''Guest access''' option, figure [[#fig:pc_connectivity_mpc_linux_ubuntu_samba_share|6.7]].
* Type the '''Share name''' and check the '''Guest access''' option, figure [[#fig:pc_connectivity_mpc_linux_ubuntu_samba_share|6.7]].
* Click on the '''Create share''' button.
* Click on the '''Create share''' button.
-
 
-
 
{| summary="Linux folder sharing"
{| summary="Linux folder sharing"
Line 299: Line 267:
|}
|}
-
 
+
If <code>Samba</code> is not installed, Ubuntu requests the installation at this point. Otherwise, you can install <code>Samba</code> manually.
-
 
+
-
If <span><font face="monospace">Samba</font></span> is not installed, Ubuntu requests the installation at this point. Otherwise, you can install <span><font face="monospace">Samba</font></span> manually.
+
  $ sudo apt-get install samba
  $ sudo apt-get install samba
Line 307: Line 273:
To access a shared folder from the Maemo device using your Windows host PC.
To access a shared folder from the Maemo device using your Windows host PC.
-
* Open the File Manager (Nautilus) and type: <span><font face="monospace">smb://&lt;maemo_device_ip&gt;</font></span>, figure [[#fig:pc_connectivity_mpc_linux_ubuntu_samba_access|6.8]].
+
* Open the File Manager (Nautilus) and type: <code>smb://&lt;maemo_device_ip&gt;</code>, figure [[#fig:pc_connectivity_mpc_linux_ubuntu_samba_access|6.8]].
* Press '''Enter'''.
* Press '''Enter'''.
-
 
-
 
{| summary="Accessing shared folder with Final Manager"
{| summary="Accessing shared folder with Final Manager"
Line 319: Line 283:
|}
|}
-
 
+
==== Configuring Samba for Windows ====
-
 
+
-
=== Configuring Samba for Windows ===
+
To be able to share a folder from your Windows host PC, you should follow these steps.
To be able to share a folder from your Windows host PC, you should follow these steps.
Line 333: Line 295:
* Click '''Start''', and then click '''Run'''.
* Click '''Start''', and then click '''Run'''.
-
* Type your Maemo device IP address as follows: <span><font face="monospace">&lt;maemo_device_ip&gt;</font></span>.
+
* Type your Maemo device IP address as follows: <code>&lt;maemo_device_ip&gt;</code>.
* The shared folders of your Maemo device are shown.
* The shared folders of your Maemo device are shown.
-
=== Configuring Samba for Mac OS X ===
+
==== Configuring Samba for Mac OS X ====
To be able to share a folder from your Mac OS X host PC, you should follow these steps:
To be able to share a folder from your Mac OS X host PC, you should follow these steps:
Line 343: Line 305:
* Select the '''File Sharing''' service.
* Select the '''File Sharing''' service.
* Add a folder you want to share, and then set the permissions for it, figure [[#fig:pc_connectivity_mpc_mac_samba_share|6.9]].
* Add a folder you want to share, and then set the permissions for it, figure [[#fig:pc_connectivity_mpc_mac_samba_share|6.9]].
-
 
-
 
{| summary="Mac OS X Sharing dialog"
{| summary="Mac OS X Sharing dialog"
Line 352: Line 312:
[[Image:mpc_mac_samba_share.png|Image mpc_mac_samba_share]]
[[Image:mpc_mac_samba_share.png|Image mpc_mac_samba_share]]
|}
|}
-
 
-
 
To access a folder shared from a Maemo device you need to do following on your Mac OS X host PC.
To access a folder shared from a Maemo device you need to do following on your Mac OS X host PC.
Line 359: Line 317:
* Go to the File Manager application ('''Finder''').
* Go to the File Manager application ('''Finder''').
* With the '''Finder''' open, click on the '''Go''' menu and select the '''Connect to Server''' option.
* With the '''Finder''' open, click on the '''Go''' menu and select the '''Connect to Server''' option.
-
* Type your Maemo device IP address as follows: <span><font face="monospace">smb://&lt;maemo_device_ip&gt;</font></span>, figure [[#fig:pc_connectivity_mpc_mac_samba_access|6.10]].
+
* Type your Maemo device IP address as follows: <code>smb://&lt;maemo_device_ip&gt;</code>, figure [[#fig:pc_connectivity_mpc_mac_samba_access|6.10]].
* Click on the '''Connect''' button.
* Click on the '''Connect''' button.
-
 
-
 
{| summary="Mac OS X connect to server dialog"
{| summary="Mac OS X connect to server dialog"
Line 371: Line 327:
|}
|}
-
 
+
== File transfer ==
-
 
+
-
= File transfer =
+
You have several different ways to transfer files between a Maemo device and a host PC using tools provided by Maemo PC Connectivity. First, you have to install Maemo PC Connectivity to the Maemo device and Host PC Connectivity to the host PC (Linux, Windows and Mac OS X). Below describes how to use specific file transfer tools available from the Maemo PC Connectivity product. To simplify the process, it has been assumed that you already have a working USB network configured between the Maemo device and host PC.
You have several different ways to transfer files between a Maemo device and a host PC using tools provided by Maemo PC Connectivity. First, you have to install Maemo PC Connectivity to the Maemo device and Host PC Connectivity to the host PC (Linux, Windows and Mac OS X). Below describes how to use specific file transfer tools available from the Maemo PC Connectivity product. To simplify the process, it has been assumed that you already have a working USB network configured between the Maemo device and host PC.
Line 379: Line 333:
On the host PC, you must type the commands below using terminal on Linux and Mac OS and using Cygwin command shell on Windows.
On the host PC, you must type the commands below using terminal on Linux and Mac OS and using Cygwin command shell on Windows.
-
== Using SCP ==
+
=== Using SCP ===
With SCP (Secure Copy), you can securely transfer files between a local and a remote host or between two remote hosts, using the SSH protocol. Below describes in detail how to transfer files between the Maemo device and host PC using SCP.
With SCP (Secure Copy), you can securely transfer files between a local and a remote host or between two remote hosts, using the SSH protocol. Below describes in detail how to transfer files between the Maemo device and host PC using SCP.
Line 387: Line 341:
  $ scp &lt;source_file&gt; &lt;user&gt;@&lt;host_name&gt;:&lt;path&gt;/&lt;target_file&gt;
  $ scp &lt;source_file&gt; &lt;user&gt;@&lt;host_name&gt;:&lt;path&gt;/&lt;target_file&gt;
-
For example, if you want to transfer a file called <span><font face="monospace">file.txt</font></span> from a host PC to a Maemo device, you should use this command on the host PC:
+
For example, if you want to transfer a file called <code>file.txt</code> from a host PC to a Maemo device, you should use this command on the host PC:
  $ scp file.txt root@192.168.2.15:/etc/file.txt
  $ scp file.txt root@192.168.2.15:/etc/file.txt
Line 395: Line 349:
  $ scp &lt;user&gt;@&lt;host_name&gt;:&lt;path&gt;/&lt;source_file&gt; &lt;target_file&gt;
  $ scp &lt;user&gt;@&lt;host_name&gt;:&lt;path&gt;/&lt;source_file&gt; &lt;target_file&gt;
-
For example, if you want to transfer a file called <span><font face="monospace">file.txt</font></span> from a Maemo device to a host PC, you should use this command on host PC:
+
For example, if you want to transfer a file called <code>file.txt</code> from a Maemo device to a host PC, you should use this command on host PC:
  $ scp root@192.168.2.15:/etc/file.txt file.txt
  $ scp root@192.168.2.15:/etc/file.txt file.txt
-
You can use <span><font face="monospace">ssh-key-exchange</font></span> as described in the SSH installation chapter to avoid SSH requiring a password every time.
+
You can use <code>ssh-key-exchange</codde> as described in the SSH installation chapter to avoid SSH requiring a password every time.
-
== Using SFTP ==
+
=== Using SFTP ===
After Maemo PC Connectivity has been installed to the Maemo device, your Maemo device folders can be accessed from a host PC using the SFTP client. If you also installed Host PC Connectivity your host PC already has a GUI-based SFTP client, FileZilla, installed. Therefore to access your Maemo device folders from the host PC through SFTP, simply follow these steps.
After Maemo PC Connectivity has been installed to the Maemo device, your Maemo device folders can be accessed from a host PC using the SFTP client. If you also installed Host PC Connectivity your host PC already has a GUI-based SFTP client, FileZilla, installed. Therefore to access your Maemo device folders from the host PC through SFTP, simply follow these steps.
Line 410: Line 364:
* Windows: '''Start - Programs - FileZilla FTP Client - FileZilla'''.
* Windows: '''Start - Programs - FileZilla FTP Client - FileZilla'''.
* Mac OS: '''/Applications/FileZilla'''.
* Mac OS: '''/Applications/FileZilla'''.
-
 
-
 
{| summary="FileZilla FTP Client"
{| summary="FileZilla FTP Client"
Line 419: Line 371:
[[Image:mpc_sftp.png|Image mpc_sftp]]
[[Image:mpc_sftp.png|Image mpc_sftp]]
|}
|}
-
 
-
 
* Type the IP address of your Maemo device in the '''Host''' field.
* Type the IP address of your Maemo device in the '''Host''' field.
Line 426: Line 376:
* Click on the '''Quickconnect''' button. Your Maemo device folders will appear in the '''Remote Site''' area.
* Click on the '''Quickconnect''' button. Your Maemo device folders will appear in the '''Remote Site''' area.
-
== Using Rsync ==
+
=== Using Rsync ===
As Maemo PC Connectivity and Host PC Connectivity products installs Rsync for your environment, you can incrementally transfer files and directories between a Maemo device and a host PC. You can send and receive files in such a way that only the changed bytes inside files are copied between the Maemo device and the host PC. Rsync also removes files from target folders if those files were deleted from the source folders in order to keep both folders in sync. You can find usage examples and documentation about Rsync from the [http://rsync.samba.org/ Rsync web page].
As Maemo PC Connectivity and Host PC Connectivity products installs Rsync for your environment, you can incrementally transfer files and directories between a Maemo device and a host PC. You can send and receive files in such a way that only the changed bytes inside files are copied between the Maemo device and the host PC. Rsync also removes files from target folders if those files were deleted from the source folders in order to keep both folders in sync. You can find usage examples and documentation about Rsync from the [http://rsync.samba.org/ Rsync web page].

Revision as of 14:06, 19 October 2010

Contents

Disk mounting

Maemo PC Connectivity provides some tools for easily sharing files between a Maemo device and a host PC. You can can mount the file system of a Maemo device to the host PC over a network and interact with it as it is a local disk. Also, it is possible to mount a file system of a host PC to the Maemo device. For that, you have to install Maemo PC Connectivity on the Maemo device and Host PC Connectivity on the host PC (Linux, Windows and Mac OS X).

This chapter describes how to use the disk mounting tools available with Maemo PC Connectivity. To simplify the process, it is assumed that you already have a working USB network between your Maemo device and the host PC.

The recommended tools and methods to mount the file system of a Maemo device to a host PC are listed in table 6.1.

Table 6.1: Recommended mount tools for PC
Linux Windows Mac OS
SSHFS X X
NFS X X
SAMBA X X X

The recommended tools and methods to mount the file system of a host PC to a Maemo device are listed in table 6.2.

Table 6.2: Recommended mount tools for Maemo device
Linux Windows Mac OS
SSHFS X X
NFS X
SAMBA X X X

On the host PC, you must type the commands below in the terminal on Linux and Mac OS X and in the Cygwin command shell on Windows.

Using SSHFS mounts

SSHFS (SSH File System) is a file system client based on the SSH protocol. It allows users to mount locally a remote file system via SSH. With SSHFS, you can remotely access the Maemo device file system from the host PC and vice versa.

File:Dialog-information.png Note: SSHFS mounts do not work on Windows host PC.

If you want to mount the Maemo device file system to your host PC, you can execute the following commands.

$ mkdir ~/maemo
$ sshfs user@192.168.2.15:/ ~/maemo -o rw,nonempty
user@192.168.2.15's password: <type user password here>

If you did not set the SSH password for user yet, you can use the root account. You should set up the password for the user account by following these steps:

$ ssh root@192.168.2.15
root@192.168.2.15's password: <type root password here>
Nokia-810:~# passwd user
Changing password for user
Enter the new password (minimum of 5, maximum of 8 characters)
Please use a combination of upper and lower case letters and numbers.
New password: <type new user password here>
Re-enter new password: <retype user password>
Password changed

If you want to mount the host PC file system to your Maemo device, you can execute the following commands:

$ mkdir ~/hostpc
$ sshfs <host_pc_user>@<host_pc_ip>:/ ~/hostpc -o rw,nonempty
 <host_pc_user>@<host_pc_ip>'s password: <type user password here>

As SSHFS is a user mode file system, you cannot use the standard Linux mount command directly. For example, you should execute the following command to unmount the Maemo device file system from the host PC.

$ fusermount -u ~/maemo

You can configure SSH to use keys and not to ask for a password every time by exchanging the SSH keys as described in the SSH installation chapter.

Using NFS mounts

With NFS (Network File System), you can share folders from your Maemo device or host PC over a network. Below are instructions on how to share a folder from a Maemo device using NFS.

Configuring NFS for Maemo device

You should follow these steps to share a folder from your Maemo device through NFS using Maemo PC Connectivity configuration widget:

  • Run Settings - Control Panel - Connectivity - PC Connectivity Manager.
  • Click on the Advanced button.
  • Go to the Tool Manager tab.
  • Select the NFS option. After that, change the options according to your needs, figure 6.1.
  • Click on the Exported Paths button. Then add the folders to be shared, figure 6.2.
  • Click on the Allowed IPs button. Then add the host PC's IP addresses that are allowed to access the shared folders, figure 6.3.
Figure 6.1: PC Connectivity Manager - NFS option

File:Mpc maemo nm nfs.png

Figure 6.2: PC Connectivity Manager - Shared folders list

File:Mpc maemo nm nfs folders.png

Figure 6.3: PC Connectivity Manager - Allowed IPs list

File:Mpc maemo nm nfs ips.png

If you want, you can share a folder from your Maemo device manually. The following steps describe how to share the folder (/home/user/MyDocs) from a Maemo device over a network by giving access to the host PC IP address (192.168.2.14).

Connect to the Maemo device via SSH. Edit the file /etc/exports and add the folder you want to share and set the permissions of your shares (IP addresses).

/home/user/MyDocs 192.168.2.14(rw,no_root_squash,async,no_subtree_check)

Next restart the User Mode NFS server:

$ /etc/init.d/unfs3 restart

Configuring NFS for host PC

You must follows these steps to share a folder from a host PC over a network and giving access to it for Maemo device's IP address (192.168.2.15):

File:Dialog-information.png Note: NFS mounts do not work on Windows host PC.

Edit the file /etc/exports and add the folder you want to share and set the permissions for your shares (IP addresses).

/home/<host_pc_user> 192.168.2.15(rw,no_root_squash,async,no_subtree_check)

Next restart the User Mode NFS server:

$ sudo /etc/init.d/unfs3 restart

Accessing NFS shares with Maemo device

Once you configured NFS on your Maemo device, you can access the shared folders from your host PC over the network. Below are instructions on how to access the shared NFS folders from the Linux host PC.

On the host PC, run the showmount command to check if NFS sharing is working.

$ showmount -e <device_ip>
Export list for 192.168.2.15:
/home/user/MyDocs 192.168.2.14

Next mount the exported Maemo device folder from the host PC.

$ mkdir /tmp/MyDocs
$ sudo mount -t nfs <device_ip>:/home/user/MyDocs /tmp/MyDocs

You can unmount the same folder with the following command:

$ sudo umount /tmp/MyDocs

Accessing NFS shares with Host PC

Once you have configured NFS on your host PC, you can access the shared folders from your Maemo device over a network. Below are instructions on how to access the shared NFS folders from your Maemo device.

On the Maemo device mount the shared host PC folder.

$ mkdir ~/hostpc
$ mount -t nfs <host_pc_ip>:/home/<host_pc_user> ~/hostpc

You can unmount the same folder with the following command:

$ sudo umount ~/hostpc

Using Samba mounts

Samba allows file sharing between computers over the network. With Samba, you can remotely access the Maemo device file system from the host PC and vice versa. Once you have shared your file system through Samba, it is available every time you reconnect to the network.

File:Dialog-information.png Note: Samba does not work on Maemo Fremantle devices such as N900 but works fine with Maemo Diablo devices such as N800 and N810.

Configuring Samba for Maemo device

To be able to share a folder from your Maemo device, you should follow these steps.

  • Run Settings - Control Panel - Connectivity - PC Connectivity Manager.
  • Click on the Advanced button.
  • Go to the Tool Manager tab.
  • Select the Samba option. After that, change the options according to your needs (Workgroup, User and Password), figure 6.4.
  • Click on the Exported Paths button. Then add the folders to be shared, figure 6.5.
  • Click on the Apply button.
Figure 6.4: PC Connectivity Manager - Samba options

File:Mpc maemo nm samba.png

Figure 6.5: PC Connectivity Manager - Samba shared folders

File:Mpc maemo nm samba paths.png

You can access your host PC shared folders from your Maemo device.

  • Open the Utilities - File Manager application.
  • Click on the Shared folders option, figure 6.6.
  • Select the desired shared folder.
Figure 6.6: PC Connectivity Manager - Shared folders dialog

File:Mpc maemo nm samba access.png

Configuring Samba for Linux

To be able to share a folder from your Linux host PC, you should follow these steps:

  • Open the File Manager (Nautilus).
  • Right click the folder you want to share, and select Sharing options.
  • Type the Share name and check the Guest access option, figure 6.7.
  • Click on the Create share button.
Figure 6.7: Linux folder sharing

File:Mpc linux ubuntu samba share.png

If Samba is not installed, Ubuntu requests the installation at this point. Otherwise, you can install Samba manually.

$ sudo apt-get install samba

To access a shared folder from the Maemo device using your Windows host PC.

  • Open the File Manager (Nautilus) and type: smb://<maemo_device_ip>, figure 6.8.
  • Press Enter.
Figure 6.8: Accessing shared folder with Final Manager

File:Mpc linux ubuntu samba access.png

Configuring Samba for Windows

To be able to share a folder from your Windows host PC, you should follow these steps.

  • Open the File Manager (Windows Explorer).
  • Right click the appropriate folder, and then click Sharing.
  • In the folder's properties, click Share this folder. Use the default name for the share.
  • Click the Permissions button to change permissions according to your needs.

To access a folder shared from your Maemo device, you need to do the following on your Windows host PC:

  • Click Start, and then click Run.
  • Type your Maemo device IP address as follows: <maemo_device_ip>.
  • The shared folders of your Maemo device are shown.

Configuring Samba for Mac OS X

To be able to share a folder from your Mac OS X host PC, you should follow these steps:

  • Go to System Preferences and click on the Sharing icon.
  • Select the File Sharing service.
  • Add a folder you want to share, and then set the permissions for it, figure 6.9.
Figure 6.9: Mac OS X Sharing dialog

File:Mpc mac samba share.png

To access a folder shared from a Maemo device you need to do following on your Mac OS X host PC.

  • Go to the File Manager application (Finder).
  • With the Finder open, click on the Go menu and select the Connect to Server option.
  • Type your Maemo device IP address as follows: smb://<maemo_device_ip>, figure 6.10.
  • Click on the Connect button.
Figure 6.10: Mac OS X connect to server dialog

File:Mpc mac samba access.png

File transfer

You have several different ways to transfer files between a Maemo device and a host PC using tools provided by Maemo PC Connectivity. First, you have to install Maemo PC Connectivity to the Maemo device and Host PC Connectivity to the host PC (Linux, Windows and Mac OS X). Below describes how to use specific file transfer tools available from the Maemo PC Connectivity product. To simplify the process, it has been assumed that you already have a working USB network configured between the Maemo device and host PC.

On the host PC, you must type the commands below using terminal on Linux and Mac OS and using Cygwin command shell on Windows.

Using SCP

With SCP (Secure Copy), you can securely transfer files between a local and a remote host or between two remote hosts, using the SSH protocol. Below describes in detail how to transfer files between the Maemo device and host PC using SCP.

You should follow the SCP command examples below to transfer files from a local to a remote host:

$ scp <source_file> <user>@<host_name>:<path>/<target_file>

For example, if you want to transfer a file called file.txt from a host PC to a Maemo device, you should use this command on the host PC:

$ scp file.txt root@192.168.2.15:/etc/file.txt

You should follow this SCP command example to transfer files from a remote to a local host:

$ scp <user>@<host_name>:<path>/<source_file> <target_file>

For example, if you want to transfer a file called file.txt from a Maemo device to a host PC, you should use this command on host PC:

$ scp root@192.168.2.15:/etc/file.txt file.txt

You can use ssh-key-exchange</codde> as described in the SSH installation chapter to avoid SSH requiring a password every time.

Using SFTP

After Maemo PC Connectivity has been installed to the Maemo device, your Maemo device folders can be accessed from a host PC using the SFTP client. If you also installed Host PC Connectivity your host PC already has a GUI-based SFTP client, FileZilla, installed. Therefore to access your Maemo device folders from the host PC through SFTP, simply follow these steps.

Run the FileZilla client, figure 6.11.

  • Linux - Ubuntu: Applications - Internet - FileZilla FTP Client.
  • Windows: Start - Programs - FileZilla FTP Client - FileZilla.
  • Mac OS: /Applications/FileZilla.
Figure 6.11: FileZilla FTP Client

File:Mpc sftp.png

  • Type the IP address of your Maemo device in the Host field.
  • Type your Username and Password to set up the SSH connection on your Maemo device and type 22 (for SSH) in the Port field.
  • Click on the Quickconnect button. Your Maemo device folders will appear in the Remote Site area.

Using Rsync

As Maemo PC Connectivity and Host PC Connectivity products installs Rsync for your environment, you can incrementally transfer files and directories between a Maemo device and a host PC. You can send and receive files in such a way that only the changed bytes inside files are copied between the Maemo device and the host PC. Rsync also removes files from target folders if those files were deleted from the source folders in order to keep both folders in sync. You can find usage examples and documentation about Rsync from the Rsync web page.

Rsync is a much more powerful tool than standard SCP, SFTP or disk mounts to back up or synchronise large files (such as music, pictures, maps and movies) between a Maemo device and a host PC.

File:Dialog-information.png Note: Rsync protocol is also used by several backup and file synchronisation services available from the Internet.