SUSE Linux Enterprise Server 15

Raspberry Pi Quick Start

This guide contains an overview of SUSE Linux Enterprise Server for ARM on the Raspberry Pi* platform and will guide you through the setup procedure.

Author: Fabian Vogt, Release Engineer, SUSE
Author: Jay Kruemcke, Product Manager, SUSE
Author: Andreas Faerber, Project Manager, SUSE
Publication Date: August 31, 2018

1 Platform Overview

To be able to use SUSE Linux Enterprise Server for ARM on the Raspberry Pi, an Arm compatible Raspberry Pi* is required. SUSE Linux Enterprise Server 15 for ARM is tested to work on Raspberry Pi 3 Model B and Model B+ boards.

1.1 Technical Details of the Raspberry Pi 3 Model B

The Raspberry Pi is a series of small single-board computers based on a System on a Chip (SoC) by Broadcom*, featuring various peripherals on the board.

Overview of the Raspberry Pi 3 Model B connectors © Efa / English Wikipedia / CC BY-SA 3.0
Figure 1: Overview of the Raspberry Pi 3 Model B Connectors, © Efa / English Wikipedia / CC BY-SA 3.0
Photo of the Raspberry Pi 3 Model B connectors © Evan-Amos / Own work / Public Domain
Figure 2: Photo of the Raspberry Pi 3 Model B Connectors, © Evan-Amos / Own work / Public Domain
Selected Features of the Raspberry Pi 3 Model B/B+

The Broadcom BCM2837 SoC includes a quad-core Arm* Cortex*-A53 Application Processor supporting the ARMv8 32-bit and 64-bit instruction sets. With the default configuration, it is clocked up to 1.2 GHz.


1024 MiB DDR2 memory mounted on the back of the board.


Broadcom* VideoCore* IV providing OpenGL* ES 2.0 support. Displays can be connected over HDMI or composite (TRRS jack).


A USB Ethernet adapter on the board provides 10/100 MBit/s Ethernet (Model B) or 10/100/1000 MBit/s Ethernet with maximum throughput of 300 MBit/s (Model B+).


The BCM43438 chip on Model B supports IEEE-802.11b, IEEE-802.11g and IEEE-802.11n in the 2.4 GHz band. It also provides Bluetooth 2.0 to 4.1 (Low Energy). The BCM43455 chip on Model B+ supports IEEE-802.11b, IEEE-802.11g, IEEE-802.11n and IEEE-802.11ac in the 2.4 GHz and 5 GHz bands. It provides Bluetooth 4.2 (Low Energy).


The microSDHC card slot allows for a memory card to be inserted as primary boot medium.


The Raspberry Pi's main power source is the Micro USB connector. If your Raspberry Pi comes with a power supply, it is recommended to use the bundled power supply only.


A total of four USB 2.0 ports is available.


A 0.1 inch multi-function pin header is also available. Note that not all functionality of this header is exposed in SUSE Linux Enterprise Server for ARM 15.

1.2 SUSE Linux Enterprise Server for ARM 15

SUSE Linux Enterprise Server for ARM 15 is the first fully supported commercial Linux operating system release available for the Raspberry Pi. You can purchase subscriptions which entitle you to receive all released bug and security fixes, feature updates, and technical assistance from SUSE's worldwide support. Learn more about subscription and support options at

Note: Trial Version

If you want to try out SUSE Linux Enterprise Server for ARM 15 on the Raspberry Pi, SUSE will provide you with a trial version. This gives you access to free patches and updates for a period of 60 days. You must sign in to the SUSE Customer Center at using your Customer Center account credentials to receive this free offer. If you do not have a Customer Center account, you must create one to take advantage of the trial version.

Minimum System Requirements for Installation

  • Raspberry Pi 3 Model B or Raspberry Pi 3 Model B+

  • MicroSD card with at least 8 GB capacity

  • USB keyboard, mouse

  • HDMI cable and monitor

  • Power supply with at least 2.5 A capacity

1.2.1 Differences Compared to Raspbian

Raspbian is the de-facto default distribution for the Raspberry Pi. The following paragraphs provide a short overview of differences between SUSE Linux Enterprise Server for ARM on the Raspberry Pi and Raspbian.

Based on Upstream Kernel

Raspbian uses a kernel with modifications especially for the Raspberry Pi. SUSE Linux Enterprise Server for ARM uses the default SUSE Linux Enterprise kernel for AArch64 which is derived from the official mainline kernel.

AArch64 Instruction Set

SUSE Linux Enterprise Server for ARM on the Raspberry Pi is the first distribution for the Raspberry Pi using the AArch64 instruction set.

Boot Process

In Raspbian, the kernel is loaded directly. This is not supported by SUSE Linux Enterprise Server for ARM, where the U-Boot boot loader is used to provide an EFI boot environment. A GRUB2 EFI binary is chainloaded to provide a graphical boot screen.

Root Filesystem

SUSE Linux Enterprise Server for ARM on the Raspberry Pi uses Btrfs as file system for the root partition. Compression is enabled by default for better SD card performance.

1.2.2 YaST

YaST is the installation and configuration framework for SUSE Linux Enterprise. It is popular for its easy use, flexible graphical interfaces and the capability to customize your system quickly during and after the installation. YaST can be used to configure your entire system: You can configure hardware, set up networking, manage system services and tune your security settings. All these tasks can be reached from the YaST control center. To start it, choose YaST in the menu or run the command xdg-su -c yast2. You will be prompted to enter the password of the root user.

The YaST control center
Figure 3: The YaST Control Center

When started, YaST shows an overview of available modules (Figure 3, “The YaST Control Center”). Simply click an icon to open a module.

1.2.3 Zypper

Zypper is the package manager for SUSE Linux Enterprise. It is the tool for installing, updating and removing packages and for managing repositories.

The general syntax for Zypper invocations is:

zypper [global-options] command [command-options][arguments] ...
Note: Short Command Form

For most commands, there is both a short and a long form. An overview is available with zypper --help.

Installing a package
zypper install mplayer
Removing a package
zypper remove mplayer
List available patches
zypper list-patches
Install available patches
zypper patch
Note: Installing Software Updates

The recommended way to install available software updates is using the YaST Online Updater. To start it, choose Online Update in Settings under Desktop Apps in the IceWM menu.

1.2.4 Limitations

Graphics not hardware-accelerated

X.Org hardware acceleration is disabled to improve system stability and reliability.

For other limitations refer to the online version of the Release Notes at

2 Installation

SUSE Linux Enterprise Server for the Raspberry Pi is distributed as XZ-compressed image file for microSD cards. This section will guide you through the process of preparing the card to the first boot. If you already have a microSD card containing the image, you can skip this section and go straight to Section 3, “Booting for the First Time”.

Note: SD Card Space Requirements

It is recommended to use a card with a capacity of at least 8 GB.

Warning: All Data on the Card will be Lost!

By following the procedure below, all data on the SD card will be overwritten and therefore irrevocably lost! Be very careful when choosing the destination device of the image writing process!

2.1 Preparing the Card on Linux

Before and after you plug in the SD card, run the lsblk command. Between the two runs of lsblk, there should be a difference of one or more lines. The first column and first row is the name of the node representing the SD card in your system. To write the image to the card, use the dd command:

xz -cd IMAGE | dd of=/dev/SDCARDDEV bs=4096
Example 1: Writing the Image to the Card using dd

This command decompresses the image SLES15-RaspberryPi.aarch64-15.0-GM.raw.xz to the SD card mmcblk0.

xz -cd SLES15-RaspberryPi.aarch64-15.0-GM.raw.xz | sudo dd of=/dev/mmcblk0 bs=4096

2.2 Preparing the Card on Microsoft Windows* Operating Systems

The following steps will guide you through the installation of the image onto the SD card on Microsoft Windows operating systems. You need to meet these prerequisites:

  1. Open the downloaded image using Easy 7-Zip. Extract the file content into a directory with sufficient free space.

    7zip extraction dialog
  2. Run Win32 Disk Imager and select the extracted file as Image File. Then, choose the correct drive letter as Device. Click Write to start the procedure.

    Win32 Disk Imager Writing Process
    Note: Finding the correct device

    If you are unsure which drive letter to choose from in the list, remove the SD card and run Win32 Disk Imager again. The option that disappeared is the right target device.

2.3 Preparing the Card on macOS*

The following steps will guide you through the installation of the image onto the SD card on macOS. You need to meet these prerequisites:

  1. Open Finder at the location where the downloaded image is stored. Use the Open With selection to choose The Unarchiver instead of the default Archive utility and extract the content into a directory with sufficient free space.

    Open the Image with The Unarchiver
  2. Open a Terminal window and change into the destination directory of the uncompressed image. Enter diskutil list before and after the SD card is inserted to find out which device to use.

  3. Run diskutil unmountDisk /dev/diskX, where X is the disk number from the previous step.

  4. Run sudo dd bs=4096 if=imageFile.raw of=/dev/diskX, where X is the disk number and imageFile.raw is the name of the uncompressed image.

    tux > sudo dd bs=4096 if=SLES15-RaspberryPi.aarch64-15.0-GM.raw.xz of=/dev/disk4
    5550+0 records in
    5550+0 records out
    5819596800 bytes transferred in 1131.796649 secs (5141910 bytes/sec)
  5. Now unmount the disk (which is now labelled EFI) as usual.

3 Booting for the First Time

After insertion of the prepared microSD card, connect a display, Ethernet and USB keyboard and mouse first, then provide power over Micro USB. After a few seconds you should be able to see a few lines of text on the screen. If that is not the case, recheck the connection to the display.

Note: Operation Without Mouse

YaST can be used without a mouse by only using the keyboard. Every GUI element has an accelerator configured, visible as underlined letter. To activate such an accelerator, press the letter together with Alt.

On the first boot, the system will expand to fill the entire SD card, so be patient.

3.1 Initial System Setup with YaST

After a few minutes, YaST will lead you through the initial system setup.

  1. First, the system language and keyboard layout needs to be configured. Use the drop-down boxes and click Next.

    YaST showing keyboard and language configuration on first boot
  2. Select Next on this screen.

    YaST showing a Welcome message
  3. Read the License Agreement. You need to accept the license by selecting I Agree to the License Terms and choosing Next.

    YaST displaying the license text
  4. Select the time zone either by clicking the area in the map or selecting region and zone in the drop-down boxes.

    YaST asking for the time zone

    If the time and date shown at the bottom on the screen are incorrect, setup the Network Time Protocol client by following these steps:

    1. Click Other Settings to open the NTPD configuration.

    2. Click Other Settings to synchronize date and time with NTPD.

    3. After the synchronization completed, click Accept to return to the Time and Date overview.

  5. Click Next to proceed.

  6. On this page, you can configure a default user account.

    YaST showing basic user configuration
    Note: Automatic Login not supported

    Automatic Login is not supported by xdm, the default display manager. Install gdm after the installation to make it work.

  7. If you chose to skip the previous step or if you chose not to set a root password, you will be asked to provide one now. Do not forget what you enter here, you will need it for administration!

    YaST asking you to set a password for the root user
  8. On this screen you need to enter your E-mail address and the registration code you received. You can also choose to Skip Registration.

    YaST asking for registration information
    Note: Skipping the Registration

    If you choose to skip the registration here, you will not receive updates or patches until you registered manually using YaST.

    After successful registration you will be given the option to activate Modules as additional package repositories.

  9. Click Finish to exit the setup wizard and continue the system start-up.

    YaST congratulating you for finishing the initial configuration

3.2 The Desktop Environment

When the system finished booting, you will see the following login screen:

XDM login screen after the system has booted
Figure 4: XDM Login Screen

Type in the user name and password you chose during the initial configuration. The default IceWM desktop starts. By using the menu, you can start an XTerm terminal:

IceWM desktop after login
Figure 5: IceWM desktop

4 General System Usage

After the initial configuration procedure and the first boot of the system, you can now use various components of the system.

4.1 Bluetooth*

The Raspberry Pi has a Bluetooth* controller on-board that can be used for various purposes, like wireless keyboards, mice or audio devices.

To enable the Bluetooth* controller for use with bluetoothctl and related applications, run on Model B:

root # hciattach /dev/ttyAMA1 bcm43xx 921600
Flash firmware /lib/firmware/BCM43430A1.hcd
Set Controller UART speed to 921600 bit/s
Device setup complete

You can then use hciconfig hci0 up to bring the device up and use hcitool scan to scan the environment for discoverable devices.

5 Initial System Configuration

In this section it is explained how to perform the initial system configuration for SUSE Linux Enterprise Server for ARM 15 on the Raspberry Pi.

5.1 Changing the Host Name

Follow these steps to change the default host name:

  1. Open the YaST network module either by running yast2 lan or clicking the network icon in the YaST control center.

  2. Select Hostname/DNS in the top tab bar.

  3. Type the new host name into the Hostname field.

  4. Click OK to save the change. After YaST exited, you need to log out and in again.

5.2 Setting up Networking

The default configuration has DHCP enabled on the Ethernet port. If that suits your network environment, you can skip this section. If you require the use of a static IP address, use YaST:

  1. Open the YaST network module either by running yast2 lan or clicking the network icon in the YaST control center.

  2. In YaST, you will see the network interface being selected. Select the built-in Ethernet and choose Edit to open the address configuration.

  3. Select Statically Assigned IP Address and type in the desired values for IP Address and Subnet Mask. Click Next.

  4. With a static network configuration, you will also need to specify a DNS server (if applicable) and a gateway. For the gateway, select Routing in the tab bar and enter the IPs of the gateways into the specific fields.

  5. The DNS server is set in the Hostname/DNS tab. After choosing that tab, enter the IPs of the name servers into the respective Name Server fields.

Similarly to the procedure described above, YaST also lets you configure the built-in Wi-Fi network adapter.

For detailed information about the network configuration in SUSE Linux Enterprise Server, consult the respective sections of the SUSE Linux Enterprise Server Deployment Guide and the SUSE Linux Enterprise Server Administration Guide.

5.3 Registration Process

It is very important to register your SUSE Linux Enterprise Server for ARM subscription to ensure full functionality of your Raspberry Pi system. The SD card image provided by SUSE contains a minimal set of packages that are intended for the initial boot process and to get your Raspberry Pi onto the network.

When you have registered your SUSE Linux Enterprise Server for ARM subscription, you can download other packages you may need, such as compilers. The SUSE Linux Enterprise Server version that runs on your Raspberry Pi is the same version that runs on x86, Power, IBM Z, or on other Arm-based systems.

Important: Setting the Clock

Because the Raspberry Pi does not have a persistent Real Time Clock, make sure that the clock is set to the current date and time before attempting to use Zypper or YaST to install additional packages.

You can register your system either during first boot or via the YaST Product Registration module.

Note: Evaluation Code

Sixty day evaluation subscriptions may be requested at the following page:

After you obtained a registration code from a subscription card, you need to activate your subscription on the SUSE Customer Center at:

To register your subscription, perform the following steps:

  1. Log in to the SUSE Customer Center using a browser on another machine. Create an account if required:

    Log in to the SUSE Customer Center
  2. Click Manually Activate Subscriptions:

    Manual activation of subscription.
  3. Click the dialog field Activate a single subscription:

    Activate a single subscription.
  4. Enter the registration code and accept the terms and conditions:

    Enter the registration code.
  5. Confirm the subscription activation and the organization assignment. Click Activate:

    Confirm the activation.
  6. Your subscription is now active and ready to be used:

    You now have an active subscription.

6 Product Documentation

This introduction only covered the most basic tasks.

6.1 Product Documentation

You can find the complete documentation for SUSE Linux Enterprise Server 15 at

Note: Applicability of Product Documentation

Not all content in the product documentation applies to SUSE Linux Enterprise Server for ARM on the Raspberry Pi, because the Raspberry Pi differs largely from other hardware platforms.

6.2 SUSE Forums

A valid and activated subscription entitles you to receive bug and security fixes, feature updates, and technical assistance from SUSE's support organization. Learn more at Via the SUSE Customer Center at you can open an incident.

In addition, SUSE has provided conversation forums where you can get answers to questions. Go to Under the main forum category SUSE Linux Enterprise Server select the sub-forum SLES for Raspberry Pi.

Important: Forums Are No Official Support Channel

The SUSE Forum is no official support channel from SUSE. The individual articles or statements were contributed voluntarily by community members and users of the respective products. SUSE cannot verify either that the actions described in the articles do what they claim to do or that they do not have unintended consequences. Therefore, neither SUSE LLC, its affiliates, nor the authors may be held liable for possible errors or the consequences thereof.

Visit for more information about official support options.

7 Legal Notice

Copyright ©2006–2018 SUSE LLC and contributors. All rights reserved.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled GNU Free Documentation License.

SUSE, the SUSE logo and YaST are registered trademarks of SUSE LLC in the United States and other countries. For SUSE trademarks, see Linux is a registered trademark of Linus Torvalds. Other names or trademarks mentioned in this document may be trademarks or registered trademarks of their respective owners.

All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its affiliates, the authors, nor the translators shall be held liable for possible errors or the consequences thereof.

Print this page