[[TranslatedPages(revision=89)]] [[TOC]] = OpenGnSys Server Installation Manual = == Note == It is assumed [wiki:En:WikiStart OpenGnSys] Server will be installed in a GNU/Linux distro, Ubuntu 10.04 Server LTS or later. Check the [wiki:CompatibilidadInstalacionServer/en OpenGnSys Server installation compatibility list]. The scripts and installation files are available in [browser:trunk/installer OpenGnSys Installer] section. == Install Version == '''!OpenGnSys 1.0.3 is the last stable version.''' == Installation Methods == There are three basic ways [wiki:En:WikiStart OpenGnSys] installation: * Installation script. Which uses Subversion to download the application. * Starting from a tar.gz This application is now complete. * Installation step by step manual. It is obvious the installation script and install each component. After installation is helpful to review the [wiki:.#InitConfiguration init configuration]. Especially important if we change the server IP OpenGnSys. === Installation Script === ''NOTE'': Before running the script, if you uses a proxy for Internet access, it is recommended review the information at the end of this document to enable the use of Subversion with proxy. [wiki:En:WikiStart OpenGnSys] installation is done by running the installation script [browser:trunk/installer/opengnsys_installer.sh opengnsys_installer.sh], which can be downloaded directly from [http://www.opengnsys.es/svn/trunk/installer/opengnsys_installer.sh] 1. Download the script. Examples with various tools: a. Download with wget. {{{ wget http://www.opengnsys.es/svn/trunk/installer/opengnsys_installer.sh }}} a. Download with curl. {{{ curl http://www.opengnsys.es/svn/trunk/installer/opengnsys_installer.sh > opengnsys_installer.sh }}} a. Download with a web browser. Click on the link [http://www.opengnsys.es/svn/trunk/installer/opengnsys_installer.sh] and save the file as {{{opengnsys_installer.sh}}} 2. Basic Configuration. For security reasons, it is '''very important''' modify default users and passwords to access to the system. For this, edit the installation file {{{opengnsys_installer.sh}}} and change the values of configuration variables: * {{{MYSQL_ROOT_PASSWORD}}} - MySQL {{{root}}} user password. * {{{OPENGNSYS_DB_USER}}} - OpenGnSys access user and OpenGnSys super-user. * {{{OPENGNSYS_DB_PASSWD}}} - User password. * {{{OPENGNSYS_CLIENT_PASSWD}}} - Password for client access to remote services. 3. Installation process. The installation script must be run as {{{root}}}: {{{ sudo bash opengnsys_installer.sh }}} 4. Check the configuration files. === Installation from tar.gz === If we do not have access to Subversion, i.e., we are behind a proxy, we will have to download the tar.gz package from the web. 1. Access to [http://www.opengnsys.es/downloads] 1. Load {{{opengnsys-}}}''{{{version}}}''{{{.tar.gz}}} file on a server temporary directory. 1. Decompress the file: {{{tar xvzf opengnsys-}}}''{{{version}}}''{{{.tar.gz}}} 1. Change to the installer directory: {{{cd opengnsys/installer}}} 1. Setting proxy server, if needed. i.e.: {{{export http_proxy="http://}}}''{{{proxyserver}}}''{{{:}}}''{{{proxyport}}}'' 1. '''We strongly recommended change the default users and passwords editing the installer {{{opengnsys_installer.sh}}}.''' Find the variables MYSQL_ROOT_PASSWORD, OPENGNSYS_DB_USER, OPENGNSYS_DB_PASSWD, and OPENGNSYS_CLIENT_PASSWD. Change to desired values. 1. Run the script: {{{sudo bash opengnsys_installer.sh}}} === Manual Installation step by step === For details of all the processes performed by the scripts for manual installation of the system [wiki:En:WikiStart OpenGnSys] see [wiki:InstalacionManual Manual Installation] == Init Configuration == 1. Check config files. 1. {{{/opt/opengnsys/etc/ogAdmServer.cfg}}} - OpenGnSys Server config file 2. {{{/opt/opengnsys/etc/ogAdmRepo.cfg}}} - OpenGnSys Repository config file 3. {{{/opt/opengnsys/etc/ogAdmAgent.cfg}}} - OpenGnSys Agent config file 4. {{{/opt/opengnsys/client/etc/ogAdmClient.cfg}}} - OpenGnSys Client config file 5. {{{/opt/opengnsys/www/controlacceso.php}}} - OpenGnSys Web Admin Console config file 2. Configure server DHCP and restart the service. 3. Optionally, check Samba config in {{{/etc/samba}}} 4. Access as Administrator in Web Admin Console. 1. Use the user and password set in the installer to access to database (variables {{{OPENGNSYS_DB_USER}}} and {{{OPENGNSYS_DB_PASSWD}}}). 2. Check the default organized configuration and default user. 5. Access as user in Web Admin Console. 1. Use the user and password configured as administrador in the Organizational Unit. 2. Check the server IP in section "Servidores->Servidor OpenGnSys (Default)". 3. If you change the configuration, you must to restart the server: {{{sudo /etc/init.d/opengnsys restart}}} == Updating [wiki:En:WikiStart OpenGnSys] == Run {{{opengnsys_update.sh}}} script to update all !OpenGnSys components from the Subversion repository: {{{ sudo bash /opt/opengnsys/lib/opengnsys_update.sh }}} Follow the instructions. == Uninstalling [wiki:. OpenGnSys] == Run {{{opengnsys_uninstall.sh}}} script to uninstall all !OpenGnSys components: {{{ sudo bash /opt/opengnsys/lib/opengnsys_uninstall.sh }}} Follow the instructions. == OpenGnSys settings to use external services == === External DHCP Server === By default, OpenGnSys version 1.0.2 use Grub4Dos instead of PXELinux for booting clients. You need to incorporate the following line to configure DHCP service with Grub4Dos. {{{ use-host-decl-names on; next-server ip_opengnsys; filename "grldr"; }}} If you wish to coexist some servers, you can specify with differents next-server lines in differents groups. To change the server of a client, you only have to cut/paste client from one group to another. {{{ group { next-server [server_ip1]; host pc1 { option host-name "pc1"; hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address xxx.xxx.xxx.xxx; filename "grldr"; } host pc2 .... } group { next-server [server_ip2]; host pc3 { option host-name "pc3"; hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address xxx.xxx.xxx.xxx; filename "grldr"; } host pc4 ... } }}} If you want to used PXELinux, you should be replaced {{{filename}}} to configure DHCP with PXELinux: {{{ filename "pxelinux.0"; }}} Also, for compatibility with PXELinux, Web Console Admin Server should be referenced to the boot appropiate process, including the next simbolic link: {{{ sudo ln -fs /opt/opengnsys/www/principal/boot_pxelinux.php boot.php }}} == Change !OpenGnSys Server IP Address == From OpenGnSys version 1.0.3, there is a script for changing the OpenGnSys Server main IP address on machines with multiple network interfaces. To make the change of OpenGnSys Server IP address, run the {{{setserveraddr}}} script from a terminal server: {{{ sudo /opt/opengnsys/bin/setserveraddr NetworkInterface }}} Being {{{NetworkInterface}}} parameter, the name of the network interface that it is assigned to the specified IP (eg eth0, eth1). To obtain the data of active network interfaces and their associated IP addresses, executing the command: {{{ sudo ifconfig }}} If needed, access to OpenGnSys Web Admin Console to modify some configuration parameters. 1. Modify default repository IP address. Click on Servers button, right click on the repository name, select Properties and change IP address value. 1. Force a netboot for updating the boot information. Click on Labs button, right click on lab. name, select Advanced !NetBoot option and click on Save button. == Configure Proxy Server for Subversion (if needed) == * Export proxy variable: {{{ export http_proxy="http://proxyserver:proxyport" }}} * Check proxy, install subversion and wget: {{{ apt-get update apt-get install subversion wget }}} * Configure subversion to use proxy. {{{ vi /etc/subversion/servers #edit [global] section: [global] http-proxy-host = proxyserver http-proxy-port = proxyport http-timeout = 10 }}} == Optional: Remove php cron services from Ubuntu Server == Remove file /etc/cron.d/php5 == Proposed installation of components == ''NOTE'': This feature is not implemented yet. Proposed to modify the installation program to automate the process of the two main components of OpenGnSys Project. The format of the setting script {{{opengnsys-installer.sh }}} can be: {{{ opengnsys_installer.sh [ all | server | repo IPServer DistribuciónCliente ] }}} As the parameter: * '''{{{server}}}''' – including the services: * OpenGnSys Server (ogAdmServer, ogAdmAgent) * Web Console (Apache, MySQL, web pages) * Boot (DHCP, TFTP, client generator) * '''{{{repo}}}''' – including the services: * Repo Server (ogAdmRepo) * File Server (NFS) * OpenGnSys Client Components * You need to know the server IP and the type of distribution of Ubuntu that will be use on the clients. * '''{{{all}}}''' – installation compact in the same computer (optional value and by default).