CommonQuestions

Revision 36 as of 2015-10-22 20:02:48

Clear message

General

What are the new features for each release?

What is the URL to download Ubuntu for Power?

What is the URL to download Ubuntu daily images?

How to build a new kernel?

The majority of users that are interested in building their own kernel are doing so because they have installed Ubuntu on their system and they wish to make a small change to the kernel for that system. In many cases the user just wants to make a kernel configuration change. Building a kernel for ppc64el is exactly the same as for amd64 architecture.

In order to do so, just follow the steps at https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel

How to collect logs and data for a bug validation

Ubuntu has both apport and sosreport way of saving log files. The recommend way is using apport that is more Ubuntu specific and has a integration with Launchpad.

apport-bug reports problems to your distribution's bug tracking system, using Apport to collect a lot of local information about your system to help the developers to fix the problem and avoid unnecessary question/answer turnarounds.

You should always start with running apport-bug without arguments, which will present a list of known symptoms. This will generate the most useful bug reports.

If there is no matching symptom, you need to determine the affected program or package yourself. You can provide a package name or program name to apport-bug, e. g.:

  • apport-bug linux

For more information about apport, check the apport webpage.

Apport was the only tool ported to collect POWER specific information, as described in this bug

Mirrors

Brazil http://www.las.ic.unicamp.br/pub/ubuntu-ports/pool/universe/

US http://ports.ubuntu.com/ubuntu-ports/

IBM internal ftp://software.linux.ibm.com/pub/ubuntu-ppc64el-repository/

Installation & Configuration

How to do netboot on PowerVM

In conversations with perspective Linux on POWER clients, we are often asked if POWER supports PXE boot. The short answer is “not exactly”, because a true PXE environment has some x86 architecture specific functions/extensions within it. That said, we do support the same basic functions and underlying protocols as PXE. And now that POWER , beginning with Fedora 17, has moved to grub2 for a bootloader, the appearance and function are quite similar. In other words, it is functionally equivalent to PXE.

For more information, check this tutorial: Netbooting on POWER - An Introduction

How to Report an installation bug effectively?

It's important to add the log in the bug report. To get it you need:

  1. At the error message, choose "Back" button;
  2. Go to the item "Exit to shell"
  3. Get the file /var/log/syslog

How to use Ubuntu as a hypervisor?

  • Note Recommended 14.10 or later

Ubuntu is able to be used as a hypervisor, as an alternative to PowerKVM. Just install in bare metal (NV) it following the steps in Running Ubuntu non-virtualized on POWER8 After the installation you need:

  1. Install the missing virtualization packages:

    # sudo apt-get install qemu-user qemu-utils cloud-image-utils qemu-system-ppc qemu-slof libvirt-bin numactl

  2. Add the users that would be able to run virtual machines into the kvm group:

    # sudo usermod -a -G kvm <user>

  3. Disable the SMT:

    # sudo ppc64_cpu --smt=off

  4. Enable KVM module in the kernel (Add a line "kvm_hv" in /etc/modules in order to automatically load it after a reboot):

    # sudo modprobe kvm_hv

  5. [Ubuntu 14.10 only] Assure that you have the /usr/bin/qemu-system-ppc64le file, otherwise, create a link as follow. This is only required in Ubuntu 14.10 and this is already 'fixed' on later releases, check [1]:

    # sudo ln -s qemu-system-ppc64 /usr/bin/qemu-system-ppc64le

  6. [Ubuntu 14.10 only] Allow apparmor to access the SLOF (firmware). This is only required in Ubuntu 14.10 and this is already 'fixed' on later releases, check[2]:

    # echo "/usr/share/slof/** r," >> /etc/apparmor.d/abstractions/libvirt-qemu

  7. If you hit "failed to parse default acl file `/etc/qemu/bridge.conf", you need to edit (or create) file /etc/qemu/bridge.conf and add:

    allow br0

  8. If you hit "failed to create tun device: Operation not permitted", you need to set the setuid attribute:

    # chmod u+s /usr/lib/qemu/qemu-bridge-helper

[1] https://bugs.launchpad.net/ubuntu/+source/virt-manager/+bug/1374558
[2] https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1374554

Apt-get is using IPv6 to download repository information and I don't have it. How do I force IPv4?

Just run the following command:

  • echo "Acquire::ForceIPv4 true;" > /etc/apt/apt.conf.d/99force-ipv4

Usage

How to search and get more information about a package in Ubuntu?

If you have Ubuntu installed on a machine, you can run the following command to grab the package version and details for the Ubuntu version you are using:

  • apt-cache search <package name>

On the other side, you can go to the web and look for the package on the Ubuntu webpage:

What are the build log for packages?

How to discover in which repository (main, universe, multiverse) a package is

Append the package name at https://launchpad.net/ubuntu/+source/, as (https://launchpad.net/ubuntu/+source/nmap for nmap). Look at the Component field.

How to upgrade a system to the most upgraded state, as from a beta to a GA release. (not migrating between major release as 14.04 -> 14.10)

Run the following commands:

  • sudo apt-get update
    sudo apt-get upgrade

How to upgrade to a next standard release, as 14.10 to 15.04

It is quite easy to upgrade from a next standard release. I just upgraded from a 14.10 to 15.04 in less than 20 minutes.

In order to do so, run the following steps:

  1. At first, make sure the file /etc/update-manager/release-upgrades has the following line:

    • Prompt=normal

  2. Now run the following command:
    • $ sudo do-release-upgrade

Answer the expected questions, usually with a y letter and your system will be rebooted with a newer distro.

How to use VNC on Ubuntu for POWER

Ubuntu provides two VNC servers for ppc64el. linuxvnc and x11vnc. linuxvnc is basically a text-only VNC and works as a virtual TTY. On the other side, x11vnc can provide a full desktop environment on you POWER server.

If you want start a full desktop VNC serer, using XFCE window manager, you can use the following steps:

       # sudo apt-get install x11vnc xfce4 xvfb
       # x11vnc -create -forever -bg -env FD_TAG=my_xfce_1 -env FD_SESS=xfce -rfbport 5901

How to enable the -proposed repository in ubuntu

In order to enable the proposed repositories, you can modify the software sources manually by adding the following line to /etc/apt/sources.list:

deb http://archive.ubuntu.com/ubuntu/ trusty-proposed restricted main multiverse universe

If you are using a port arch such as armhf/arm64/ppc64el you need to add the following line instead :

deb http://ports.ubuntu.com/ubuntu-ports trusty-proposed restricted main multiverse universe

Replace "trusty" with "vivid", "utopic", "precise", or "lucid" depending on which release you are on. It is recommended to enable selective upgrading from -proposed as described in the next section!

I want to move from 14.10 standard release to a point release of 14.04 LTS?

As a matter of fact this is really a downgrade since 14.04.X is a update from 14.04 which is prior to 14.10. Currently, there is not an official way to do this and the safer way is to re-install the system with the desired version.

So, the recommendation is to back up your data, and restart a fresh installation from scratch, then, recover the data from your back up.

How to upgrade an machine using Ubuntu to most recent version without internet access?

You are able to upgrade your system to the next level even if you don't have internet access, as for example, upgrading from Beta to GA release, or even, upgrading to the next release version, as 14.04 to 14.04.2.

You must remember that the Ubuntu CD doesn't contain every package in the repository, so, you are only going to upgrade the main package for the distro, other packages will not be upgradable if you have installed them. (In this case, I would recommend doing a archive mirror using ubumirror tool).

In order to execute the procedure, it is quite easy, following these steps:

  1. If you don't have internet, go to your repository source list and remove the internet repositories commenting them, as:

    # deb http://ports.ubuntu.com/ubuntu-ports/ utopic-updates main restricted

  2. Grab the ISO image you want to upgrade to, and move it to the machine you want to upgrade
  3. Mount it at /media/cdrom, using the following command:

    # mount -o loop  <.ISO> /media/cdrom (avoid using another directory other than /media/cdrom otherwise you are going to change apt-get options later)

  4. Add the mounted directory to the reposiorty source list (/etc/apt/source.list) using the following command:

    # apt-cdrom  -d=/media/cdrom/  add -m

  5. Double check that /etc/apt/sources.list has a line like the following:

    deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2)]/ utopic main restricted

  6. Here after, just do the standard procedure to install the system, as updating the repository, using:

    # apt-get update

  7. Then upgrade the packages to the newer version, using:

    # apt-get upgrade


Here are some of the outputs when executing those commands:

  • sudo mount utopic-server-ppc64el_2014-10-29.iso  /media/cdrom/
    
    mount: /dev/loop0 is write-protected, mounting read-only
    
    
    
    sudo apt-cdrom  -d=/media/cdrom/  add -m
    
    Using CD-ROM mount point /media/cdrom/
    
    Identifying... [a726897a34d7d7434e324566e03954de-2]
    
    Scanning disc for index files...
    
    Found 2 package indexes, 0 source indexes, 0 translation indexes and 1 signatures
    
    This disc is called:
    
    'Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2)'
    
    Copying package lists...gpgv: Signature made Wed 22 Oct 2014 02:08:40 PM EDT using DSA key ID FBB75451
    
    gpgv: Good signature from "Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com>"
    
    Reading Package Indexes... Done
    
    Writing new source list
    
    Source list entries for this disc are:
    
    deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2)]/ utopic main restricted
    
    Repeat this process for the rest of the CDs in your set.
    
    cat /etc/apt/sources.list | grep -v ^# | grep -v  ^$
    
    deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2)]/ utopic main restricted
    
    
    sudo apt-get update
    
    Ign cdrom://Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2) utopic InRelease
    
    Ign cdrom://Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2) utopic/main Translation-en_US
    
    Ign cdrom://Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2) utopic/main Translation-en
    
    Ign cdrom://Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2) utopic/restricted Translation-en_US
    
    Ign cdrom://Ubuntu-Server 14.10 _Utopic Unicorn_ - Release ppc64el (20141022.2) utopic/restricted Translation-en
    
    Reading package lists... Done
    
    
    sudo apt-get upgrade
    
    Reading package lists... Done
    
    Building dependency tree       
    
    Reading state information... Done
    
    Calculating upgrade... The following packages were automatically installed and are no longer required:
    
      docbook-to-man g++-4.8 libavcodec54 libavformat54 libavutil52 libcamel-1.2-45 libcolord1 libcolorhug1 libept1.4.12 libgail-3-0 libgdata13
    
      libgnome-desktop-3-7 libgnutls28 libgtop2-7 libpoppler44 libqmi-glib0 libqt5positioning5 libqt5sensors5 libqt5test5 libt1-5 libwpd-0.9-9 libwpg-0.2-2
    
      libwps-0.2-2 linux-headers-3.15.0-4 linux-headers-3.15.0-4-generic linux-headers-3.15.0-6 linux-headers-3.15.0-6-generic linux-headers-3.16.0-3
    
      linux-headers-3.16.0-3-generic linux-headers-3.16.0-6 linux-headers-3.16.0-6-generic linux-image-3.15.0-4-generic linux-image-3.15.0-6-generic
    
      linux-image-3.16.0-3-generic linux-image-3.16.0-6-generic linux-image-extra-3.15.0-4-generic linux-image-extra-3.15.0-6-generic
    
      linux-image-extra-3.16.0-3-generic linux-image-extra-3.16.0-6-generic python-cloudfiles python-gnomekeyring python-libxml2 python-pycurl python-smbc
    
      samba-dsdb-modules servicelog
    
    Use 'apt-get autoremove' to remove them.
    
    Done
    
    The following packages have been kept back:
    
      libbz2-1.0 libpng12-0
    
    The following packages will be upgraded:
    
      libpam-modules libpam-modules-bin libpam0g libpciaccess0 libselinux1 libtiff5 linux-firmware linux-headers-3.16.0-23 linux-headers-3.16.0-23-generic
    
      linux-image-3.16.0-23-generic linux-image-extra-3.16.0-23-generic linux-libc-dev plymouth-theme-ubuntu-text
    
    13 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
    
    Need to get 0 B/85.1 MB of archives.
    
    After this operation, 49.2 kB of additional disk space will be used.
    
    Do you want to continue? [Y/n] y
    
    Preconfiguring packages ...
    
    (Reading database ... 380705 files and directories currently installed.)
    
    Preparing to unpack .../libpam0g_1.1.8-3ubuntu4_ppc64el.deb ...
    
    Unpacking libpam0g:ppc64el (1.1.8-3ubuntu4) over (1.1.8-3ubuntu3) ...
    
    Setting up libpam0g:ppc64el (1.1.8-3ubuntu4) ...
    
    Processing triggers for libc-bin (2.19-10ubuntu2) ...
    
    (Reading database ... 380705 files and directories currently installed.)
    
    Preparing to unpack .../libselinux1_2.3-1build1_ppc64el.deb ...
    
    Unpacking libselinux1:ppc64el (2.3-1build1) over (2.3-1) ...
    
    Setting up libselinux1:ppc64el (2.3-1build1) ...

Virtualization

What is the difference between the PowerKVM and using Ubuntu as hypervisor

There is a set of differences, mainly some features that were not made upstream yet, as:

  • Huge DDW for the guests (Enabled in PowerKVM and not on Ubuntu yet)
    • Status: Some folks working to enable Huge DDW exploitation in Linux kernel and Qemu, which will make it available in Ubuntu (possible version 15.10)
  • Ubuntu runs the hypervisor in Little endian mode. On the other side, PowerKVM, as in 2.1.1, is still a BE hypervisor.
  • PowerKVM has some additional software not yet available in Ubuntu, as Kimchi and Ginger. (To be available in version Ubuntu 15.10)
  • In terms of packages available in the hypervisor, Ubuntu is a full-fledged hypervisor, while PowerKVM is a more restricted hypervisor.
  • PowerKVM is based on RPM and YUM packaging, while Ubuntu is based in DEB and APT.

Can you give me an example of a Ubuntu guest libvirt XML

Yes. https://gist.github.com/leitao/81fcb3fe5120a1e75d64

Kernel

I want to use the most recent kernel on my Ubuntu

Canonical has a PPA that contains the most upstream Ubuntu's kernel available for you to test. It might not be well tested, neither ready for production yet, but it might help you to do some tests with a recent kernel.

In order to use it, you should add the PPA repository to your source list file, and update your apt-get cache. After this, just download the kernel (composed by 2 packages, linux-image-KERNEL_VERSION-generic and linux-image-extra-KERNEL_VERSION-generic).

Below, steps to perform this procedure on Ubuntu 14.04.3:

echo "deb http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu trusty main" >> /etc/apt/sources.list 

echo "deb-src http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu trusty main" >> /etc/apt/sources.list

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B892ACEA

apt-get update

apt-get install linux-image-3.19.0-32-generic linux-image-extra-3.19.0-32-generic

After this, reboot machine and it should be updated. Notice that 3.19.0-32 is current "beta" version of Ubuntu's kernel on the time this text is written.

If you want to update another Ubuntu version to latest testing kernel, change "trusty" to the respective codename on ppa URL, and the kernel version probably will not be 3.19 - be sure which version you want to install.