Installation of YaCy on Debian or Ubuntu
Installation on Debian-based GNU/Linux operating systems is easy using our Debian repository:
To use this server, copy this to your /etc/apt/sources.list file:
deb http://debian.yacy.net ./
Afterwards, you can install YaCy with the following commands. Please note that the repository does not have GPG keys set up as of March 2013, you will usually see a warning prompt pertaining to this during installation.
apt-get update apt-get install yacy
If you don't already have the Java JDK installed, you may find that you need to use this command instead (on Ubuntu 10.04 [Lucid], the yacy package version 1.0svn8138 does not pull in openjdk-6-jre appropriately as a dependency):
apt-get install openjdk-6-jre-headless yacy
Important File Locations
After the installation, the yacy application path is:
The DATA-path is:
The configuration files should be here:
/etc/yacy/yacy.conf is created using the /usr/share/yacy/defaults/yacy.init file on the first run.
The log files should be here:
When you have installed YaCy using the Debian repository, YaCy is started automatically after a OS startup, and stopped before shutdown.
You can also start and stop YaCy from the command line with: (must be run as root)
/etc/init.d/yacy stop /etc/init.d/yacy start /etc/init.d/yacy restart
The YaCy web server runs on port 8090 by default. The administration pages are at
but you can also set any other port for the interface using the administration pages of YaCy. A Port 80 is possible, but it is better to get access to this port using a Portforwarding.
When configured this way, the YaCy-internal auto-updater does not work. An automatic update must be done with OS tools. i.e. with a crontab command. An example for that is the following line, which you must write into /etc/crontab
0 6 * * * root apt-get update && apt-get -y --force-yes install yacy
In Ubuntu, the above line is only valid for the system crontab file (located at /etc/crontab) - you can edit this file on newer Ubuntu OS directly without using the crontab command. Below are comments from the file in Ubuntu 12.04:
# /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do.
If you want to use the root user crontab in Ubuntu instead, an example would be:
username@hostname:~$ sudo crontab -e no crontab for root - using an empty one Select an editor. To change later, run 'select-editor'. 1. /bin/ed 2. /bin/nano <---- easiest 3. /usr/bin/vim.basic Choose 1-3 : <enter>
Then add the following at the end of the file:
0 6 * * * /usr/bin/apt-get update && /usr/bin/apt-get -y --force-yes install yacy
Please note, there is no user name on the line above, and absolute (full) paths are used here to prevent binary location problems!
After you configured YaCy, you may also want to set a static IP to get a unique IP to your YaCy peer.