Home Home > Base-system
Sign up | Login

Deprecation notice: openSUSE Lizards user blog platform is deprecated, and will remain read only for the time being. Learn more...

Archive for the ‘Base System’ Category

Snapper and LVM thin-provisioned Snapshots

July 25th, 2012 by

SUSEs Hackweek 8 allowed me to implement support for LVM thin-provisioned snapshots in snapper. Since thin-provisioned snapshots themself are new I will shortly show their usage.

Unfortunately openSUSE 12.2 RC1 does not include LVM tools with thin-provisioning so you have to compile them on your own. First install the thin-provisioning-tools. Then install LVM with thin-provisioning enabled (configure option –with-thin=internal).

To setup LVM we first have to create a volume group either using the LVM tools or YaST. I assume it’s named test. Then we create a storage pool with 3GB space.

  # modprobe dm-thin-pool
  # lvcreate --thin test/pool --size 3G

Now we can create a thin-provisioned logical volume named thin with a size of 5GB. The size can be larger than the pool since data is only allocated from the pool when needed.

  # lvcreate --thin test/pool --virtualsize 5G --name thin

  # mkfs.ext4 /dev/test/thin
  # mkdir /thin
  # mount /dev/test/thin /thin

Finally we can create a snapshot from the logical volume.

  # lvcreate --snapshot --name thin-snap1 /dev/test/thin

  # mkdir /thin-snapshot
  # mount /dev/test/thin-snap1 /thin-snapshot

Space for the snapshot is also allocated from the pool when needed. The command lvs gives an overview of the allocated space.

  # lvs
  LV         VG   Attr     LSize Pool Origin Data%  Move Log Copy%  Convert
  pool       test twi-a-tz 3.00g               4.24
  thin       test Vwi-aotz 5.00g pool          2.54
  thin-snap1 test Vwi-a-tz 5.00g pool thin     2.54

After installing snapper version 0.0.12 or later we can create a config for the logical volume thin.

  # snapper -c thin create-config --fstype="lvm(ext4)" /thin

As a simple test we can create a new file and see that snapper detects its creation.

  # snapper -c thin create --command "touch /thin/lenny"

  # snapper -c thin list
  Type   | # | Pre # | Date                          | Cleanup | Description | Userdata
  -------+---+-------+-------------------------------+---------+-------------+---------
  single | 0 |       |                               |         | current     |
  pre    | 1 |       | Tue 24 Jul 2012 15:49:51 CEST |         |             |
  post   | 2 | 1     | Tue 24 Jul 2012 15:49:51 CEST |         |             |

  # snapper -c thin status 1..2
  +... /thin/lenny

So now you can use snapper even if you don’t trust btrfs. Feedback is welcomed.

How to peek into remote isos

July 17th, 2012 by

When people want to provide a collection of files, they sometimes choose to do so by providing a .iso image file. But if you only want to look what files are in there or only need a few files, e.g. kernel and initrd for PXE-booting, you still had to download the whole thing to loop-mount it.

But you don’t have to anymore. Because modern web servers support delivering only parts of a file (using the “Range” header field), that allowed me to implement curlwwwfs that mounts remote HTTP directories into your local filesystem. And then you can use fuseiso on top to access the actual content within the .iso. All without root access.

This is how it works:

First you have to install the required packages (replace 12.2 with your version of openSUSE (or if you use a different Linux distribution, do git clone git://github.com/bmwiedemann/curlwwwfs and “make install” in there)):

zypper ar http://download.opensuse.org/repositories/home:/bmwiedemann/openSUSE_12.2/home:bmwiedemann.repo

zypper in curlwwwfs fuseiso

# Then you start it:

mkdir mnthttp mntiso

curlwwwfs http://zq1.de/bootcd mnthttp &

ls -la mnthttp/

fuseiso mnthttp/bmwinux-8.2-040808.iso mntiso

cat mntiso/isolinux/isolinux.cfg

# and later you clean it up with

fusermount -u mntiso

fusermount -u mnthttp

Linux Kernel built with clang boots into openSUSE

July 14th, 2012 by

Whatch this:  http://youtu.be/Jp04DMXH2Rg

The kernel was compiled with Clang (C frontend of LLVM)  and boots into a running openSUSE desktop!

 

AMD/ATI fglrx 8.961 Catalyst 12.4 (build 5) rpms available for openSUSE 12.2, 12.1, 11.4, 11.3 & Tumbleweed

May 31st, 2012 by

Those informations are obsolete now : please consult //lizards.opensuse.org/?p=8888

AMD/ATI Catalyst 12.4 / fglrx 8.961 (build 5 revised) rpms are available

Quick Résumé about 12.4

The first version available in repository from April 30th has trouble with any kernel never than 3.3

Sebastian Siebert has create a patch for kernel 3.4+, I google translate quickly his blog article here.

AMD catalyst control center and fgl_glxgears

May 30th 2012
WARNING! Who use AMD Catalyst 12.4 driver from the AMD installer will inevitably have problems with kernel 3.4.0 and higher (eg from the Tumbleweed repo).
Because the driver is designed, at least up to kernel 3.3.x on openSUSE only.
Here are some examples of errors when compiling a kernel module fglrx:

error: 'cpu_possible_map' undeclared (first use in this function) ... 
error: implicit declaration of function '__save_init_fpu'

Or when you load the fglrx kernel module:

 A FATAL: Error inserting fglrx (/ lib/modules/3.4.0-25-desktop/extra/fglrx.ko): Unknown symbol in module, or unknown parameter (see dmesg)
 The output of dmesg: fglrx: Unknown symbol old_rsp (err 0) 

I now have an updated makerpm-amd script and replaced the older packaging from script to a newer.
At this point, I say thank you for the helpful feedback and also to the AMD community that their minds have assembled to investigate the problem and make it to the world.
The packaging script I maintain, need no extra time. The kernel patches for the compiler error I’ve already entered for this month in the AMD installer. In the next AMD Catalyst we will not need this patch anymore. Since the patch will be included in the source fglrx from AMD for the next version.

Small warning for stormy times: AMD plans to graphics chips R6xx/R7xx not lead to the main branch.
The graphics card series Radeon HD 2000, 3000 and 4000 are affected (Phoronix has reported). The last supported version is expected to be AMD Catalyst 12.7. However, AMD has turned in and stored in a separate branch of this, it weiterzupflegen there. It means that no new feature added, but only fix bugs. openSUSE 11.4 and 12.1 is still supported and maintained. The chances are good that the driver to get there will also run on an X-Server 1.12.
The next openSUSE version 12.2 in July, will should use the X-server 1.10, so that the driver theoretically run on this version of openSUSE. For this I’ll create a separate makerpm-amd script, that this legacy continues as usual drivers to install on openSUSE 11.4 and 12.1 (possibly 12.2) and will also provide the necessary kernel patches. AMD believes that these chipsets will already extensive support from the free Radeon driver. So it is time to order a new graphics card in order to continue the beta drivers from AMD Catalyst testing on openSUSE. A new graphics card was already planned last October. So I will finally keep your hardware donation for the new graphics card.

See more at Sebastian’s blog.
Don’t be shy, you can leave there the result of test in english too 😀
or ask in forums, irc and ping freespacer.
See below what to do in case of troubles.

The rpms version 8.961 are available from Thursday May 31

(more…)

AMD/ATI fglrx 8.951 Catalyst 12.3 rpms available for openSUSE 12.2, 12.1, 11.4, 11.3

March 30th, 2012 by

Those informations are obsolete now : please consult //lizards.opensuse.org/?p=8888

AMD/ATI Catalyst 12.3 / fglrx 8.951 rpms are available

Quick Résumé about 12.3

AMD rename their installer, So Sebastian did the same for his script.

I will just copy/google translate/paste here the comment made by Sebastian Siebert on his blog :

amd ccc and fgl_glgears running

The packaging script was updated because I have a compile error when building a kernel module fglrx in the kernel 3.2.8+ and 3.3+. Due to the very tight time window, the patches could no longer be incorporated into AMD Catalyst 12.3. Only in the upcoming AMD Catalyst 12.4, the patches from me for openSUSE will be available. AMD Catalyst 12.5 they will be officially included for all other distributions. Yes, with the makerpm-amd script made for you, I can despatch on very simple, convenient and quick patches or missing useful extensions via the script packaging update. Who need to wait months.
Driver support now AMD Radeon HD 7950, HD 7970, HD 7990

See more at Sebastian’s blog.
Don’t be shy, you can leave there the result of test in english too 😀
or ask in forums, irc and ping freespacer.
See below what to do in case of troubles.

The rpms version 8.951 are available from Friday March 30th.

(more…)

ATI/AMD fglrx 8.930 Catalyst 12.1 rpm available for openSUSE 11.3, 11.4, 12.1

January 27th, 2012 by

Those informations are obsolete now : please consult //lizards.opensuse.org/?p=8888

AMD/ATI Catalyst 12.1 / fglrx 8.930 rpm are available

Sorry I missed in December the annoucement release for the 8.920, but from what I’ve seen. zypper up do the job for you 🙂

Quick Résumé about 12.1

AMD rename their installer, So Sebastian did the same for his script.

I will just copy/google translate/paste here the comment made by Sebastian Siebert on his blog :

With this version AMD Catalyst Gnome 3.2 issues (flickering and screen cracks) are finally resolved.
According to AMD, the notebook with the PowerXpress technology (Intel-/AMD-Grafikkarte – discrete GPU) should work again.
I would be grateful if someone could test this functionality for me and give me feedback. Thank you.

See more at Sebastian’s blog. Don’t be shy, you can leave there the result of test in english too 😀
See below what to do in case of troubles.

The rpms version 8.930 are available from Friday January 27th

My advise is to firstly remove any existing version with zypper rm, then just zypper in the new version, even if 8.930 are the first version I’ve seen making its upgrade correctly.

As usual, I let the last 2 previous versions in the repository, just in case you need it.

Catalyst 8.930 fglrx 12.1 in action

Tested on a fresh 12.1 + updates with a stock kde 4.7.2

Factory rpms are not available actually, I’ve not be able to build a new building machine for it.
Anyways, factory and 12.2 should keep their effort on debuging and testing widely the free radeon driver.

(more…)

openSUSE ARM image

January 21st, 2012 by

When I wrote this week, how I ran openSUSE on my genesi smarttop some people asked for a ready-to-use image. After spending less than 8 hours fiddling with u-boot-scripts, partition tables, tuning ext3 and initrds, it was done… and is now so easy:

wget http://www.zq1.de/efika.img.xz # 83MB
xz -cd efika.img.xz | dd of=/dev/sdX bs=1M

with sdX being the device name of your SD-card (e.g. “mmcblk0” on the smarttop itself) with at least 1GB (actually 1024000000 bytes) of free space.

When inserted at boot, it should just boot up within 23 seconds and let you login as root with password “linux” on SSH, serial and with a USB-keyboard on HDMI. I spent some effort on putting as few packages as possible into it. Still, you have zypper to install packages and nano to edit files.

There is still a known hangup when you try to reboot. Workaround is: init 2 ; sleep 12 ; killall rsyslogd ; umount /boot/ ; mount -o remount,ro / ; reboot

As it still uses the original linux-2.6.31 kernel, it has another bug that also happens with pre-installed Ubuntu: sometimes (in ~40% of cases), boot stopps early, before graphics is initialized, when the last line on serial is “console handover: boot [ttymxc0] -> real [tty1]”. Try turning it off and on again.

This should allow you to have a whole lot of fun…

running openSUSE on ARM

January 19th, 2012 by

This week I finally got my genesi efika MX box. By default it has on old Ubuntu version installed on its internal IDE-attached 8GB SSD. It features 512 MB RAM and a 800 MHz ARMv7 CPU.

Using a HDMI-cable and an HDMI-DVI-Adaptor I got it connected to a monitor, plugged in a USB keyboard+mouse and it pretty much worked out of the box with WLAN,Ethernet,X11 (except for a bug that causes it to force you to change PW on every console login). How boring.

Having read about recent progress with openSUSE on ARM I wanted the excitement of running it on this box.

Michal’s image and script (now in alpha) was very helpful to get me started within 15 minutes.

If you have any (e.g. x86) openSUSE system running, there is another easy way to create a working ARM chroot-environment:

zypper ar http://download.opensuse.org/repositories/openSUSE:/Tools:/Unstable/openSUSE_12.1/openSUSE:Tools:Unstable.repo
zypper install qemu osc
osc co openSUSE:Factory:ARM bash
cd openSUSE:Factory:ARM/bash
edit bash.spec # add lines with your packages like BuildRequires: zypper,vim
osc build –no-verify –clean standard armv7l

If it worked well, /var/tmp/build-root/ should contain a chroot environment. E.g. you can run

file /var/tmp/build-root/bin/bash
/var/tmp/build-root/bin/bash: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, BuildID[sha1]=0xed9ca12f44c8591560d780cf807b6b6cf8ca8873, stripped

I partitioned my SD-card into two partitions. The first one for /boot with ext2 (needs only 150MB) and the second one for / to contain the rootfs. Be sure to have barrier=0 in your fstab for all ext[34] partitions so that writing to SD will not be as slow. The default U-Boot configuration first checks on the first partition of an SD-card for boot.scr which is a uImage-formatted version of a U-boot script. I copied all of Ubuntu’s /boot and /lib/modules/, slightly adapted their boot.script file to have root=/dev/mmcblk0p2 and uImage/uInitrd-2.6.31.14.26-efikamx as kernel/initrd, dropped “quiet splash” and added “console=ttymxc0,115200” to see more of the boot and ran a line from another helpful site:

mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n “my boot script” -d boot.script boot.scr
echo mxc0:S12345:respawn:/sbin/agetty -L 115200 ttymxc0 vt102 >> /etc/inittab # for serial console

However, this failed to boot. Using the serial debug console, I could see U-boot trying to load the boot.scr but it was thinking it was zero bytes for some strange reason. Re-creating my /boot partition as a raw copy of /dev/sda1 with my adaptions ontop finally gave me an SD-card that just boots openSUSE Factory on ARM with framebuffer console on HDMI/DVI.

Find more ARM-related info on our openSUSE ARM Portal

fuk the kit you will love

January 19th, 2012 by

Dear fellows, in our moving free world, it’s not always bienvenue to talk about one of the *kit* software around.
Most of them have bad reputation, (with good or bad reasons) this is the debate of this post.

But in the uni-kit-verse there’s one you must known, especially if you are the proud owner of a laptop or one of this computer the manufacter deliver its firmware only in DOS exe format.
FirmwareUpdateKit (was introduced in 2008 in openSUSE by Steffen Winterfeldt

How that works?

As the title of the post give you the right command, open a console, then use the cnf (command-not-found) tool to learn what to do

Install the package

cnf fuk

The program 'fuk' can be found in the following package:
  * FirmwareUpdateKit [ path: /usr/bin/fuk, repository: zypp (repo-oss) ]

Try installing with:
    zypper install FirmwareUpdateKit

Pretty clear and cool, let’s install that stuff!

sudo zypper install FirmwareUpdateKit
root's password:
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW packages are going to be installed:
  FirmwareUpdateKit syslinux 

2 new packages to install.
Overall download size: 758.0 KiB. After the operation, additional 2.1 MiB will be used.
Continue? [y/n/?] (y): y
Retrieving package syslinux-4.04-12.1.3.x86_64 (1/2), 642.0 KiB (1.9 MiB unpacked)
Retrieving: syslinux-4.04-12.1.3.x86_64.rpm [done]
Retrieving package FirmwareUpdateKit-1.1-14.1.1.x86_64 (2/2), 116.0 KiB (178.0 KiB unpacked)
Retrieving: FirmwareUpdateKit-1.1-14.1.1.x86_64.rpm [done]
Installing: syslinux-4.04-12.1.3 [done]
Installing: FirmwareUpdateKit-1.1-14.1.1 [done]

Firmware Update

Get your bios

Nothing easy for that, you will have to surf on boring mfg website, and find an appropriate bios for your computer.

Be serious during that selection, you can screw up totally your computer

Time to fuk

As always before running a program, it’s always good to check if there’s the fine manual (not the case here) or try a -h –help

fuk --help
Usage: fuk [OPTIONS] FILES
FirmwareUpdateKit version 1.1.

Create bootable DOS system and add FILES to it.
The main purpose is to assist with DOS-based firmware updates.

Options:
  --grub                        Add boot entry to /boot/grub/menu.lst.
  --lilo                        Add boot entry to /etc/lilo.conf.
  --title TITLE                 Use TITLE as label for boot menu entry.
  --iso FILE                    Create bootable CD.
  --floppy FILE                 Create bootable (1440 kB) floppy disk.
  --image FILE                  Create bootable harddisk.
  --run COMMAND                 Run COMMAND after booting DOS.
  --verbose                     Be more verbose.

Nothing complicated as a nuclear plan here, everything seems to be self explicit.
Let try it, and install a new grub entry for the new A8 version for my lappy.

fuk --verbose --grub --run M4600A08.exe /home/bruno/src_tmp/HARDWARE/DELL_M4600/M4600A08.exe 
/tmp/fuk.lSVIgS0cMt/fwupdate.img: chs = 186/4/16, size = 11904 blocks
- writing mbr
- writing fat12 boot block
- copying:
    /usr/share/FirmwareUpdateKit/kernel.sys
    /usr/share/FirmwareUpdateKit/command.com
    /tmp/fuk.lSVIgS0cMt/config.sys
    /tmp/fuk.lSVIgS0cMt/autoexec.bat
    /home/bruno/src_tmp/HARDWARE/DELL_M4600/M4600_A08.exe
c-3po:~ # 

That’s all I’ve now a new entry in my grub list

title Firmware Update
    kernel /boot/memdisk
    initrd /boot/fwupdate.img

Apply

Now just reboot and use the grub entry, then upgrade your bios, like you will normally have done with you old complicated build iso, or diskette (I’m joking)

ATI/AMD fglrx 8.911 Catalyst 11.11 rpm available for openSUSE 11.3, 11.4, 12.1

November 21st, 2011 by

AMD/ATI Catalyst 11.11 / fglrx 8.911 rpm are available

Call the 911 to rescue your gfx!

Quick Résumé about 11.11

fglrx direct rendering

Several of you has all kind of non feature (mostly called bugs) with Gnome3.2 and kde4 etc…

I will just copy/google translate/paste here the comment made by Sebastian Siebert on his blog

Okay, now that was a long night for me was.  I’ve researched intensively since yesterday evening after the problem of GNOME 3.2 and the XvBA hardware acceleration on openSUSE 12.1. Here, a blog reader has pointed out that the direct installation of the AMD Catalyst could solve the problem. However, I think the direct installation of anything since like AMD will move the existing files, and thus endangering the integrity of files. But I had to start somewhere and so did the RPM package and direct install AMD compared. I could detect no difference in principle, except that some files were installed in a different directory, where they had really nothing to be related. I could at first make any sense why the RPM installation failed. To me a very banal story is remembered. A specific search path ld.so.conf could possibly be kicked out in openSUSE 12.1. I have my current openSUSE 11.4 /etc/ld.so.conf compared with that of openSUSE 12.1 and lo and behold some search paths were removed. I have the necessary path to /usr/X11R6/lib/ or created and /usr/X11R6/lib64 in /etc/ld.so.conf.d/fglrx.conf for the fglrx driver, and lo and behold “vainfo” tells me that everything is in order. Now comes the interesting question: Is the problem fixed with GNOME 3.2 now? The answer: YES!  So, dear people, you invite the makerpm-ati-down script with the updated packaging script installs the driver as usual and have fun with the new openSUSE 12.1 and the AMD Catalyst driver.

All rpms are updated now

The 8.911 version are available from saturday November 19th

My advise is to firstly remove any existing version with zypper rm, then just zypper in the new version

Factory rpms are not available actually, Factory 12.2 has just change it’s version number in /etc/SuSE-release and thus is not detected for the moment.
The next version should see 12.2 supported (December). Anyway you have to debug radeon on factory please!

(more…)