Project

General

Profile

Yast based unattended installation » History » Version 17

Anonymous, 12/21/2013 12:14 AM

1 1 Oliver Weinmann
h1. Autoyast based unattended installation
2
3 17 Anonymous
h2. Autoyast files
4
5
Working Autoyast files have been commited to the community-templates repository: https://github.com/theforeman/community-templates/tree/master/autoyast
6
7
The main difference between provision.erb and provision_sles.erb is, that the latter uses the systemsmanagement:puppet repository by default and adds rubygem-ruby-augeas to the package list, so a recent puppet agent (contrary to 2.6, even on SLES 11 SP3) with working augeas is getting installed.
8
9
Note that some dependencies are only available from SLES SDK and you have to update the URL in provision_sles.erb to point to your copy of the SLES SDK DVD.
10
11 1 Oliver Weinmann
h2. Media notes
12 7 Oliver Weinmann
13 1 Oliver Weinmann
Installation media can be accessed via nfs,ftp or http. The easiest way to setup installation sources for SLES is to use the module in Yast.
14 7 Oliver Weinmann
15
Yast -> Miscellaneous -> Installation Server
16
17
The path to the installation media differs from SLES9 and SLES10/11. So you have to create two separate installation media entries in foreman.
18 1 Oliver Weinmann
19 17 Anonymous
h2. SLES9
20 1 Oliver Weinmann
21
ftp://server/SLES/$major.$minor_$arch
22
23 7 Oliver Weinmann
Foreman will try to find initrd in @mediapath/boot/$arch/loader. This is a problem since SLES9 keeps the initrd in a different directory. A simple workaround is to copy the folder to the correct location for Foreman to pick it up.
24 1 Oliver Weinmann
25 7 Oliver Weinmann
e.g.
26
27
Foreman tries to copy initrd of SLES 9.4 64Bit:
28
29
<pre>ftp://Server/SLES/9.4_x86_64/boot/x86_64/loader/initrd</pre>
30
31
So we have to copy and create the directory structure:
32
33 16 Anonymous
<pre>
34
mkdir boot/x86_64/loader
35
cp SUSE-SLES-9-Service-Pack-4/CD1/boot/loader/initrd boot/x86_64/loader
36
</pre>
37
38 1 Oliver Weinmann
Now Foreman will find the initrd. You can verfiy this by enabling debugging for foreman proxy and checking the logs or checking the file size on the files created in the tftp directory.
39
40 17 Anonymous
h2. SLES 11
41 3 Oliver Weinmann
42 17 Anonymous
h3. SLES 11 Updates
43 1 Oliver Weinmann
44 16 Anonymous
If you want to use SLES Updates in the installation environment download the patch from Novell's website. Please note that you need a valid support contract to download the patch. Create a minimal installation source that can be added during the installation process. This will ensure that a later version of puppet is installed during deployment with foreman. You can find very good instructions on how to create an installation source here:
45
46 1 Oliver Weinmann
http://en.opensuse.org/SDB:Creating_YaST_installation_sources#repomd.2Frpm_md.2FYUM_sources
47 3 Oliver Weinmann
48 4 Oliver Weinmann
Once you have the install source ready, create a new provision template in forman:
49 1 Oliver Weinmann
50 4 Oliver Weinmann
Name: YaST2 SLES 11.1 Updates
51
Snippet: YES
52
53
<pre>
54
    <listentry>
55
      <media_url>ftp://server/SLES/11.1_Updates/</media_url>
56 8 Oliver Weinmann
      <product>Updates</product>
57 4 Oliver Weinmann
      <product_dir>/</product_dir>
58
    </listentry>
59
</pre>
60
61 6 Oliver Weinmann
h2. Software Packages
62 1 Oliver Weinmann
63 6 Oliver Weinmann
If you don't specify any software packages autoyast will assume a minimal installation. This means no GUI but a very small footprint on the installed system. In case you want a default Installation with GUI and so on, create one more provisioning template to hold the package definitions.
64
65
Name: Yast SLES 11.1 Packages
66
Snippet: YES
67
68 1 Oliver Weinmann
<pre>
69 6 Oliver Weinmann
<base>default</base>
70
    <packages config:type="list">
71
      <package>ConsoleKit-32bit</package>
72
      <package>Mesa-32bit</package>
73
      <package>PolicyKit-32bit</package>
74
      <package>PolicyKit-gnome-libs-32bit</package>
75
      <package>aspell-32bit</package>
76
      <package>at-spi-32bit</package>
77
      <package>audiofile-32bit</package>
78
      <package>audit-libs-32bit</package>
79
      <package>bind-libs-32bit</package>
80
      <package>cpufrequtils-32bit</package>
81
      <package>cracklib-32bit</package>
82
      <package>cryptconfig-32bit</package>
83
      <package>cyrus-sasl-32bit</package>
84
      <package>cyrus-sasl-gssapi-32bit</package>
85
      <package>cyrus-sasl-plain-32bit</package>
86
      <package>dbus-1-32bit</package>
87
      <package>dbus-1-glib-32bit</package>
88
      <package>device-mapper-32bit</package>
89
      <package>evolution-data-server-32bit</package>
90
      <package>fam-32bit</package>
91
      <package>file-32bit</package>
92
      <package>freeglut-32bit</package>
93
      <package>freetype-32bit</package>
94
      <package>fribidi-32bit</package>
95
      <package>gconf2-32bit</package>
96
      <package>gdbm-32bit</package>
97
      <package>gettext-runtime-32bit</package>
98
      <package>giflib-32bit</package>
99
      <package>glibc-locale-32bit</package>
100
      <package>gnome-keyring-32bit</package>
101
      <package>gnome-panel-32bit</package>
102
      <package>gnome-vfs2-32bit</package>
103
      <package>gpm-32bit</package>
104
      <package>hal-32bit</package>
105
      <package>hunspell-32bit</package>
106
      <package>libFLAC8-32bit</package>
107
      <package>libHX13-32bit</package>
108
      <package>libacl-32bit</package>
109
      <package>libaio-32bit</package>
110
      <package>libart_lgpl-32bit</package>
111
      <package>libattr-32bit</package>
112
      <package>libavahi-client3-32bit</package>
113
      <package>libavahi-common3-32bit</package>
114
      <package>libavahi-glib1-32bit</package>
115
      <package>libbonobo-32bit</package>
116
      <package>libbonoboui-32bit</package>
117
      <package>libbz2-1-32bit</package>
118
      <package>libcanberra-gtk-32bit</package>
119
      <package>libcanberra-gtk0-32bit</package>
120
      <package>libcanberra0-32bit</package>
121
      <package>libcap2-32bit</package>
122
      <package>libcroco-0_6-3-32bit</package>
123
      <package>libcurl4-32bit</package>
124
      <package>libdb-4_5-32bit</package>
125
      <package>libdrm-32bit</package>
126
      <package>libesd0-32bit</package>
127
      <package>libfreebl3-32bit</package>
128
      <package>libgcrypt11-32bit</package>
129
      <package>libglade2-32bit</package>
130
      <package>libgnome-32bit</package>
131
      <package>libgnome-desktop-2-11-32bit</package>
132
      <package>libgnomecanvas-32bit</package>
133
      <package>libgnutls26-32bit</package>
134
      <package>libgpg-error0-32bit</package>
135
      <package>libgsf-1-114-32bit</package>
136
      <package>libgstreamer-0_10-0-32bit</package>
137
      <package>libgthread-2_0-0-32bit</package>
138
      <package>libgweather1-32bit</package>
139
      <package>libical0-32bit</package>
140
      <package>libidl-32bit</package>
141
      <package>libidn-32bit</package>
142
      <package>liblcms1-32bit</package>
143
      <package>libldap-2_4-2-32bit</package>
144
      <package>libltdl7-32bit</package>
145
      <package>libmng-32bit</package>
146
      <package>libnetpbm10-32bit</package>
147
      <package>libnscd-32bit</package>
148
      <package>libnsssharedhelper0-32bit</package>
149
      <package>libogg0-32bit</package>
150
      <package>libopenct1-32bit</package>
151
      <package>libopensc2-32bit</package>
152
      <package>libproxy0-32bit</package>
153
      <package>libproxy0-config-gnome</package>
154
      <package>libpulse0-32bit</package>
155
      <package>libqt4-32bit</package>
156
      <package>libqt4-qt3support-32bit</package>
157
      <package>libqt4-sql-32bit</package>
158
      <package>libqt4-x11-32bit</package>
159
      <package>libreiserfs-32bit</package>
160
      <package>librsvg-32bit</package>
161
      <package>libsepol1-32bit</package>
162
      <package>libsmbclient0-32bit</package>
163
      <package>libsmbios2-32bit</package>
164
      <package>libsndfile-32bit</package>
165
      <package>libsoup-2_4-1-32bit</package>
166
      <package>libsqlite3-0-32bit</package>
167
      <package>libstdc++33-32bit</package>
168
      <package>libtalloc1-32bit</package>
169 1 Oliver Weinmann
      <package>libtasn1-3-32bit</package>
170 6 Oliver Weinmann
      <package>libtdb1-32bit</package>
171
      <package>libtool-32bit</package>
172
      <package>libvorbis-32bit</package>
173
      <package>libwbclient0-32bit</package>
174
      <package>libwnck-1-22-32bit</package>
175
      <package>libxcrypt-32bit</package>
176
      <package>libxml2-32bit</package>
177
      <package>libxslt-32bit</package>
178
      <package>mozilla-nspr-32bit</package>
179
      <package>mozilla-nss-32bit</package>
180
      <package>mozilla-xulrunner191-32bit</package>
181
      <package>nautilus-32bit</package>
182
      <package>nautilus-cd-burner-32bit</package>
183
      <package>opensc-32bit</package>
184
      <package>openslp-32bit</package>
185
      <package>opie-32bit</package>
186
      <package>orbit2-32bit</package>
187
      <package>pam-32bit</package>
188
      <package>pam-modules-32bit</package>
189
      <package>pam_mount-32bit</package>
190
      <package>parted-32bit</package>
191
      <package>pciutils-32bit</package>
192
      <package>pcsc-lite-32bit</package>
193
      <package>perl-32bit</package>
194
      <package>popt-32bit</package>
195
      <package>qt3-32bit</package>
196
      <package>rpm-32bit</package>
197
      <package>samba-32bit</package>
198
      <package>samba-client-32bit</package>
199
      <package>startup-notification-32bit</package>
200
      <package>strace-32bit</package>
201
      <package>sysfsutils-32bit</package>
202
      <package>tcl-32bit</package>
203
      <package>tcpd-32bit</package>
204
      <package>tk-32bit</package>
205
      <package>utempter-32bit</package>
206
      <package>xaw3d-32bit</package>
207
      <package>xorg-x11-driver-video-radeonhd</package>
208
      <package>yast2-trans-en_GB</package>
209
         </packages>
210
 <patterns config:type="list">
211 16 Anonymous
      <pattern>Minimal</pattern>
212 1 Oliver Weinmann
      <pattern>WBEM</pattern>
213
      <pattern>apparmor</pattern>
214 16 Anonymous
      <pattern>base</pattern>
215 1 Oliver Weinmann
      <pattern>documentation</pattern>
216
      <pattern>gnome</pattern>
217
      <pattern>print_server</pattern>
218
      <pattern>x11</pattern>
219
    </patterns>
220
</pre>
221
222 17 Anonymous
This is the default package selection of a fresh installed SLES 11.1 system. Maybe just defining the patterns would be enough.