#696 Issue closed: Dependency to isolinux missing in Debian 8 package

Labels: enhancement, support / question, fixed / solved / done

aussendorf opened issue at 2015-11-13 11:37:

With Debian 8 the isolinux.bin is not part of the syslinux package anymore.
Instead you need to explicitly install the isolinux package, before 'rear mkrescue' can succeed.
Solution would be to add a dependency on isolinux package for Debian >= 8.

gdha commented at 2015-11-17 13:49:

If I'm not mistaken rear will complain when you try to run mkrescue, no? That happens during the prep phase.

aussendorf commented at 2015-11-17 14:11:

Right

 /usr/sbin/rear mkrescue
ERROR: Could not find 'isolinux.bin'. Maybe you have to set ISO_ISOLINUX_BIN [] or install the syslinux package ?
Aborting due to an error, check /var/log/rear/rear-ci-Debian-8-0-64-5e6e44a85af2ab3b.log for details

I've solved this with manually installing isolinux
apt-get install -y --force-yes bareos-client rear isolinux

If you define a dependency on isolinux in rear for Debian 8, this gets resolved by the package manager.

schlomo commented at 2015-11-17 15:00:

@aussendorf, what is - in your opinion - the default feature set of ReaR that should be covered by package dependencies?

ReaR has a lot of very different options how to use it. Each leads to completely different package dependencies. We had already a lot of discussions (e.g. #369, #468, #661, #348, #250, #247, #187, #133, #122, #78 and probably more that I did not find now).

Bottom line is that over the last years we reduced the dependency "footprint" of ReaR to support users who want to have a light-weight install.

The basic conflict is between "I want to have a working solution out-of-the-box" vs. "ReaR should not be bloatware, I don't need all the stuff it pulled int".

IMHO the solution to that conflict will be an agreement on the default use case that we support out-of-the-box.

Meanwhile my recommendation would be to create a "wrapper" package that brings your default configutation (in /etc/rear/site.conf) and depends on the rear package and also the neccessary dependencies for that configuration. If for example you have 100 servers where you use ReaR with Bareos then you can simplify the configuration and the deployment of those servers. If some servers have a different configuration you can still put that into /etc/rear/local.conf.

aussendorf commented at 2015-11-18 11:01:

@schlomo
I always thought, that creating ISO images for BMR was the key-feature of REAR.

I've started to integrate Rear into our fully automated CI tests for Bareos. That way I realized that for Debian8 I have to manually add the isolinux package, while on the other tested distributions isolinux.bin came onto the systems through rear's dependencies.

That made me think, the absence of isolinux.bin on Debian 8 was not intended.

Anyway, now it's at least documented. If you decide to have minimized dependencies without isolinux.bin; I am fine with that, I've already added the workaround to our CI scripts (see above).

We will build own Rear-Packages for Bareos, that we have (automatically) tested and that we support and we will provide all necessary patches on GITHub, hoping that we can stay as close as possible to the upstream repository.

Just one other thought: If you want to have minimized rear packages but see different usecases: why not split up rear into several packages like rear-common, rear-isolinux, rear-pxe, rear-whatever. That way you could really achieve use-case-optimized and minimal rear-installations.

gdha commented at 2015-11-18 12:44:

@aussendorf for the rpm spec file we made some architectural if-clauses of packages which are necessary. If you can do the same for debian packaging then I'm fine with it. I'm not a debian packaging expert. Another point is the automated creation of a /etc/rear/os.conf for debian related systems. That is not yet implemented either.

jsmeix commented at 2015-11-18 16:05:

Only a side note regarding "why not split up rear into several packages":

@aussendorf
just do it for Debian as a first step so that then as a subsequent step also other Linux distributions could do it based on your work - of course only if you really like to deal with that kind of issues ;-)

Seriously:
In general I think rear should have minimal package requirements (which basically means only bash and very basic system tools are really needed). Anything else should be tested as needed during runtime with meaningful error messages when something is missing.

rear is not meant as an end-user application that "just works",
see in particular "Inappropriate expectations" at
https://en.opensuse.org/SDB:Disaster_Recovery

schlomo commented at 2015-11-18 21:42:

@aussendorf see https://github.com/rear/rear/issues/250#issuecomment-19624414 for one of my many attempts, so far nobody else thought it worthwhile and I lack the time :-(

Thinking again about your arguments I now have the following opinion:

  • Yes, ISO is our default (ATM) even if it is not the "primary" use case. It follows that isolinux should be part of the ReaR package requirements, at least till we come up with a better policy. Can you suggest a patch for the Debian control file that will also work on older versions of Debian/Ubuntu?
  • I also believe that ISO is not such a bad choice because it nicely wraps everything into a single bootable file that can be
    • burned to optical media
    • written to USB storage
    • easily attached to a VM or a hardware KVM solution like DRAC or iLO
    • handled also on Mac and Windows which I see positive as many admins don't run Linux on their desktops
  • As much as I love subpackages for different use cases, I also accept the notion that maybe most of our users won't really benefit from that since they do not live in a fully packaged environment

@jsmeix I disagree. With just a few config lines ReaR is a standalone DR solution that will create a bootable USB disk which you can use to recover a server or a desktop. We just never bothered to market it like that or to change the default config to be more desktop friendly. Maybe with the discussion in #698 (if it ever happens) we will come up with a better plan than what we have now.

aussendorf commented at 2015-11-19 15:20:

@gdha Ok, we will have a look at the debian8 packaging, version dependent packages dependencies can be accomplished with OBS. We are now busy with our Bareos 15.2 release but after that I'll spend some time.

roseswe commented at 2016-06-11 14:49:

Debian 8.2

rear mkbackup

ERROR: Could not find 'isolinux.bin'. Maybe you have to set ISO_ISOLINUX_BIN [] .......

aptitude install isolinux

Then it works. So please add isolinux as a dependency!

jsmeix commented at 2016-08-15 14:54:

With https://github.com/rear/rear/pull/962 merged
I consider this issue as fixed.


[Export of Github issue for rear/rear.]