upgrade udev on Ubuntu 14.04

Qiang Huang h.huangqiang at huawei.com
Mon Mar 16 02:37:59 UTC 2015


Thanks for your help, I did what you said, got some errors.

On 2015/3/13 22:32, Martinx - ジェームズ wrote:
> On 13 March 2015 at 05:33, Qiang Huang <h.huangqiang at huawei.com <mailto:h.huangqiang at huawei.com>> wrote:
> 
>     Hi list,
> 
>     I'm a Docker user, for some reason, I need to use Docker on Ubuntu 14.04
>     with devicemapper driver, but we got a serious problem because udev on
>     Ubuntu 14.04 is too old to support sync, see details:
>     https://github.com/docker/docker/issues/4036
> 
>     Seems no one ever got around of this problem, I wonder if we can upgrade udev
>     on Ubuntu 14.04 in a smooth way, e.g. from udev 204 to udev 208.
>     (RHEL7 with udev 208 don't have this problem, so I assume udev 208 would work)
> 
>     Any help would be very appreciated.
>     Thanks in advance.
> 
> 
>     Regards,
>     Qiang
> 
> 
> Hi!
> 
> The udev version 208 is on Utopic... You might want to try to manually backport it!
> 
> It is easy... You just need to add 1 line at your Trusty's /etc/apt/sources.list file (starting with "deb-src http.... utopic main") and then:
> 
> apt-get update
> apt-get build-dep udev
> apt-get source udev
> cd udev-208

after this, I actually got systemd-208, not udev-208, so I just
cd systemd-208 instead.

> dpkg-buildpackage -rfakeroot -uc -us

Everything went well till test/udev-test.pl

FAIL: test/udev-test.pl
=======================


udev-test will run 137 tests:

TEST 1: no rules
device '/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda' expecting node/link 'sda'
failed to mount empty /usr/lib/udev/rules.d No such file or directoryadd:         error
Can't exec "tree": No such file or directory at ../test/udev-test.pl line 1444.

failed to mount empty /usr/lib/udev/rules.d No such file or directoryremove:      ok

...

TEST 137: builtin path_id
device '/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda' expecting node/link 'disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0'
failed to mount empty /usr/lib/udev/rules.d No such file or directoryadd:         error
Can't exec "tree": No such file or directory at ../test/udev-test.pl line 1444.

failed to mount empty /usr/lib/udev/rules.d No such file or directoryremove:      ok

135 errors occurred

---

finally ended with:

==== test-utf8.log ====
goo goo goo
����
��
make[1]: *** [override_dh_auto_test] Error 1
make[1]: Leaving directory `/home/qhuang/systemd-208'
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2



Is this because the tests failed? I don't have /usr/lib/udev/rule.d but I have
/lib/udev/rule.d

Or is the precess right that build the whole systemd? Is there a way I can
build and install only udev?

Thanks.
Qiang

> 
> Currently, I'm maintaining a few packages for Trusty, here: https://launchpad.net/~martinx/+archive/ubuntu/ig
> 
> Also, the following blog post might help you:
> 
> https://opensourcehacker.com/2013/03/20/how-to-backport-packages-on-ubuntu-linux/
> 
> I don't know if it will work but at least, you can give it a try on a spare machine...
> 
> Best,
> Thiago





More information about the Ubuntu-devel-discuss mailing list