File sharing

Introduction
File sharing is as essential to a human as sharing his/her real life items with others. "Sharing" has always been one of the most prominent helpful characteristics of humans. We all do it, in real life and through computers, in one form or the other.

There are many forms of sharing files using Granular and we'll try to cover all major ways of doing just that.

LAN Sharing
If you are or have been a school/college student, you will know the importance of file sharing through LAN (Local Area Network). For some students, LAN sharing is a "life saver". LAN sharing is also popular in homes which have more than one PC, or a PC and a laptop. ''' If you aren't aware of what LAN sharing is, simply put together, it is a way to transfer files between PCs connected on a LAN. PCs can be connected on a LAN either through a direct cable or through a hub/switch.

Coming to discussing the way to configuring LAN sharing, here are the steps: \\xxx.xxx.xxx.xxx For example, \\192.168.1.136. And hit "Enter".
 * Make sure you have assigned distinct IP addresses to each computer on the LAN. (In Granular, you do this by going to Granular Control Center > Network & Internet > Set up a new network interface > Ethernet. From there, choose to configure statically and enter the desired IP address in the resulting form.) Configure every other PC on the LAN accordingly, such as a Windows-based or some other Linux distro-based PC.
 * Go to Menu > System > Configuration > Control Center. There, go to Internet & Network > File Sharing and make sure that the "Enable Local Network File Sharing" option is selected. It is recommended that you choose "Simple sharing", but if you think you know enough of file sharing, go for "Advanced sharing" option.
 * In the shared folders list, add the desired folders to share. If you want to share a folder with a Windows-based PC, choose the "Samba" option, otherwise, if you are going to share with a Linux-based PC, choose the NFS option. Click "Apply" for changes to take effect.
 * Make sure that firewall is turned off on each system on the LAN.
 * If you want to access a shared folder in Granular, from some other PC, go to My Computer > Network Folders.
 * If you want to access a shared folder in Windows, from some other PC (Granular-based included), go to Start > Run and type the IP address of the source PC as:

Note: The package samba-server should be installed on Granular for Windows machines to access shares from Granular.
 * You should be able to see the shared folders on either PC in this manner.

Note: For Granular users, a still easy way to access / share folders on the LAN is by heading towards Granular Control Center > Network Sharing. To add SAMBA shares or edit other settings, go to Granular Control Center > Sharing > Configure Samba.

Peer-to-Peer (P2P)
Most of us are aware of this term P2P. P2P is a collective term used to refer to the methods of sharing files remotely, that is via Internet. The most popular forms of P2P in existence today are Bittorrent and direct P2P sharing.

Bittorrent
BitTorrent is a peer-to-peer file sharing (P2P) communications protocol. BitTorrent is a method of distributing large amounts of data widely without the original distributor incurring the entire costs of hardware, hosting, and bandwidth resources. Instead, when data is distributed using the BitTorrent protocol, each recipient supplies pieces of the data to newer recipients, reducing the cost and burden on any given individual source, providing redundancy against system problems, and reducing dependence on the original distributor.

-- Wikipedia

Most Linux distributions are released for public downloading through the bittorrent method.

Some good Bittorrent clients for Linux are:
 * KTorrent (pre-installed in Granular)
 * Transmission (available in repository)
 * Azureus (available in repository)
 * uTorrent (works perfect under Wine)

Direct P2P
P2P file sharing is distinct from file trading in that downloading files from a P2P network does not require uploading, although some networks either provide incentives for uploading such as credits or forcing the sharing of files being currently downloaded.

-- Wikipedia

Some good P2P clients for Linux are:
 * Limewire (available in repository)