Для одного небольшого самодельного проекта необходима java, при этом хочется использовать именно jre от Sun, а не gij. Все это должно работать на VDS от firstvds.ru. На виртуальном сервере используется система Debian 4.0 etch.
По умолчанию, разумеется, java не установлена. Поэтому, установим ее самостоятельно:
Для начала, нам потребуется добавить репозитарий non-free, для этого отредактируем файл /etc/apt/sources.list, чтобы он выглядел приблизительно так:
deb http://ftp.fr.debian.org/debian/ etch main non-free deb http://security.debian.org etch/updates main
Затем необходимо выполнить команду apt-get update. Если все прошло успешно, можно устанавливать java:
baron:~# apt-get install sun-java5-jre Reading package lists... Done yuilding dependency tree... 72% Building dependency tree... Done The following extra packages will be installed: java-common libltdl3 odbcinst1debian1 sun-java5-bin unixodbc Suggested packages: equivs libnss-mdns sun-java5-plugin ia32-sun-java5-plugin sun-java5-fonts ttf-baekmuk ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho ttf-sazanami-mincho ttf-arphic-uming libmyodbc odbc-postgresql ibct1 Recommended packages: libasound2 libx11-6 libxext6 libxi6 libxp6 libxt6 libxtst6 gsfonts-x11 The following NEW packages will be installed: java-common libltdl3 odbcinst1debian1 sun-java5-bin sun-java5-jre unixodbc 0 upgraded, 6 newly installed, 0 to remove and 71 not upgraded. 4 not fully installed or removed.
Остается лишь согласиться с лицензией - и все готово, java установлена в системе. Но на минимальном тарифном плане не запустится, выдав следующую ошибку:
baron:~# java -version Error occurred during initialization of VM Could not reserve enough space for object heap Could not create the Java virtual machine.
Вылечить эту проблему не составляет труда, добавим параметр -Xmx32m, ограничивающий память виртуальной машины Java 32 мегабайтами:
baron:~# java -Xmx32m -version java version "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-b03) Java HotSpot(TM) Client VM (build 1.5.0_14-b03, mixed mode)
В случае, если уже довольно-таки старенькая, но вполне удаленькая Java 5 вам не подходит - установим пакет sun-java6-jre. Для этого добавим последнюю строчку в /etc/apt/sources.list, чтобы он выглядел таким образом:
deb http://ftp.fr.debian.org/debian/ etch main non-free deb http://security.debian.org etch/updates main # Backports - http://www.backports.org/ deb http://www.backports.org/debian etch-backports main non-free
Установим JRE от Java 1.6:
baron:~# apt-get install sun-java6-jre Reading package lists... Done Building dependency tree... Done The following extra packages will be installed: sun-java6-bin Suggested packages: binfmt-support sun-java6-plugin ia32-sun-java6-plugin sun-java6-fonts ttf-baekmuk ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho ttf-sazanami-mincho ttf-arphic-uming Recommended packages: libasound2 libx11-6 libxext6 libxi6 libxp6 libxtst6 libnss-mdns gsfonts-x11 The following NEW packages will be installed: sun-java6-bin sun-java6-jre 0 upgraded, 2 newly installed, 0 to remove and 71 not upgraded. 1 not fully installed or removed. Need to get 33.6MB of archives.
Затем проверим правильность установки уже известным образом:
baron:~# java -Xmx32m -version java version "1.6.0_07" Java(TM) SE Runtime Environment (build 1.6.0_07-b06) Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode)
Для работы моего демона достаточно примерно 1-2Мб хипа (т.е. -Xmx4m, к тому же для ускорения я использую ручное управление сборкой мусора - не используйте его без реальной на то необходимости!!! - совет от меня, ну и само собой, от Sun microsystems).
Ах да. На том же firstvds.ru, на шаблоне debian-5.0-i386-minimal (без ispmanager, но со свежим debian), никаких лишних шагов предпринимать не нужно: просто apt-get install sun-java6-jre