Difference between revisions of "GNUnet"

From ArchWiki
Jump to: navigation, search
(Install)
Line 4: Line 4:
  
 
'''GNUnet''' is a framework for secure peer-to-peer networking that does not use any centralized or otherwise trusted services. Currently, the service implemented on the framework serves to perform censorship-resistant file-sharing.
 
'''GNUnet''' is a framework for secure peer-to-peer networking that does not use any centralized or otherwise trusted services. Currently, the service implemented on the framework serves to perform censorship-resistant file-sharing.
 +
 +
since version 0.9.* everything changed a bit!
  
 
==Install==
 
==Install==
Line 11: Line 13:
 
If you also want to use the graphical interface, type in
 
If you also want to use the graphical interface, type in
 
  # pacman -S gnunet-gtk
 
  # pacman -S gnunet-gtk
 
Or
 
# pacman -S gnunet-setup
 
for the Qt interface
 
  
 
==Configuration==
 
==Configuration==
To configure your gnunet installation, open a terminal and type in the following to set up the configuration for the daemon. By default, gnunet uses the directory '/var/lib/gnunet', which can only be accessed by root. You may want to change the GNUNET_HOME variable to your own home directory to be able to run gnunet as a normal user. Alternatively, set up a user named gnunet and have the GNUNET_HOME variable to point to '/home/gnunet'.
+
To configure the gnunet daemon edit /etc/gnunetd.conf.  
gnunet-setup -d
+
  
Then type in the following to set up the client options. These include where downloaded files are saved.
+
If you installed gnunet-gtk you can configure the client options with
  gnunet-setup  
+
  # gnunet-setup  
  
 
==Usage==
 
==Usage==
 
===Downloading===
 
===Downloading===
 
To use gnunet-gtk to download a file, just search for the file in the 'Filesystem' tab. When you see the file you want, just download it as you would with any other P2P file-sharing program.
 
To use gnunet-gtk to download a file, just search for the file in the 'Filesystem' tab. When you see the file you want, just download it as you would with any other P2P file-sharing program.
 +
Start it with
 +
# gnunet-arm -s
 +
# gnunet-fs-gtk
  
 
===Uploading===
 
===Uploading===

Revision as of 15:13, 18 February 2012


Introduction

GNUnet is a framework for secure peer-to-peer networking that does not use any centralized or otherwise trusted services. Currently, the service implemented on the framework serves to perform censorship-resistant file-sharing.

since version 0.9.* everything changed a bit!

Install

To install GNUnet, you have to first enable the community repository and type in

# pacman -S gnunet

If you also want to use the graphical interface, type in

# pacman -S gnunet-gtk

Configuration

To configure the gnunet daemon edit /etc/gnunetd.conf.

If you installed gnunet-gtk you can configure the client options with

# gnunet-setup 

Usage

Downloading

To use gnunet-gtk to download a file, just search for the file in the 'Filesystem' tab. When you see the file you want, just download it as you would with any other P2P file-sharing program. Start it with

# gnunet-arm -s
# gnunet-fs-gtk

Uploading

Uploading files to the gnunet network is more complicated. GNUnet differentiates between 'indexing' a file and 'inserting' a file. The details can be read at the gnunet website. The following steps explain how to share data with the network, and are a shortened form of the instructions found on this page.

The following steps may have to be done manually. A module, called gnunet-fuse, is being developed to make this process easier for a user. However, as of December 2008, there's little documentation for it and it is not even in AUR yet.

To index a file/directory

gnunet-insert [-n] [-k keword1] [-k keyword 2] [-m TYPE:VALUE] filename

It is not required to add keywords, but it is recommended. This is because GNUnet does not allow searching by filename, but by keywords. Libextractor, which is a dependency of gnunet, will extract keywords from the file, but you may wish to enter keywords of your own. The '-m' option is for meta-data. This is data (about the file) that other users of gnunet will see when your files show up during their searches. For further details, see the gnunet.org online documentation. The '-n' option is used to insert a file/directory into the gnunet MySQL/sqlite database, instead of just indexing it.

To unindex a file/directory

gnunet-unindex

Suppose you have forgotten which files you indexed, you can look up the pointers in the directory '/var/lib/gnunet/data/shared', where GNUNET_HOME=/var/lib/gnunet (set by gnunet-setup -d). DO NOT edit this directory yourself, use gnunet-insert and gnunet-unindex to make changes. This is because gnunet uses a database to store file information, and deleting (or modifying) the contents of the directory will not remove the entries in the gnunet database.

Modifying and removing indexed files

  • When you modify a file, the URI of the file changes. Therefore, GNUnet considers this to be a completely different file. Therefore, make sure that the original file is unindexed (using the gnunet-unindex command), modify the file, and then index the new file to make it accessible through the network.
  • If you want to move/remove a file from your system, then you should unindex it first.