Magellan Linux

Contents of /trunk/vzctl/magellan-set_hostname.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 272 - (show annotations) (download) (as text)
Sat Jul 21 22:43:26 2007 UTC (16 years, 9 months ago) by niro
File MIME type: application/x-sh
File size: 1791 byte(s)
-magellan specific vzctl files

1 #!/bin/bash
2 # Copyright (C) 2000-2007 SWsoft. All rights reserved.
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 #
18 #
19 # This script sets hostname inside VE for Magellan like distros
20 # For usage info see vz-veconfig(5) man page.
21 #
22 # Some parameters are passed in environment variables.
23 # Required parameters:
24 # Optional parameters:
25 # HOSTNM
26 # Sets host name for this VE. Modifies /etc/hosts and
27 # /etc/sysconfig/network (in RedHat) or /etc/rc.config (in SuSE)
28
29 function set_host()
30 {
31 local cfgfile="$1"
32 local var=$2
33 local val=$3
34 local host=
35
36 [ -z "${val}" ] && return 0
37 if grep -q -E "[[:space:]]${val}" ${cfgfile} 2>/dev/null; then
38 return;
39 fi
40 if echo "${val}" | grep "\." >/dev/null 2>&1; then
41 host=${val%%.*}
42 fi
43 host=" ${val} ${host}"
44 put_param2 "${cfgfile}" "${var}" "${host} localhost localhost.localdomain"
45 }
46
47 function set_hostname()
48 {
49 local cfgfile=$1
50 local hostname=$2
51
52 [ -z "${hostname}" ] && return 0
53 echo "${hostname}" > ${cfgfile}
54 hostname ${hostname}
55 }
56
57 set_host /etc/hosts "127.0.0.1" "${HOSTNM}"
58 set_hostname /etc/hostname "${HOSTNM}"
59
60 exit 0