The missing part of SLES 16 manual
How to install SLES 16 using AIX
You can find many manuals for the new SUSE Linux Enterprise Server 16. What is new, how to do this or that, how to deploy it on any platform, and many more. Yes, you can find the manual on how to deploy SLES 16 on IBM Power and how to automate the installation. The only missing part is how to deploy SLES 16 using IBM AIX.
Of course, SUSE developers don’t use AIX. You may ask, why should it bother someone? Why should anyone install SUSE Linux Enterprise Server using IBM AIX?
The answer is easy. IBM Power administrators don’t always have a Linux infrastructure to deploy another Linux system. Sometimes they don’t even want to have additional deployment infrastructure for one or two additional Linux systems.
Why should they? We have everything that we need on AIX, and if you have AIX in your environment, you probably have a NIM server. You can use it to deploy SLES 16 - on IBM Power or even on x86.
Do I need AIX NIM to deploy SLES?
No, you don’t!
You may use any AIX server or even a Virtual I/O Server if you don’t have AIX.
The essential parts are called:
BOOTP
TFTP
NFS
If you have any operating system with these 3 components, you can use it to install SLES 16. But I will use AIX in this case.
Additional part you may need
If you want to completely automate SLES 16 installation, you need an HTTP server.
New Agama JSON profiles can be downloaded only from an HTTP server.
Officially, you may use different protocols. There is a list of the protocols in the documentation. But all these protocols are used with curl. I never saw curl working with NFS.
Let’s install filesets
I have AIX 7.3 TL3 SP1 on the server. The following filesets are needed:
bos.net.tcp.bootp - for BOOTP
bos.net.tcp.client_core - for inetd
bos.net.tcp.tftpd - for TFTP
bos.net.nfs.client and bos.net.nfs.server - for NFS
Create SLES repository
Download SLES 16 GA DVD and mount it somewhere on your system.
You can mount the DVD directly like:
loopmount -i SLES-16.0-Full-ppc64le-GM.install.iso -m /nim/SLES/16.0 -o "-r -V cdrfs"Or you can create a new directory and copy all the files from the DVD into it.
After the image is mounted or the files are copied, export the directory using NFS.
Add the line like below to /etc/exports:
/nim/SLES/16.0 -vers=3:4,sec=sys,ro,access=@10.0.0.0/8The most crucial part of the line - enable NFS v4! SLES 16 understands only NFS v4!
Now you must enable NFS v4, if you didn’t do it already, and export the directory:
chnfsdom power-devops.cloud
startsrc -g nfs
exportfs -vaConfigure BOOTP
BOOTP is disabled by default in newer AIX versions.
You can enable by executing the following command:
startsrc -t bootpsIf you want to better troubleshoot possible BOOTP problems, edit the file /etc/inetd.conf, find the line with bootps there and add -ddd to the arguments:
bootps dgram udp wait root /usr/sbin/bootpd bootpd -ddd /etc/bootptabDon’t forget to restart inetd after editing the file:
refresh -s inetdYou must create or edit the BOOTP configuration file /etc/bootptab.
There should be information about your new SLES server and where to find a bootloader for it:
sles16.power-devops.cloud:bf=/tftpboot/boot/grub2/powerpc-ieee1275/core.elf:ip=10.101.20.4:sm=255.255.255.0:gw=10.101.20.254:ht=ethernet:sa=10.101.20.5:I think the parameters are self-explanatory. If not, you can read about the in /etc/bootptab comments or in man bootptab.
Configure TFTP
TFTP is also a subserver of inetd. You can enable it the same way as BOOTP:
startsrc -t tftpSimilarly, I’d recommend adding some debugging options if you want to troubleshoot or simply watch what is being downloaded from TFTP:
tftp dgram udp6 SRC nobody /usr/sbin/tftpd tftpd -niv -d /tftpbootThe /tftpboot directory is automatically created when you install TFTP. You need to place some files into it.
First, you must create a subdirectory /tftpboot/boot and place the GRUB2 network boot files in it. I wrote several times about how to get them and will not repeat it here. You usually have them with your Linux distribution; you just need to find the RPM package and extract it. In my case, I copied the files from my latest RHEL installation.
The next step is to create a subdirectory for SLES 16 Linux kernel and initrd file.
mkdir -p /tftpboot/SLES/16.0The files are already in your NFS repository, and you copy them:
cp /nim/SLES/16.0/boot/ppc64le/* /tftpboot/SLES/16.0/The last step is to create a configuration file for GRUB in /tftpboot/boot/grub2/powerpc-ieee1275/grub.cfg:
echo “Welcome to the Linux on IBM Power installer!”
echo “”
set timeout=60
menuentry ‘Install SUSE Linux Enterprise Server 16.0’ --class opensuse --class gnu-linux --class gnu --class os --id sles160 {
linux (tftp,10.101.20.5)/tftpboot/SLES/16.0/linux ro ip=10.101.20.4::10.101.20.254:255.255.255.0:10.101.20.5:env3 nameserver=10.101.20.254 root=live:nfs://10.101.20.5/nim/SLES/16.0/LiveOS/squashfs.img live.password=abc123 inst.install_url=nfs://10.101.20.5/nim/SLES/16.0/install/ LIBSTORAGE_MULTIPATH_AUTOSTART=1
initrd (tftp,10.101.20.5)/tftpboot/SLES/16.0/initrd
}
I don’t know if there is a security issue in newer AIX TFTP versions or I forgot to configure something. GRUB searches for files in /boot and instead of serving files from /tftpboot/boot, AIX TFTP from my AIX 7.3 TL3 SP1 tries to give a file from /boot. To work around it you can create a symlink:
ln -s /tftpboot/boot /boot
It doesn’t close the security issue. Because it means that every TFTP client can get any file from your AIX installation with TFTP running.
On the other side, it can be my misconfiguration. I don’t remember such behaviour in the earlier AIX versions.
Support the Power DevOps Newsletter!
If you like reading technical articles about IBM Power, AIX, and Linux on IBM Power, consider upgrading to the paid tier to show your support. As a paid subscriber, you not only get regular posts, but you will get additional posts with the full code and further explanations, access to the whole archive of the blog, and take part in our monthly calls where you can ask your questions and propose topics for future newsletters. Be an active member of our community!
Install SLES!
Everything is ready for the installation fest!
Start your new LPAR, configure network boot options in SMS or using HMC’s lpar_netboot command, and install SLES 16!
If you want a completely automated installation, you must install an HTTP server such as nginx or Apache HTTPd and place your Agama JSON profile in the web server's directory.
Add the argument like below to grub.cfg to the Linux kernel parameters:
inst.auto=http://10.101.20.5/sles16.jsonInstall SLES 16 fully automated!
Have fun installing SLES 16 using IBM AIX!
Andrey
Hi, I am Andrey Klyachkin, IBM Champion and IBM AIX Community Advocate. This means I don’t work for IBM. Over the last twenty years, I have worked with many different IBM Power customers all over the world, both on-premise and in the cloud. I specialize in automating IBM Power infrastructures, making them even more robust and agile. I co-authored several IBM Redbooks and IBM Power certifications. I am an active Red Hat Certified Engineer and Instructor.
Follow me on LinkedIn, Twitter and YouTube.
You can meet me at events like IBM TechXchange, the Common Europe Congress, and GSE Germany’s IBM Power Working Group sessions.




This fills such a practical gap! I never thought about using AIX NFS and TFTP for deploying SLES, but it makes total sence when Power admins dont want extra infrastrucutre. The workaround for TFTP searchin in /boot instead of /tftpboot seems odd though, is that a known issue in 7.3 TL3?