ubuntu-artwork package reports error while installing

Bug #230192 reported by Kenan Begovic on 2008-05-14
6
Affects Status Importance Assigned to Milestone
Sabily Artwork
High
أحمد المحمودي (Ahmed El-Mahmoudy)

Bug Description

Following error reported by dpkg

sed: -e expression #1, char 47: unknown option to `s'
dpkg: error processing ubuntume-artwork (--configure):

menu.lst and device.map attached

Kenan Begovic (n00gie) wrote :
Kenan Begovic (n00gie) wrote :

as-salamu alaykom,

  Thanks for the report.

  Please send the output of: df -h

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Kenan Begovic (n00gie) wrote :

Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                       52G 4.9G 44G 11% /
varrun 1.7G 112K 1.7G 1% /var/run
varlock 1.7G 0 1.7G 0% /var/lock
udev 1.7G 68K 1.7G 1% /dev
devshm 1.7G 12K 1.7G 1% /dev/shm
/dev/sda1 99M 43M 51M 46% /boot
/dev/mapper/VolGroup00-LogVol02
                       38G 17G 20G 46% /home

as-salamu alaykom,

On Sun, May 18, 2008 at 04:54:12AM -0000, Kenan Begovic wrote:
> Filesystem Size Used Avail Use% Mounted on
> /dev/mapper/VolGroup00-LogVol00
> 52G 4.9G 44G 11% /
---end quoted text---

  Thanks a lot for your feedback. It seems that the problem is that you
  use logic volume, the script in postinst (which I copied from
  debian-edu-artwork does not support the logical volumes case.

  Maybe you can help me with this issue, is there a way to know which
  physical volume does the logical volume map to ?

  Please send me the outputs of those commands:

  lvdisplay -m

  lvdisplay -m /dev/mapper/VolGroup00-LogVol00

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Kenan Begovic (n00gie) wrote :

#lvsidplay -m

  --- Logical volume ---
  LV Name /dev/VolGroup00/LogVol00
  VG Name VolGroup00
  LV UUID k225JE-0V0O-xjp1-BUQ7-dJJj-2i2t-MFCsHH
  LV Write Access read/write
  LV Status available
  # open 1
  LV Size 52.03 GB
  Current LE 1665
  Segments 1
  Allocation inherit
  Read ahead sectors 0
  Block device 254:0

  --- Segments ---
  Logical extent 0 to 1664:
    Type linear
    Physical volume /dev/sda2
    Physical extents 0 to 1664

  --- Logical volume ---
  LV Name /dev/VolGroup00/LogVol02
  VG Name VolGroup00
  LV UUID YVTQWL-3Dfc-BBkU-LXbv-0Qco-8RMf-vGgl5C
  LV Write Access read/write
  LV Status available
  # open 1
  LV Size 39.06 GB
  Current LE 1250
  Segments 1
  Allocation inherit
  Read ahead sectors 0
  Block device 254:1

  --- Segments ---
  Logical extent 0 to 1249:
    Type linear
    Physical volume /dev/sda2
    Physical extents 1665 to 2914

  --- Logical volume ---
  LV Name /dev/VolGroup00/LogVol01
  VG Name VolGroup00
  LV UUID 7IL2wb-H7M1-y4vt-Ux7N-My62-0nwU-pohXKs
  LV Write Access read/write
  LV Status available
  # open 2
  LV Size 1.94 GB
  Current LE 62
  Segments 1
  Allocation inherit
  Read ahead sectors 0
  Block device 254:2

  --- Segments ---
  Logical extent 0 to 61:
    Type linear
    Physical volume /dev/sda2
    Physical extents 2915 to 2976

Output of "lvdisplay -m /dev/mapper/VolGroup00-LogVol00" is no different than first portion of "lvdisplay -m" output.

As for, how to determine which physical volume is mapped to which logical volume, you must be aware that logical extents (LE) from one logical volume can be mapped to physical extents (PE) from multiple physical volumes within same volume group.
I believe that you are interested in device that mounts to /boot in this case. Most normal people do not set /boot on LV. So you can edit postinst script to detect if LVs are used and confirm that /boot is not on LV (as the script is already checking if /boot is on separate partition). I am just shooting here in dark, maybe it will help...

On Tue, May 20, 2008 at 04:57:09AM -0000, Kenan Begovic wrote:
> #lvsidplay -m
>
> --- Logical volume ---
> LV Name /dev/VolGroup00/LogVol00
> VG Name VolGroup00
> LV UUID k225JE-0V0O-xjp1-BUQ7-dJJj-2i2t-MFCsHH
> LV Write Access read/write
> LV Status available
> # open 1
> LV Size 52.03 GB
> Current LE 1665
> Segments 1
> Allocation inherit
> Read ahead sectors 0
> Block device 254:0
>
> --- Segments ---
> Logical extent 0 to 1664:
> Type linear
> Physical volume /dev/sda2
> Physical extents 0 to 1664

> As for, how to determine which physical volume is mapped to which
> logical volume, you must be aware that logical extents (LE) from one
> logical volume can be mapped to physical extents (PE) from multiple
> physical volumes within same volume group.

I understood from what you meantioned that a logical volume can map to
several physical volumes, is that correct ?

> I believe that you are interested in device that mounts to /boot in
> this case. Most normal people do not set /boot on LV. So you can edit
> postinst script to detect if LVs are used and confirm that /boot is
> not on LV (as the script is already checking if /boot is on separate
> partition). I am just shooting here in dark, maybe it will help...
---end quoted text---

Yes, that's what I was planning to do. The problem is that if /boot is
on an LV, I need to detect which physical volume does it exist on,
especially that you mentioned that a logical volume could map to several
physical volumes.

Anyways, it seems that in your case, /boot is not on a LV, so I still
can't figure the reason of your problem, please run the attached script
(test.sh), and send me its output.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Kenan Begovic (n00gie) wrote :

As I said boot should never be on LV (possible but totally not recommended). As for mapping, logical extents that make logical volume can be mapped to physical extents on more than one physical volume.

Here is the output of test.sh

# ./test.sh
DISCREF=/dev/sda
DISCNB=(hd0
PARTNB=0
GRUBPART=(hd0,0)
BOOTPREFIX=
sed: -e expression #1, char 47: unknown option to `s'

as-salamu alaykom,

  I fixed the bug, please try the latest ubuntume-artwork package from
  the PPA.
  It had nothing to do with LVs or so. It had to do with the escape
  sequence (\\) in the SPLASHSED line.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Changed in ubuntume-artwork:
assignee: nobody → aelmahmoudy
importance: Undecided → High
status: New → Fix Committed
Kenan Begovic (n00gie) wrote :

I think that I commented on ubuntume forum that it might be problem with how sed handles your line but still I am getting error. I am using ppa15 and getting as in attached pic.

On Sun, Jun 01, 2008 at 04:44:41AM -0000, Kenan Begovic wrote:
> I think that I commented on ubuntume forum that it might be problem with
> how sed handles your line but still I am getting error. I am using ppa15
> and getting as in attached pic.
---end quoted text---

Please send me the output of the script attached with this email.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Kenan Begovic (n00gie) wrote :
Download full text (5.4 KiB)

DISCREF=/dev/sda
DISCNB=(hd0
PARTNB=0
GRUBPART=(hd0,0)
[: 17: on: unexpected operator
BOOTPREFIX=
SPLASHSED=splashimage=(hd0,0)\/grub\/splashimages\/medine_moon_right_below.xpm.gz
GNU sed version 4.1.5
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE,
to the extent permitted by law.
# menu.lst - See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default 0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 3

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
#hiddenmenu

# Pretty colours
color cyan/blue white/blue
splashimage=(hd0,0)/grub/splashimages/medine_moon_right_below.xpm.gz

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command 'lock'
# e.g. password topsecret
# password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/mapper/VolGroup00-LogVol00 ro

## Setup crashdump menu entries
## e.g. crashdump=1
# crashdump=0

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,0)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
## lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash vga=791

## should update-grub lock old automagic b...

Read more...

On Sun, Jun 01, 2008 at 11:01:52AM -0000, Kenan Begovic wrote:
> [: 17: on: unexpected operator
---end quoted text---

Thanks for your feedback. I have updated the script, please try the
attached script.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

as-salamu alaykom,

  I made a fix to ubuntume-artwork package yesterday, please test this
  package:

  http://launchpadlibrarian.net/15127136/ubuntume-artwork_1.1~ppa17_all.deb

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Kenan Begovic (n00gie) wrote :

I am sorry, the system is no longer with me and I cannot test. However, I think that you realized what was the problem and I am sure that your fix would work.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers