source: installer/client_initrd_installer.sh @ bf1840e9

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since bf1840e9 was 9fb5086, checked in by ramon <ramongomez@…>, 16 years ago

Corrección caminos en scripts de instalación; función en pruebas ogGetHostname.

git-svn-id: https://opengnsys.es/svn/trunk@395 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100755
File size: 3.1 KB
Line 
1#!/bin/bash
2
3TFTPBOOT=/var/lib/tftpboot
4OGROOT=/opt/opengnsys
5INITRD=0
6UPDATE=0
7
8function arguments_parser
9{
10    while [ $# -gt 0 ];do
11        case $1 in
12            ("-t")
13            shift
14            if [ $# -eq 0 ];then
15                echo "Error parseando argumentos"
16                exit -1
17            else
18                OGROOT=$1
19                shift
20            fi
21            ;;
22
23            ("-s")
24            shift
25            if [ $# -eq 0 ]; then
26                echo "Error parseando argumentos"
27                        exit -1
28            else
29                SVNROOT=$1
30                shift
31            fi
32            ;;
33
34            ("-u")
35            shift
36            UPDATE=1
37            ;;
38
39            ("-i")
40            shift
41            INITRD=1
42            ;;
43        esac
44    done
45}
46
47function checking
48{
49    if [ $UID != 0 ]; then
50        echo "No tiene permisos suficientes para ejecutar este script"
51        exit -1
52    fi
53    if [ -z $SVNROOT ]; then
54           echo "Necesito saber la ruta de las fuentes del proyecto."
55           echo "$0 -s /ruta/hacia/las/fuentes"
56           echo "Tambien puedes editar el script y anyadirlo manualmente."
57           exit -1
58    else
59       if [ ! -d $SVNROOT/admin ] ||
60          [ ! -d $SVNROOT/client ] ||
61          [ ! -d $SVNROOT/doc ] ||
62          [ ! -d $SVNROOT/repoman ] ||
63          [ ! -d $SVNROOT/installer ] ||
64          [ ! -d $SVNROOT/server ] ; then
65           echo "La ruta dada para las fuentes del proyecto son incorrectas"
66           exit -1;
67       fi
68    fi
69}
70
71function install_necesary_packages
72{
73    apt-get install pxe dhcp3-server tftpd-hpa nfs-kernel-server
74}
75
76function create_file_system
77{
78    mkdir -p $TFTPBOOT
79
80    mkdir -p $OGROOT
81
82    mkdir -p $OGROOT/bin
83    mkdir -p $OGROOT/lib
84    mkdir -p $OGROOT/images
85    mkdir -p $OGROOT/client
86    mkdir -p $OGROOT/client/lib/engine/bin
87
88    mkdir -p /etc/opengnsys
89    mkdir -p /var/log/opengnsys/clients
90
91    ln -fs $TFTPBOOT $OGROOT/tftpboot
92    ln -fs /etc/opengnsys $OGROOT/etc
93    ln -fs /var/log/opengnsys $OGROOT/log
94
95    cp -ar $SVNROOT/client/nfsexport/* $OGROOT/client
96    cp -ar $SVNROOT/client/engine/*.lib $OGROOT/client/lib/engine/bin
97    cp -ar $SVNROOT/client/engine/*.sh $OGROOT/client/lib/engine/bin
98}
99
100function install_dhcpd
101{
102    cat $SVNROOT/server/DHCP/dhcpd.conf >> /etc/dhcp3/dhcpd.conf
103    /etc/init.d/dhcp3-server restart
104    echo "Revise el archivo /etc/dhcp3/dhcpd.conf para configurarlo para su red"
105}
106
107function install_tftpboot
108{
109    mkdir -p $OGROOT/tftpboot/pxelinux.cfg/
110    cat $SVNROOT/server/PXE/pxelinux.cfg/default >> $OGROOT/tftpboot/pxelinux.cfg/default
111}
112
113function install_initrd
114{
115    $SVNROOT/client/boot/initrd-generator -t $OGROOT/tftpboot/
116}
117
118function install_nfsexport
119{
120    cat $SVNROOT/server/NFS/exports >> /etc/exports
121    /etc/init.d/nfs-kernel-server restart
122
123    echo "Revise el archivo /etc/exports para configurarlo para su red"
124}
125
126arguments_parser $@
127checking
128
129if [ $INITRD -eq 1 ]; then
130    install_initrd
131fi
132
133if [ $UPDATE -eq 1 ]; then
134    create_file_system
135else
136    install_necesary_packages
137    create_file_system
138    install_dhcpd
139    install_tftpboot
140    install_initrd
141    install_nfsexport
142fi
Note: See TracBrowser for help on using the repository browser.