Installing H@H on Ubuntu: Difference between revisions

From EHWiki
Jump to navigationJump to search
Maximum Joe (talk | contribs)
Fyxie (talk | contribs)
removed unneded cd download steps from java6 install, added java7 install
Line 88: Line 88:
sudo apt-get upgrade</FONT></pre>
sudo apt-get upgrade</FONT></pre>


==Installing Java==
==Installing Java (Pick 6 or 7)==
(source: http://www.devsniper.com/ubuntu-12-04-install-sun-jdk-6-7/ rewritten by Melkeku)
 
===Java 6 Installation===
(old source: http://www.devsniper.com/ubuntu-12-04-install-sun-jdk-6-7/ rewritten by Melkeku and Fyxie)


To run the H@H server you will have to have java installed on the server.
To run the H@H server you will have to have java installed on the server.
Line 95: Line 97:
As far as I was told on the forums and as I installed you have to use Sun's(/Oracle's) Java. It will not work with other versions.
As far as I was told on the forums and as I installed you have to use Sun's(/Oracle's) Java. It will not work with other versions.


The JDK can be downloaded directly from Sun with the following command. It is a bit of a hack, so it may stop working in the future. If it works, you can skip down to where jdk-6u32-linux-x64.bin is mentioned below and use it instead of the file from the CD image.
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/6u32-b05/jdk-6u32-linux-x64.bin"</FONT></pre>


This is the trickiest part of the installation since you are not easily able to install this version of java on Ubuntu from the "repositories".
First download the JDK can be with the following command.
(Official download is here http://www.oracle.com/technetwork/java/javase/downloads/index.html)


The tricky part here is getting the java installation file onto the server itself.
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/6u32-b05/jdk-6u32-linux-x64.bin"</FONT></pre>
You have to accept the license agreement for downloading, which is hard when working from a command line... This is why you're not able to directly download it to the server.
 
So if you know an easy way of transferring files from another computer over to the server, go for it. I'll tell how I did it.
 
Since I set up the server in a VMware environment I have the possibility to connect an .ISO file to the server (just like a CD if you are running the server on a physical computer). There are most likely 100 other ways to do it. You could for example do it using TFTP (read about it here: http://manpages.ubuntu.com/manpages/hardy/man1/tftp.1.html).
 
===The ISO Way===
Download the java file from a computer with a GUI. Go to:
http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u32-downloads-1594644.html
 
Accept the license agreement and download either the file named: jdk-6u32-linux-i586.bin (for 32 bit system(x86) OR jdk-6u32-linux-x64.bin (for 64 bit system(x64)
 
You will be asked to log in; you will have to create an account to download older versions.
 
When you have downloaded the file, make it into an .ISO file. You can use a program called “imgburn” or another program able to do the same thing. (or you can burn the java file to a CD and insert it in the computer if you are running this installation on a physical computer)
 
When you have the .ISO file, mount it in the server through VMware (or as a CD as stated above).
 
Go to the server console (or use putty (recommended) to connect to the servers IP address) and type the following command:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">ls –l /dev/cdrom</FONT></pre>
 
You should get an output looking something like this:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="C94649">lrwxrwxrwx 1 root root 3 Jun  2 00:04 /dev/cdrom -> sr0</FONT></pre>
 
The info we are after is the last part, in my case "sr0". If what you get is different change it in the next command as well.
 
Now we have to mount the CD-ROM so we can access the files on the "CD". Type:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">sudo mount /dev/<FONT COLOR="35A4D6">sr0</FONT> /media/cdrom</FONT></pre>
 
To check if everything was successful type:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">ls /media/cdrom</FONT></pre>
You should see the file names of what is located on the CD drive, in my case I see:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="C94649">jdk-6u32-linux-x64.bin</FONT></pre>
 
First, transfer the file to a folder locally (change “username” with your actual username) (as 2 separate commands):
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">sudo mkdir /home/<FONT COLOR="35A4D6">”username”</FONT>/java</FONT>
<FONT COLOR="1FD30D">sudo cp /media/cdrom/jdk-6u32-linux-x64.bin /home/<FONT COLOR="35A4D6">”username”</FONT>/java/</FONT></pre>
 
Go to the directory where the copied file is located:
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">cd /home/<FONT COLOR="35A4D6">”username”</FONT>/java</FONT></pre>
 
Now, make the file we just copied executable (type "ls" to see the file name):
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">chmod +x jdk-6u32-linux-x64.bin</FONT></pre>


Extract the (bin) file:
Extract the (bin) file:
Line 172: Line 130:
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.7-b02, mixed mode)</FONT></pre>
Java HotSpot(TM) 64-Bit Server VM (build 20.7-b02, mixed mode)</FONT></pre>
===Java 7 Installation===
Note that 7 is said to have issues with the graphical client. 7 Should be fine for a headless machine.
Become root
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">su -</FONT></pre>
Download and exract files
(Official download is here http://www.oracle.com/technetwork/java/javase/downloads/index.html)
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/7u9-b05/jdk-7u9-linux-x64.tar.gz"
tar xvfo jdk-7u9-linux-x64.tar.gz</FONT></pre>
Move java files into their place
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">mkdir /usr/lib/jvm
mv jdk1.7.0_09 /usr/lib/jvm/jdk1.7.0_09</FONT></pre>
Set alternatives links
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_09/bin/java" 1
update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_09/bin/javac" 1
update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0_09/bin/javaws" 1</FONT></pre>
Config alternatives links
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javaws</FONT></pre>
Verify java version
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="1FD30D">java -version</FONT></pre>
(Expected output)
<pre<includeonly></includeonly> style="overflow: auto;{{{style|}}}"><FONT COLOR="C94649">java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)</FONT></pre>


==Installing H@H==
==Installing H@H==

Revision as of 09:38, 8 December 2012

This page will tell you how to set up a Hentai@Home client using a Linux Ubuntu Server

Before you start reading at all, to use this guide you should be “above average” interested in computers, having a little more than “standard” equipment is recommended! (Meaning this guide is for advanced users)

Requirements

  • Being able to search Google.
  • Basic Linux knowledge is recommended.
  • It is recommended to use PuTTY or any other SSH program to connect to your server, this allows the copying/pasting of commands to the server.

A couple things to be aware of before starting:

  • Linux IS case sensitive on file names. Therefore, best thing is to create everything with lower case names to make it easier for yourself.
  • Commands you should type is given in Green, output from the command prompt is given in Red. Text in commands that is marked in Blue is part of a command that typically you would have to change.
  • This manual was developed based on a virtual server. The use of a physical server or another program than VMware to virtualize your server may require doing some things differently.

Configuring the Network

First thing you would want to do with your server is setting a static IP address. Use this command

sudo nano /etc/network/interfaces

The file that is opened should look something like this:

This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
auto eth0
iface eth0 inet dhcp

Below where it says “# The primary network interface”

Type in this information:

auto eth0
iface eth0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1

Change the IP addresses with what is relevant for your network.

When you have made the changes to the file press “ctrl+o” and press enter to save changes. Then press “ctrl+x” to exit the text editor.

When you have exited the file, type this command to restart the network interface and activate the new configuration.

sudo /etc/init.d/networking restart

You can check and see if your IP has changed by typing:

ifconfig

You should see something like this:

eth0      Link encap:Ethernet  HWaddr 00:00:00:00:00:00
inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0
inet6 addr: ffff::fff:ffff:ffff:ffff/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 MB)  TX bytes:0 (0.0 GB)

The second line is what is important.

You can test and see if the network is working by pinging an internet server:

ping google.com

If this returns an error try pinging:

ping 8.8.8.8

If this last one works and not the first, there is a problem with your DNS settings (refer to “dns-nameservers” that was typed in when you configured the network, this setting is typically the same as you gateway).

If none of them work there is no connection to internet. If this is the case you can try pinging your inside router(gateway) to check if you have network connection at all, if not check the IP you set for your server, make sure it's not in use by another computer and make sure you server is physically connected to the network.

That’s it for setting up the network.

P.S: Important thing to do when you have confirmed network connection on your server, run these commands to update you server with latest security patches.

sudo apt-get update
sudo apt-get upgrade

Installing Java (Pick 6 or 7)

Java 6 Installation

(old source: http://www.devsniper.com/ubuntu-12-04-install-sun-jdk-6-7/ rewritten by Melkeku and Fyxie)

To run the H@H server you will have to have java installed on the server.

As far as I was told on the forums and as I installed you have to use Sun's(/Oracle's) Java. It will not work with other versions.


First download the JDK can be with the following command. (Official download is here http://www.oracle.com/technetwork/java/javase/downloads/index.html)

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/6u32-b05/jdk-6u32-linux-x64.bin"

Extract the (bin) file:

./jdk-6u32-linux-x64.bin

If you type «ls» you should now see 2 files:

jdk1.6.0_32  jdk-6u32-linux-x64.bin

Now move the extracted file:

sudo mv jdk1.6.0_32 /usr/lib/jvm/

Now type in these commands to “install” Java (as 3 separate commands)

sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_32/bin/javac 1
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_32/bin/java 1
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_32/bin/javaws 1

Now tell the server that this java installation is the default one (as 3 separate commands):

sudo update-alternatives --config javac
sudo update-alternatives --config java
sudo update-alternatives --config javaws

To verify the installation is complete type:

java -version

You should see this message:

java version "1.6.0_32"
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.7-b02, mixed mode)


Java 7 Installation

Note that 7 is said to have issues with the graphical client. 7 Should be fine for a headless machine.


Become root

su -

Download and exract files (Official download is here http://www.oracle.com/technetwork/java/javase/downloads/index.html)

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/7u9-b05/jdk-7u9-linux-x64.tar.gz"
tar xvfo jdk-7u9-linux-x64.tar.gz


Move java files into their place

mkdir /usr/lib/jvm
mv jdk1.7.0_09 /usr/lib/jvm/jdk1.7.0_09


Set alternatives links

update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_09/bin/java" 1
update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_09/bin/javac" 1
update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0_09/bin/javaws" 1


Config alternatives links

update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javaws


Verify java version

java -version

(Expected output)

java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)


Installing H@H

Download H@H (check what the newest version is here)

To download H@H first make a new directory for where you want to run the files from:

sudo mkdir /home/”username”/hath

cd /home/”username”/hath

This creates a folder called “hath” in your home directory and moves you to it. Now download the H@H program by typing:

sudo wget hentaiathome.net/get/HentaiAtHome_1.0.10.zip

This might take time depending on your network speed.

When finished downloading you will have to install “unzip” to unzip the file. Type:

sudo apt-get install unzip

Now unzip the file by typing:

sudo unzip HentaiAtHome_1.0.10.zip

If you type «ls» you should see all the files extracted from the zip file.

Now, if everything went as planned before you can type:

java –jar HentaiAtHome.jar

And the server should start up.

You will be prompted for your client ID and Password which you can find on your H@H page: http://g.e-hentai.org/hentaiathome.php

You will need to configure the server settings on the above page before you get you client password. If you have not applied to run a H@H client yet you will have to do so first.

To stop the server, press "Ctrl+C" and wait for a couple seconds.

If you restart the server or for some reason are not in the folder where the H@H program is located you can also start it by typing

sudo java -jar /home/"username"/hath/HentaiAtHome.jar

Troubleshooting

If you are having trouble when downloading updates or when installing the unzip program, if the command prompt is stuck saying ”[waiting for headers]” please refer to this page (it's a common/known problem): http://askubuntu.com/questions/37753/how-can-i-get-apt-to-use-a-mirror-close-to-me-or-choose-a-faster-mirror

As always check the H@H technical issues first!

For problems after starting the H@H program that are not explained in the FAQ make a forum post here.

For problems related to putty, Ubuntu or Java please use a search engine.

See also