Linux for SPARC 1.0

Release Notes

October 2015

Abstract

This document contains information on release 1.0 of Linux for SPARC.

This document is intended for users and administrators of Linux for SPARC. It describes potential issues and the corresponding workarounds you may encounter while using Linux on the SPARC platform. Oracle recommends that you read this document before installing Linux for SPARC.

Document generated on: 2015-10-09 (revision: 3341)


Table of Contents

Preface
1 Introduction
1.1 Modifications for SPARC
1.2 Known Issues and Limitations
2 Availability and Installation
2.1 Installing on Oracle VM Server for SPARC
2.2 Installing on Bare Metal Servers
2.3 About Boot Disk Partitioning
2.4 About Kickstart and Network Installation
2.5 Configuring a Network Installation Server
2.5.1 Setting up a New NFS Server
2.5.2 Configuring an Existing NFS Server
2.5.3 Setting up a New HTTP Server
2.5.4 Configuring an Existing HTTP Server
2.5.5 Setting up a Network Installation Server
2.6 Installing Linux for SPARC as an Oracle VM for SPARC Virtual Appliance

Preface

The Linux for SPARC Release Notes provides a summary of the most notable changes and differences and lists known issues and possible workarounds for Linux for SPARC.

Audience

This document is written for system administrators who want to use Linux on the SPARC platform. It is assumed that readers have a general understanding of the Linux operating system.

Conventions

The following text conventions are used in this document:

Convention

Meaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

Chapter 1 Introduction

Linux for SPARC release 1.0 is a reference platform incorporating Oracle's work to improve Linux on modern SPARC hardware. The kernel is based on the mainline 4.1 kernel, while user-space packages are consistent with Oracle Linux 6 for x86_64 with a few exceptions. Both the kernel and some user space packages include SPARC-specific optimizations.

Linux for SPARC is a 64-bit operating system that requires a 64-bit SPARC CPU. You can install Linux for SPARC on both bare metal servers and in guest domains under Oracle VM Server for SPARC version 3.0 or later. Any SPARC CPU model that supports the sun4v architecture (that is, all UltraSPARC T, SPARC T4, SPARC T5, SPARC M5 and Fujitsu SPARC64-X) should be capable of running Linux for SPARC. Oracle has tested Linux for SPARC on a wide variety of bare-metal and guest-domain systems as shown in the following table:

System

Bare Metal

Guest Domain

Oracle SPARC M10-4S

Not tested.

Minimally tested.

Oracle SPARC T3-2

Not tested.

Minimally tested.

Oracle SPARC T4-1

Minimally tested.

Minimally tested.

Oracle SPARC T4-2

Minimally tested.

Minimally tested.

Oracle SPARC T5-2

Minimally tested.

Minimally tested.

Oracle SPARC T5-4

Minimally tested.

Minimally tested.

Oracle SPARC T5-8

Minimally tested.

Minimally tested.

Sun Fire T2000 Server

Minimally tested.

Minimally tested.

Sun SPARC Enterprise T5220 (T2) Server

Not tested.

Minimally tested.

Sun SPARC Enterprise T5240 Server

Minimally tested.

Not tested.

Sun SPARC Enterprise T5440 Server

Minimally tested.

Not tested.

For more information about Oracle VM Server for SPARC, see the Oracle VM Server for SPARC documentation.

Oracle makes Linux for SPARC available for the benefit of the Linux community. Oracle does not offer support for Linux for SPARC. However, if you have questions or encounter issues please use the appropriate Linux for SPARC mailing list. Mailing list and other contact information is available at http://oss.oracle.com/projects/linux-sparc.

1.1 Modifications for SPARC

This release contains modifications for the SPARC platform relative to the x86 platform, including:

  • anaconda

    The installer has been modified to support Oracle VM Server for SPARC and to accommodate changes to path names, differences in disk partitioning, package grouping, networking, boot loader configuration, and a different kernel. For performance reasons, calls to gzip have been replaced by pigz.

  • binutils

    The GNU binary utilities have been modified to provide the required opcodes for the T4 crypto instructions.

  • devtoolset-3

    The Developer Toolset includes the GNU Compiler Collection, GNU Debugger, Eclipse development platform, and other development, debugging, and performance monitoring tools. The devtoolset-3 packages are not included on the DVD image, but you can install them from Oracle Public Yum if you enable access to the linux_sparc64_devtoolset3 repository.

  • elftoaout

    The elftoaout utility converts a static ELF binary to a static a.out binary. If you use an ELF system on SPARC, run elftoaout on the kernel image so that the SPARC PROM can network boot the image.

  • gcc

    Multiarch support for building and running 32-bit applications is available by upgrading the gcc package from Oracle Public Yum after installation.

  • gdb

    The GNU debugger has been modified to work around SPARC toolchain issues (for example, memory alignments).

  • glibc

    The GNU Project implementation of the C standard library.

  • libaio

    The libaio library, which provides the API for asynchronous I/O.

  • linux

    Patches and modifications to the kernel.

  • openssl

    The openssl package has been modified to provide support for the built-in encryption functions of the SPARC T4/T5 chip. The T4 crypto engine implements acceleration for the following cryptographic algorithms:

    • Advanced Encryption Standard (AES) algorithms:

      aes-128-cbc, aes-192-cbc, aes-256-cbc, aes-128-ctr, aes-192-ctr, aes-256-ctr, aes-128-cfb8, aes-192-cfb8, aes-256-cfb8, aes-128-ecb, aes-192-ecb, and aes-256-ecb

    • Data Encryption Standard (DES) algorithms:

      des-cbc, des-ede3-cbc, des-ecb, and des-ede3-ecb

    • Cryptographic hash functions:

      md5, sha1, sha224, sha256, sha384, and sha512

    You can use the openssl speed -evp command to test the speed of these algorithms, for example:

    # openssl speed -evp aes-128-cbc

    To test the speed without T4 acceleration, set the OPENSSL_DISABLE_T4 environment variable to any value, for example:

    # OPENSSL_DISABLE_T4=1 openssl speed -evp aes-128-cbc

    The openssl engine command reports (no T4) if the T4 encryption instructions are either not available or have been disabled.

  • parted

    Sun disk label support has been implemented.

  • pigz

    The pigz utility is a fully functional replacement for gzip. Its parallel implementation exploits multiple processors and multiple cores to the maximum extent possible when compressing data.

  • prtconf

    The prtconf utility dumps the SPARC OpenPROM device tree in a compact, readable format similar to that produced by prtconf on Oracle Solaris. It also allows you to change OpenPROM options.

  • silo

    The silo package installs the SILO boot loader. SILO installs in the system's boot block. You can configure it to boot Linux for SPARC, Oracle Solaris, and SunOS.

  • udev

    The udev dynamic device manager has been updated to support virtual devices that Oracle VM creates for SPARC client device drivers.

1.2 Known Issues and Limitations

This section describes known issues in this release.

ext4 File System Must Be Selected During Installation

The Installer offers the choice of btrfs, ext4, or xfs for root (/) and other file systems. However, only ext4 can be used at present. Selecting btrfs or xfs results in an unbootable system.

NMI Messages When Booting in a Guest Domain

Messages such as the following might be reported when booting Linux for SPARC in a guest domain:

Performance events:
Testing NMI watchdog ...
WARNING: CPU#0: NMI appears to be stuck (0->0)!
Please report this to bugzilla.kernel.org,
and attach the output of the 'dmesg' command.

WARNING: CPU#1: NMI appears to be stuck (0->0)!
Please report this to bugzilla.kernel.org,
and attach the output of the 'dmesg' command.
...

If supported by the firmware, Hypervisor and ldm command, the workaround is to grant access to the strand performance counters:

# ldm set-domain perf-counters=strand guest_domain

The following table lists examples of configurations that support or do not support this workaround:

VM Emulation

Configuration

Supports Workaround

Oracle SPARC T4

Firmware 8.6.0.b (ldm v3.2.0.0.41, Hypervisor v.1.13.2.b)

Yes

Oracle SPARC T5

Firmware 9.3.0.b (ldm v3.1.1.0.5, Hypervisor v.1.13.2.b)

No

Bare-Metal Installation Limitations

Oracle SPARC T5-2, T5-4 and T5-8 require network installation using HTTP or NFS. For information on setting up a network installation server, see Section 2.5, “Configuring a Network Installation Server”.

Unavailable Cryptographic Operation Codes

When booting Linux for SPARC on older-specification systems such as the Sun SPARC Enterprise T5240 Server, messages such as the following might be reported:

camellia_sparc64: sparc64 camellia opcodes not available.
crc32c_sparc64: sparc64 crc32c opcode not available.
sha1_sparc64: sparc64 sha1 opcode not available.
sha256_sparc64: sparc64 sha256 opcode not available.
sha512_sparc64: sparc64 sha512 opcode not available.
md5_sparc64: sparc64 md5 opcode not available.
aes_sparc64: sparc64 aes opcodes not available.
des_sparc64: sparc64 des opcodes not available.

You can ignore these messages, which indicate that the system does not implement operation codes for cryptographic acceleration in hardware.

Disk Used for Installation Must Not Contain a Sun VTOC Partition

The disk on which you will install the operating system must not contain a Sun VTOC partition. Otherwise, Anaconda fails during installation with the error: PartitionException: Unable to satisfy all constraints on the partition.

Use the following workaround:

  1. After the systems displays the message Welcome to Linux for SPARC, press [Ctrl]+Z to access the shell.

  2. Use the dd command to erase the first 10 MB of the disk device:

    # dd if=/dev/zero of=/dev/device bs=1024k count=10 oflag=direct
  3. Enter exit to exit the shell and return to the installer.

Unsupported Features in a Guest Domain

The following features are not available when running Linux for SPARC in a guest domain under Oracle VM Server for SPARC:

  • Domain migration

  • Physical I/O using SR-IOV with Ethernet, InfiniBand, or Fibre Channel adapters

  • Guest OS triggers for suspend/resume and reboot messages

  • Dynamic reconfiguration

  • Alternate MAC addresses

  • Hybrid I/O on virtual network interfaces

  • Multipathing on virtual disks

  • Installation on a disk slice provided from the service domain

  • A command to obtain information about the host platform and control domain from within the guest domain (similar to virtinfo on Oracle Solaris)

Cannot Boot a System with Encrypted Partitions

Linux for SPARC cannot boot if you select to encrypt the system's partitions during installation.

Network Installation

Bootstrapping an installation over the network by using boot net:dhcp at the OpenBoot prompt (similar to using PXE boot on x86) is not supported.

Chapter 2 Availability and Installation

Linux for SPARC is available as ISO installation media and as an Open Virtualization Archive (OVA) file from https://oss.oracle.com/projects/linux-sparc/.

An installed Linux for SPARC system is configured to access Oracle Public Yum for package updates. By default, the linux_sparc64_latest repository is enabled and the linux_sparc64_devtoolset3 repository is disabled.

The distribution can be installed either in a guest domain under Oracle VM Server for SPARC (version 3.0 or later) or on a bare metal server.

The kernel's source code is available via a public git source code repository at http://oss.oracle.com/git/.

2.1 Installing on Oracle VM Server for SPARC

Note

Installing Linux for SPARC on an Oracle VM Server for SPARC must be performed from the command line from within the control domain.

Not all Oracle VM Server for SPARC features might be available.

Linux for SPARC is also available as a virtual appliance that you can use with Oracle VM Server for SPARC. See Section 2.6, “Installing Linux for SPARC as an Oracle VM for SPARC Virtual Appliance”.

For information on using Oracle VM Server for SPARC, including how to set up and configure the control domain and guest domains, refer to the Oracle VM Server for SPARC Administration Guide in the Oracle VM Server for SPARC documentation.

You must be able to access the downloaded ISO image for Linux for SPARC from the control domain. This image is provided to the guest domain as a virtual CD-ROM device.

Note

The following procedure describes how to set up a guest domain and install Linux for SPARC from the command line. It does not cover how to use OVM Manager to perform setup and installation.

To install Linux for SPARC in a guest domain on Oracle VM for SPARC:

  1. Download the full Linux for SPARC DVD image file (linux-sparc-1.0-DVD.iso) from http://oss.oracle.com/projects/linux-sparc/files to the control domain.

  2. From the control domain, create a guest domain.

    For example, create a guest domain with two virtual CPUs and 2 GB of RAM, connected to an existing network service (virtual switch) named primary-vsw0.

    # ldm add-domain guest_domain
    # ldm add-vcpu 2 guest_domain
    # ldm add-memory 2g guest_domain
    # ldm add-vnet vnet0 primary-vsw0 guest_domain
    # mkfile 20g /path/to/disk_image
    # ldm add-vdiskserverdevice /path/to/disk_image linuxdisk@primary-vds0
    # ldm add-vdisk vdisk1 linuxdisk@primary-vds0 guest_domain
  3. Make the ISO image available to the guest domain, set it as the default boot device, and disable automatic booting:

    # ldm add-vdiskserverdevice /path/to/linux-sparc-1.0-DVD.iso lfs.iso@primary-vds0
    # ldm add-vdisk cdrom lfs.iso@primary-vds0 guest_domain
    # ldm set-var boot-device=cdrom guest_domain
    # ldm set-var auto-boot\?=false guest_domain
  4. Start the guest domain:

    # ldm bind-domain guest_domain
    # ldm start guest_domain
  5. Determine the console TCP port of the guest domain:

    # ldm list-domain guest_domain
    NAME          STATE    FLAGS  CONS   VCPU MEMORY   UTIL  UPTIME
    guest_domain  active   -t---  5014   2    2G       42%   5s

    The console TCP port is the value in the CONS column (5014 in this example).

  6. Connect to the console of a guest domain, and press Enter to display the OpenBoot prompt ({0} ok):

    # telnet localhost port
    Trying ::1...
    telnet: connect to address ::1: Connection refused
    Trying 127.0.0.1...
    Connected to t4-2.
    Escape character is '^]'.
    
    Connecting to console "guest_domain" in group "guest_domain" ...
    Press ~? for control options .. <Enter>
    
    {0} ok
  7. Choose between performing text-based installation or graphical installation. You can perform text-based installation with or without networking configured. Graphical installation requires you configure networking and a VNC server on the system being installed so that you can use a remote VNC client to access the system. You can configure networking to use DHCP to obtain a network address or you can manually assign an IP address.

    The following are some examples of the combinations that are possible:

    • To perform a text-based installation without network access, use the following command to boot from the virtual DVD device:

      {0} ok boot cdrom linux text
      Note

      Some advanced configuration options, such as advance disk partitioning schemes, are not available in text mode. You can install a smaller, default system and use yum update to expand it after installation.

      Alternatively, you can use a Kickstart file to define an advanced system layout. See Section 2.4, “About Kickstart and Network Installation”.

    • To perform a text-based installation with network access, using DHCP to obtain an IP address for the eth0 network interface, and using an HTTP-served Kickstart file to perform the installation:

      {0} ok boot cdrom linux text ip=dhcp noipv6 ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks
    • To perform a text-based installation with network access, specifying an IP address manually for the eth0 network interface, and using an HTTP-served Kickstart file to perform the installation:

      {0} ok boot cdrom linux text ip=ask ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks
    • To be able to perform a graphical installation from a VNC client with network access to the system being installed, use a boot command such as the following to enable the VNC server and obtain an IP address for the eth0 network interface by using DHCP:

      {0} ok boot cdrom linux vnc ip=dhcp noipv6 ksdevice=eth0
      Note

      Your guest domain must be able to use DHCP to obtain an IP address.

      The installation process attempts to obtain an IP address from the DHCP server before starting the VNC service:

      18:47:05 Starting VNC...
      18:47:07 The VNC server is now running.
      18:47:07
      
      WARNING!!! VNC server running with NO PASSWORD!
      You can use the vncpassword=<password> boot option
      if you would like to secure the server.
      
      18:47:07 Please manually connect your vnc client to sparc:1 (192.168.1.83) to begin the install.
      Press <enter> for a shell
      18:47:08 Starting graphical installation.

      In this example, from the remote host you would need to connect the VNC client to 192.168.1.83:1:

      $ vncviewer 192.168.1.83:1
    • To be able to perform a graphical installation from a VNC client with network access to the system being installed, use a boot command such as the following to enable the VNC server and enter an IP address manually for the eth0 network interface:

      :{0} ok boot cdrom linux vnc ip=ask ksdevice=eth0

      From the remote host, connect the VNC client to the IP address that you configure, for example:

      $ vncviewer 192.168.1.159:1
  8. Perform the Linux installation by using the menus provided.

  9. To allow the installed system to boot automatically from the virtual disk, log into the control domain and change the boot device from the virtual CD-ROM to the virtual hard disk:

    # ldm set-var boot-device=vdisk1 guest_domain
    # ldm set-var auto-boot\?=true guest_domain
  10. After the installation has finished, reboot the guest domain.

Note

If you want to make changes to a domain, first stop and unbind the domain. Such changes include altering number of virtual CPUs, altering the size of virtual memory, adding or removing virtual disks, or adding or removing network devices. After applying the changes, you can then rebind and restart the domain.

The following example changes the number of CPUs in a domain to 4 and the amount of memory to 4 GB.

# ldm stop guest_domain
# ldm unbind-domain guest_domain
# ldm set-vcpu 4 guest_domain
# ldm set-memory 4g guest_domain
# ldm bind-domain guest_domain
# ldm start guest_domain

2.2 Installing on Bare Metal Servers

SPARC servers use the OpenBoot firmware to bootstrap the environment. For detailed instructions on how to use OpenBoot, refer to the Oracle Solaris documentation.

Note

Oracle SPARC T5-2, T5-4 and T5-8 servers can be installed from an ISO image on an HTTP or NFS server. Using a virtual CD-ROM created with Oracle Integrated Lights Out Manager (ILOM) does not work for these servers.

The disk on which you will install the operating system must either be unpartitioned or not contain a Sun VTOC partition. Otherwise, Anaconda fails during installation with the error: PartitionException: Unable to satisfy all constraints on the partition.

For more information about the limitations of Sun disk label partitioning, see Section 2.3, “About Boot Disk Partitioning”.

To install Linux for SPARC on a bare metal server:

  1. Download the full Linux for SPARC DVD image file (linux-sparc-1.0-DVD.iso) from http://oss.oracle.com/projects/linux-sparc/files.

  2. Write the image file to a DVD or copy it to a local disk that is accessible using Oracle ILOM.

  3. Perform one of the following steps to access the OpenBoot prompt:

    • Press STOP-A or reboot the host.

    • If you use Oracle ILOM to access the system, enter the following command:

      \-> start /SP/console
      Are you sure you want to start /SP/console (y/n)? y
      
      Serial console started.  To stop, type #.
      <return>
      {0} ok

    The {o} ok prompt indicates that the OpenBoot firmware is in control of the system.

    If you have difficulty accessing the OpenBoot prompt, refer to the guidelines at:

    http://docs.oracle.com/cd/E19836-01/E20746/z40002fe1298584.html

  4. Use the setenv command to set the value of auto-boot? to false:

    {0} ok setenv auto-boot? false
    auto-boot?  false

    If auto-boot? is set to false, the system does not attempt to bootstrap the system from the defined boot devices (usually disk and net). You can change the value back to true after installation when you are satisfied that the system is performing as expected.

  5. Use the show-disks command to examine the drives that are attached to the system, and select the disk on which you want to install Linux for SPARC:

    {0} ok show-disks
    a) /pci@0/pci@0/pci@a/scsi@0/disk
    q) NO SELECTION
    Enter Selection, q to quit: a
    /pci@0/pci@0/pci@a/scsi@0/disk has been selected.

    For convenience, you can use the nvalias command to create a device alias for the selected device:

    {0} ok nvalias oldisk [Ctrl]+Y

    OpenBoot expands [Ctrl]+Y inline to the currently selected disk, /pci@0/pci@0/pci@a/scsi@0/disk.

    You can use the devalias command to check what aliases are defined, for example:

    {0} ok devalias
    screen                   /pci@0/pci@0/pci@2/pci@0,2/display@1
    nvram                    /virtual-devices/nvram@3
    cdrom                    /pci@0/pci@0/pci@a/scsi@0/disk@2,0:f
    disk3                    /pci@0/pci@0/pci@a/scsi@0/disk@3
    disk2                    /pci@0/pci@0/pci@a/scsi@0/disk@2
    disk1                    /pci@0/pci@0/pci@a/scsi@0/disk@1
    disk0                    /pci@0/pci@0/pci@a/scsi@0/disk@0
    disk                     /pci@0/pci@0/pci@a/scsi@0/disk@0
    oldisk                   /pci@0/pci@0/pci@a/scsi@0/disk
    scsi                     /pci@0/pci@0/pci@a/scsi@0
    display                  /pci@0/pci@0/pci@2/pci@0,2/display@1
    net0                     /pci@0/pci@0/pci@8/network@0
    net                      /pci@0/pci@0/pci@8/network@0
    virtual-console          /virtual-devices/console@1
    name                     aliases

    The @N syntax refers to the port number on a physical connector. disk@0 is the disk controller. disk@1, disk@2, and so on are the physical disks. In this example, the installation is performed on disk1.

  6. Insert the DVD containing the ISO image into the system's DVD-ROM drive or use Oracle ILOM to make the image available as a virtual CD-ROM (rcdrom).

  7. Choose between performing text-based installation or graphical installation. You can perform text-based installation with or without networking configured. Graphical installation requires you configure networking and a VNC server on the system being installed so that you can use a remote VNC client to access the system. You can configure networking to use DHCP to obtain a network address or you can manually assign an IP address.

    The following are some examples of the combinations that are possible:

    • If you make the image available as an rcdrom, use the following command to boot:

      {0} ok boot rcdrom
    • To perform a text-based installation without network access, use the following command to boot from the DVD-ROM drive:

      {0} ok boot cdrom linux text
      Note

      Some advanced configuration options, such as advance disk partitioning schemes, are not available in text mode. You can install a small, default system and use yum update to expand it after installation.

      Alternatively, you can use a Kickstart file to define an advanced system layout. See Section 2.4, “About Kickstart and Network Installation”.

    • To perform a text-based installation with network access, using DHCP to obtain an IP address for the eth0 network interface, and using an HTTP-served Kickstart file to perform the installation:

      {0} ok boot cdrom linux text ip=dhcp noipv6 ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks
    • To perform a text-based installation with network access, specifying an IP address manually for the eth0 network interface, and using an HTTP-served Kickstart file to perform the installation:

      {0} ok boot cdrom linux text ip=ask ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks
    • To be able to perform a graphical installation from a VNC client with network access to the system being installed, use a boot command such as the following to enable the VNC server and obtain an IP address for the eth0 network interface by using DHCP:

      {0} ok boot cdrom linux vnc ip=dhcp noipv6 ksdevice=eth0

      The installation process attempts to obtain an IP address from the DHCP server before starting the VNC service:

      18:47:05 Starting VNC...
      18:47:07 The VNC server is now running.
      18:47:07
      
      WARNING!!! VNC server running with NO PASSWORD!
      You can use the vncpassword=<password> boot option
      if you would like to secure the server.
      
      18:47:07 Please manually connect your vnc client to sparc:1 (192.168.1.83) to begin the install.
      Press <enter> for a shell
      18:47:08 Starting graphical installation.

      In this example, from the remote host you would need to connect the VNC client to 192.168.1.83:1, for example:

      $ vncviewer 192.168.1.83:1
    • To be able to perform a graphical installation from a VNC client with network access to the system being installed, use a boot command such as the following to enable the VNC server and enter an IP address manually for the eth0 network interface:

      :{0} ok boot cdrom linux vnc ip=ask ksdevice=eth0

      From the remote host, connect the VNC client to the IP address that you configure, for example:

      $ vncviewer 192.168.1.159:1
  8. Perform the installation by using the menus provided.

  9. After the installation has finished, reboot the system.

    {0} ok boot disk1 linux-uek

    You can specify additional boot options on this line. For example, to disable NUMA:

    {0} ok boot disk1 linux-uek numa=off
  10. When you are satisfied that the system boots correctly, return it to the OpenBoot prompt, and use the setenv command to set the value of auto-boot? to true:

    {0} ok setenv auto-boot? true
    auto-boot?  true

2.3 About Boot Disk Partitioning

The SPARC architecture uses Sun disk label partitioning format (also known as SMI VTOC), which has the following limitations:

  • The partition table is restricted to 8 partitions (0-7), where partition 2 represents the entire disk and cannot be used.

  • The partition format uses cylinder-head-sector addressing (CHS) rather than Logical Block Addressing (LBA). As a result, the maximum size of the system disk is 2 TB. However, additional disks can use a GUID Partition Table, which Linux for SPARC can address and so are not limited by the capabilities of the OpenBoot firmware drivers.

  • The Sun Label partitioning scheme aligns data by cylinder boundary and not by sector. As a result, the installer adjusts any values that you enter to be cylinder-aligned. For example, if you specify a a partition size of 1000 MB, the actual size would perhaps be 1004 MB.

  • The default layout for the system disk assigns 1 GB of the system disk to the boot partition in ext3 file system format. The remainder of the system disk becomes a single logical volume that is outside the control of the OpenBoot firmware, and is divided into a swap space volume and a volume for the remainder of the system installation.

2.4 About Kickstart and Network Installation

You can use a Kickstart file to have the installer automatically install the system. Usually, you would specify the file by its location on an HTTP server that is accessible over the network, for example:

{0} ok boot cdrom linux text ip=dhcp noipv6 ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks

The ks option specifies the location of the Kickstart file sparc2.ks on an HTTP server at the specified IP address.

In the next example, the system initially boots from the DVD-ROM drive. After the installer starts and uses DHCP to configure the system's network settings, it switches to the network installation server specified by the method option. Depending on your network, accessing a network installation server can be faster than using a DVD.

{0} ok boot cdrom linux text method=nfs:192.168.1.100:/var/OSimage/LfS ip=dhcp noipv6 \
ksdevice=eth0 ks=http://192.168.1.100/sparc2.ks sshd=1 ssh

The sshd=1 and ssh options enable the system to accept incoming SSH connections during installation, which can be useful for debugging installation problems.

The next example uses HTTP instead of NFS to access the network installation server and uses manual rather than Kickstart installation:

{0} ok boot cdrom linux text method=http://192.168.1.100/LfS ip=dhcp noipv6

2.5 Configuring a Network Installation Server

You can set up a network installation server to host the RPM packages and make them available using HTTP and/or NFS. This server must have sufficient storage space to host the full Linux for SPARC installation DVD image, and you must configure it to serve the image files to the target systems on which you want to install Linux for SPARC.

The procedures in this section assume that you are configuring a Linux system as a network installation server.

Perform one of the procedures in the following sections to set up an HTTP and/or NFS server on the system that will act as the network installation server:

You can then set up the network installation server. See Section 2.5.5, “Setting up a Network Installation Server”.

2.5.1 Setting up a New NFS Server

Note

This procedure assumes that you are setting up a Linux system as an NFS version 4 server. Using NFSv4 greatly simplifies firewall configuration as you need only configure a single rule for TCP port 2049.

To set up an NFS server:

  1. Install the NFS server packages (typically nfs-utils).

    # yum install nfs-utils
  2. Create the directory where you will copy the full Linux for SPARC DVD image, for example /var/OSimage/LfS:

    # mkdir -p /var/OSimage/LfS
  3. Edit the NFS exports configuration file (typically /etc/exports) as follows.

    1. Add an entry for the directory where you will copy the DVD image.

      The following example allows read-only access to the directory /var/OSimage/LfS for any NFS client on the 192.168.1 subnet:

      /var/OSimage/LfS 192.168.1.0/24(ro) 
    2. Save your changes to the file.

  4. Start the NFS server, and configure it to start after a reboot, for example:

    # service rpcbind start
    # service nfs start
    # service nfslock start
    # chkconfig rpcbind on
    # chkconfig nfs on
    # chkconfig nfslock on

    On a system that implements systemd, use the systemctl command, for example:

    # systemctl start nfs-server
    # systemctl enable nfs-server
  5. If you have configured a firewall on your system, configure it to allow incoming NFSv4 requests from NFS clients.

    For example, use the following commands to configure iptables to allow NFSv4 connections and save the change to the firewall configuration:

    # iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 2049 -j ACCEPT
    # service iptables save

    On a system that implements firewalld, use the firewall-cmd command, for example:

    # firewall-cmd --add-service=nfs
    # firewall-cmd --permanent --add-service=nfs

2.5.2 Configuring an Existing NFS Server

To configure an existing NFS server:

  1. Create the directory where you will copy the full Linux for SPARC DVD image, for example /var/OSimage/LfS:

    # mkdir -p /var/OSimage/LfS
  2. Use the exportfs command to export the directory.

    # exportfs -i -o options client:export_dir

    For example, to allow read-only access to the directory /var/OSimage/LfS for any NFS client on the 192.168.1 subnet:

    # exportfs -i -o ro 192.168.1.0/24:/var/OSimage/LfS

2.5.3 Setting up a New HTTP Server

Note

These instructions assume that you are setting up a Linux system as an Apache HTTP server.

To set up an HTTP server:

  1. Install the Apache HTTP server package (typically httpd).

    # yum install httpd
  2. Create the directory where you will copy the full Linux for SPARC DVD image, for example /var/www/html/OSimage/LfS:

    # mkdir -p /var/www/html/OSimage/LfS
    Note

    If SELinux is enabled in enforcing mode on your system, create the directory under the /var/www/html directory hierarchy so that the httpd_sys_content_t file type is set automatically on all the files in the repository.

  3. Edit the HTTP server configuration file (typically /etc/httpd/conf/httpd.conf) as follows:

    1. Specify the resolvable domain name of the server in the argument to ServerName.

      ServerName server_addr:80

      If the server does not have a resolvable domain name, enter its IP address instead. For example, the following entry would be appropriate for an HTTP server with the IP address 192.168.1.100.

      ServerName 192.168.1.100:80
    2. If the directory to which you will copy the DVD image in not under /var/www/html, change the default setting of DocumentRoot.

      In this example, the DVD image will be copied to /var/www/html/OSimage/LfS so the setting of DocumentRoot can remain unchanged.

      DocumentRoot "/var/www/html"
    3. Verify that the <Directory> setting points to the same setting as DocumentRoot.

      #
      # This should be changed to whatever you set DocumentRoot to.
      #
      <Directory "/var/www/html">
    4. If you want to be able to browse the directory hierarchy, verify that the Options directive specifies the Indexes option, for example:

      Options Indexes FollowSymLinks
      Note

      The Indexes option is not required for installation.

    5. Save your changes to the file.

  4. Start the Apache HTTP server, and configure it to start after a reboot.

    # service httpd start
    # chkconfig httpd on

    On a system that implements systemd, use the apachectl and systemctl commands, for example:

    # apachectl start
    # systemctl enable httpd
  5. If you have enabled a firewall on your system, configure it to allow incoming HTTP connection requests on TCP port 80.

    For example, the following command configures iptables to allow incoming HTTP connection requests and saves the change to the firewall configuration:

    # iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
    # service iptables save

    On a system that implements firewalld, use the firewall-cmd command, for example:

    # firewall-cmd --add-service=http
    # firewall-cmd --permanent --add-service=http

2.5.4 Configuring an Existing HTTP Server

Note

This procedure assumes that the system is already configured as an Apache HTTP server. For other types of HTTP server, you will need to modify the steps for the server's configuration.

To configure an existing Apache HTTP server:

  1. Under the DocumentRoot hierarchy that is defined in the HTTP server configuration file (typically /etc/httpd/conf/httpd.conf), create the directory where you will copy the full Linux for SPARC DVD image, for example /var/www/html/OSimage/LfS:

    # mkdir -p /var/www/html/OSimage/LfS
  2. Edit the HTTP server configuration file (typically /etc/httpd/conf/httpd.conf) and add a <Directory> section, for example:

    <Directory "/var/www/html/OSimage/LfS">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    Place this section after the closing </Directory> statement for the <Directory DocumentRoot> section.

    Note

    The Indexes option is not required for installation. Specify this option if you want to be able to browse the directory hierarchy.

  3. Reload the Apache HTTP server, for example:

    # service httpd reload

    If available, you can use the apachectl command to restart the HTTP server:

    # apachectl restart

2.5.5 Setting up a Network Installation Server

Note

This procedure assumes that you have set up the system as an NFS or HTTP server.

To set up a network installation server:

  1. Download the full Linux for SPARC DVD image file (linux-sparc-1.0-DVD.iso) from http://oss.oracle.com/projects/linux-sparc/files.

  2. Mount the image file on a suitable mount point (for example, /mnt):

    # mount -t iso9660 -o loop linux-sparc-1.0-DVD.iso /mnt
  3. Use the following command to extract the contents of the DVD image into a directory whose contents are shareable using NFS or HTTP.

    For example, to copy the DVD image mounted on /mnt to /var/www/html/OSimage/LfS:

    # cp -a -T /mnt /var/www/html/OSimage/LfS
  4. Unmount the image file:

    # umount /mnt

2.6 Installing Linux for SPARC as an Oracle VM for SPARC Virtual Appliance

Linux for SPARC is available as an Open Virtualization Archive (OVA) file that you can use as a virtual appliance with Oracle VM for SPARC. The OVA packages a VM that is configured with 8 virtual CPUs, 8 GB of memory, one 32 GB virtual disk, and one virtual network device.

The following procedure uses the ovmtdeploy command from the Oracle VM Template Utilities, which are command line tools that you can use to create, deploy, and configure virtual appliances on Oracle VM for SPARC servers.

To install the Linux for SPARC virtual appliance:

  1. If not already installed, download and install the ovmtutils package for Oracle Solaris 11 in the control domain:

    1. Download patch 21210110 from My Oracle Support at https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=21210110.

    2. Unzip the downloaded patch file (p21210110_11010_SOLARIS64.zip).

      # unzip p21210110_11010_SOLARIS64.zip
    3. Install the ovmtutils package.

      # pkg install -vg unzip_directory/ovmt-utils1.1.0.1.p5p ovmtutils
  2. Download the Linux for SPARC OVA file (linux-sparc-1.0.ova) from http://oss.oracle.com/projects/linux-sparc/files to the control domain.

  3. Use the ovmtdeploy command to deploy the OVA file in a new guest domain at a specified domain-storage location:

    # /opt/ovmtutils/bin/ovmtdeploy -s -d guest_domain -o domain_storage_path linux-sparc-1.0.ova

    The -s option prevents ovmtdeploy from starting the domain automatically. Otherwise, the virtual appliance configuration script eventually time outs and proceed with the deployment instead of waiting for input.

  4. Start the guest domain.

    # ldm start guest_domain
  5. Use the ldm list command to find the port number of the console for the guest domain, for example:

    # ldm list guest_domain | awk '{print $4}'
    CONS
    5000
  6. Connect to the guest domain console at the port number, for example:

    # telnet localhost 5000

    The configuration script prompts you to set the root password and set up the network configuration for the system.