The officially official Devuan Forum!

You are not logged in.

#1 2024-06-03 18:52:52

tlathm
Member
Registered: 2017-11-25
Posts: 103  

[SOLVED] Migrating Rackspace Bookworm to Daedalus?

Has anyone managed to migrate one of Rackspace's Debian Bookworm VMs to Daedalus? I tried that today and it didn't go well.

Years ago I was able to convert a Rackspace Buster VM to Beowulf without any major issues. In order to get some Rackspace specific services to work I actually got some init scripts from users here. Notably however the basic migration did in fact work.

As to my attempt to migrate Bookworm to Daedalus, I went by this guide:

https://www.devuan.org/os/documentation … o-daedalus

The only thing I saw during the migration that looked like something went wrong was during the step that does "apt-get install eudev sysvinit-core". During that I got this:

Unpacking sysvinit-core (3.06-4devuan3) ...
Setting up insserv (1.24.0-1) ...
insserv: FATAL: service mountkernfs has to exist for service networking
insserv: FATAL: service urandom has to exist for service networking
insserv: exiting now!
Setting up startpar (0.65-1+b1) ...
Setting up sysv-rc (3.06-4devuan3) ...
Setting up initscripts (3.06-4devuan3) ...

Note the insserv errors. Not sure what that is or if it was related, but after the first "reboot" required in that migration guide, the network simply didn't come up at all.

Digging into things I found several things that made no sense. Most notably the file /etc/network/interfaces had nothing for the eth0 or eth1 interfaces. We tried manually adding entries in there for eth0 (which is the public facing interface). After adding that, we were able to manually run "ifup eth0" and were able to get that interface at least working. We also had no /etc/resolv.conf file. Once we added servers to that we were at least able to complete the migration steps, but even eth0 doesn't come up when it's rebooted.

I have a feeling that's not much info to go by, but I was hoping someone had a clue what might be going on there.

Thanks!
Tom

Offline

#2 2024-06-03 20:14:10

delgado
Member
Registered: 2022-07-14
Posts: 187  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

I have no idea what "Rackspace's Debian Bookworm VM" might imply, but anyway.

Network:
The configuration is changing during migration. One option is to keep the configured "enp0s0"-alike debian device name:

$ su -
# echo 'GRUB_CMDLINE_LINUX="net.ifnames=1"' >>/etc/default/grub     ### OR to 'GRUB_CMDLINE_LINUX_DEFAULT' 
# update-grub

To further split migration in smaller parts, you could try to

# apt install sysvinit-core

as debian (reboot needed!) and then migrate to devuan.

Offline

#3 2024-06-03 20:42:20

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Thanks for the reply!

As to that "Rackspace's Debian Bookworm VM", that's just the Devian 12 VM that Rackspace offers. As far as I'm aware you can't just install your own OS on servers there, and at least you have to start with one that they offer.

I'm confused as to what you're saying about that change to the grub configuration. First of all, before the migration, the interface names on this VM were enX0 and enX1. I'm not sure why and that looked pretty alien to me frankly. Also, I was under the impression that adding that net.ifnames=1 was expressly to end up with the eth0/eth1 names, and not the other way around(?). This is currently what's in /etc/default/grub:

grep GRUB_CMDLINE_LINUX /etc/default/grub
GRUB_CMDLINE_LINUX="root=LABEL=root vsyscall=emulate"
GRUB_CMDLINE_LINUX="vsyscall=emulate"

Clearly after that reboot I'm ending up with eth0 and eth1, so I'm totally confused as to all that. If you're suggesting that change in order to have them match the existing interface names, then again, the existing ones weren't the enp0s0 names anyway.

I'm also confused as to exactly what you're suggesting about installing sysvinit-core. Are you saying to do that and reboot before anything else...even before changing the /etc/apt/sources.list?

Thanks again for the reply!
Tom

Offline

#4 2024-06-04 10:51:12

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

OK. I see a few things I was confusing there. I was thinking of "net.ifnames=0", so I see your point about trying net.ifnames=1. I take it that the conversion of the network configuration for Devuan can only work if the device names are the same(?). That makes sense. I'm going to try that next.

As to the suggestion about installing sysvinit-coreas Debian, it occurred to me that it seems pretty unlikely that would even be in the Debian repos(?). They clearly don't support it, so I can't believe it would be there.

Thanks again!
Tom

Offline

#5 2024-06-04 13:27:29

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

OMG. This is so screwed I almost don't know where to start. So to be clear as to what I was trying here...I was assuming/hoping that getting the VM to use the same interface names before and after the conversion would get all this to work. What I just went through trying that almost defies description:

So first of all, adding net.ifnames=0 to the kernel parameters (and I did make sure that I actually saw that option in /proc/cmdline) did NOT cause it to use the enX0/enX1 interface names...they were still set to eth0/eth1 after rebooting. After that I stumbled on this which just amazed me: Apparently Debian Bookworm DOES in fact use interface names like enX0(??):

https://yeri.be/bookworm-eth0-enx0/

I found it stunning that I didn't find more on that one. What I did was to add the reserve of that to the interfaces file...that is:

rename eth0=enX0
rename eth1=enX1

So what I did next was to try the conversion over again with a new Debian 12 VM. I made the above change first, and then went through the migration steps.Sure enough, after the reboot, the above DID cause it to use the same interface names as the original VM...that is enX0/enX1. However, that STILL didn't properly configure the /etc/network/interfaces file for some reason. It was left untouched.

I'm totally lost as to what part of this whole process would do that but it's clearly not happening. But stuff gets WAY worse than that:

Next we painstakingly created the the entries in /etc/network/interfaces manually. This is where it gets really strange. While doing "ifup enX0" does in fact bring up the interface properly, stopping and starting /etc/init.d/networking did NOT bring them up. Oddly enough, running "/etc/init.d/networking stop" DOES apparently do an "ifdown", yet doing "/etc/init.d/networking start" apparently does NOT do an ifup on the configured interfaces at all!

That last one is the show-stopper now for sure. Everything seems correct at that point. What on earth would prevent that service from running ifup on the configured interfaces??

Wow this is painful. We really need this server, and I'm desperately hoping I don't end up having to use Debiam as-is with systemd, but we're limited to what Rackspace offers.

ANY suggestions are welcome. This is just beyond painful.

Tom

Offline

#6 2024-06-04 20:52:58

delgado
Member
Registered: 2022-07-14
Posts: 187  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Probably I confused you. That was not intended.
Both points in my 1st post are completely optional! And proposed, since the offical migration did not work in your case.

#3
Clearly after that reboot I'm ending up with eth0 and eth1

Which clearly indicates "net.ifnames=0"

#5
So first of all, adding net.ifnames=0 to the kernel parameters (and I did make sure that I actually saw that option in /proc/cmdline) did NOT cause it to use the enX0/enX1 interface names...they were still set to eth0/eth1 after rebooting.

Of couse not. "net.ifnames=1" would accomplish that. (At least on plain debian and without addional renaming).

Offline

#7 2024-06-04 22:24:12

ralph.ronnquist
Administrator
From: Battery Point, Tasmania, AUS
Registered: 2016-11-30
Posts: 1,198  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Tom, did your painstaking creation of /etc/network/interfaces configurations include a line like

auto ethX0 ethX1

which is what ifupdown requires in order to auto-configure those interfaces when started?

There is e.g. man 5 interfaces for some llight reading about this.

Online

#8 2024-06-05 11:12:18

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Thanks delgado and ralph.ronnquist for the replies!

ralph: Wow yea...We clearly did NOT have that "auto" for the interfaces. That's clearly the issue. We'll try that today.

Thanks!
Tom

Offline

#9 2024-06-05 18:38:32

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Yup...Adding the auto declaration in the interfaces file was our issue. Now we should be able to configure all that manually. As far as I know that was the only issue with the migration.

I'm going to mark this as solved. However after we work through other things like getting the rackspace services going I may post back here on that for other's future reference.

Thanks again!
Tom

Offline

#10 2024-06-11 12:57:19

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

I'd actually REALLY like to better understand what exactly happened with this, as I'll probably have to do this two more times. If anyone whose fairly familiar with how the migration works can help it would be greatly appreciated.

What I'd like to understand is this:

a) From what I recall from migrating Buster to Beowulf the existing network configuration WAS automatically converted and I ended up with a working /etc/network/interfaces file. Just to be sure, I assume that WAS actually supposed to happen in this case(?).

b) I've also been assuming that the reason that automatic configuration failed was because the existing Bookworm install used the interface names enX0/enX1, but once it rebooted to Daedalus it had the interface names eth0/eth1.

Is all that correct? Thanks in advance.

One other thing I'm curious about as well: Manually creating that interfaces file would have been WAY more easy for me if the Debian Bookworm install had net-tools installed, and it didn't. At least on the Debian repos that Rackspace was using, the net-tools package wasn't even available. From everything I see, that SHOULD be available in Bookworm(?). In Bookworm, what repo would that be in? Is it possibly the backports? I don't think the Rackspace repos included that.

Thanks in advance!
Tom

Offline

#11 2024-06-11 17:39:50

delgado
Member
Registered: 2022-07-14
Posts: 187  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

to a) Buster probably still used eth0/eth1 itself (don't remember, when the change was in debian).
Then there was no net-device-name change during migration.

to b) There is no network-auto-configuration tool involved during migration.
E.g. network-manager or connman would do such things, if installed.
When you use plain dhcp without such programs, it's your task to fix the network.

net-tools are not installed by default anymore, but present in the std. repos.

Regards

Offline

#12 2024-06-11 18:03:42

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Thanks for the reply! I'm a little confused as to your answer to (b) though. We're using static IPs, though we're not using network-manager or conman. If what you're saying is the case, what automatically did the conversion when we did this from Buster to Beowulf?

EDIT: Oh also: Do you have any idea which Debian repo net-tools would be in? As I noted the repos that Rackspace was using didn't have that. Here's their original sources.list:

/etc/apt/sources.list-ORIG 

deb http://mirror.rackspace.com/debian bookworm main non-free-firmware
deb-src http://mirror.rackspace.com/debian bookworm main non-free-firmware

deb http://mirror.rackspace.com/debian-security bookworm-security main non-free-firmware
deb-src http://mirror.rackspace.com/debian-security bookworm-security main non-free-firmware

# bookworm-updates, to get updates before a point release is made;
# see https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports
deb http://mirror.rackspace.com/debian bookworm-updates main non-free-firmware
deb-src http://mirror.rackspace.com/debian bookworm-updates main non-free-firmware

I see that they don't have a backports repo in there. Is that where it would be?

Thanks!
Tom

Last edited by tlathm (2024-06-11 18:18:53)

Offline

#13 2024-06-11 20:37:58

delgado
Member
Registered: 2022-07-14
Posts: 187  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

History: When devuan forked debian, the std. network interface name was eth0 on both systems, so a migration does not change anything in this respect. And this is (probably) the case for Buster.
Some years later (release?) debian changed the naming convention to the current expression, devuan did not. Now the default net device names are different.

apt-get install net-tools works on any recent debian, no idea what rackspace did.

Offline

#14 2024-06-11 20:58:58

ralph.ronnquist
Administrator
From: Battery Point, Tasmania, AUS
Registered: 2016-11-30
Posts: 1,198  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

eth0 etc is the name of the interface assigned by the kernel module. All the rest are done afterwards, typically via udev rule(s). It may have been due to that eventually (with bookworm) udev has got programmed to generate specific naming rules for itself into /etc/udev/rules.d/ that then apply subsequently regardless of boot options. It requires a bit of "surgery" of the udev rules to get rid of that.

There is a web site, https://packages.debian.org/index, where one can search for details about debian packages. net-tools does exist in bookworm (version 2.10-0.1) so apparently Rackspace applies some "we know best" filter on package availabiility. I would choose some other mirror.

Online

#15 2024-06-11 22:42:38

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Thanks for the replies!! As it turned out, my assumption was correct...that is, that in Bookworm the net-tools is in the backports repo, which wasn't in that default Rackspace sources.list. Once I copied one of the other repo lines and changed it to bookworm-backports, I was able to install it.

Thanks again for all the help!

Tom

Offline

#16 2024-06-11 22:58:49

ralph.ronnquist
Administrator
From: Battery Point, Tasmania, AUS
Registered: 2016-11-30
Posts: 1,198  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

Hmm. It then appears https://packages.debian.org/index is unreliable.(?)
Never mind; good it all works for you.

Online

#17 2024-06-12 11:21:09

tlathm
Member
Registered: 2017-11-25
Posts: 103  

Re: [SOLVED] Migrating Rackspace Bookworm to Daedalus?

I think you're correct. That search finds net-tools but not if you search bookworm-backports which certainly seems to be where it is. Odd one.

Tom

Offline

Board footer