You are not logged in.
I know on archlinux you can do the following. Ive never tried this on an sd card or devuan though.
grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX3
That way it wont add itself to the grub menu on your hdd and you can boot from the bios. But check below link for more info as you will then need to configure grub on the drive. Go to the section on "Configuring GRUB"
I didnt realize grub-install has so many options. I used this and was able to get grub into the MBR, and get to its grub prompt. Still couldnt boot due to more grub problems.
But thats ok, this did what I needed; get from bios to SD card.
I think the root problem is my declining that grub install step way back on the netinstall. Grub was probably just os-probing and found my harddrive install. Got confused. I will try a reinstall and see how it goes.
Has anyone successfully done this?
What I am attempting to do-
Install Devuan Ascii netinstall to an SD card/drive as legacy MBR. The PC has a harddrive, the netinstall medium is a USB drive as sdb, and the SD card is sdc.
The install went fine; was able to setup partitions for sdc and install the Devuan system to sdc. The problem comes during the install when grub gets installed. At first, the default for grub appears that it wants to install grub on the harddrive, which is NOT what I want. I suspect this because it found my existing Devuan system that resides on the harddrive. I canceled out of this step and then it presented me with options to install grub to harddrive, sdb, or sdc. I chose sdc, to install grub on the actual SD card. All seemed to go well, install completed.
I then booted into newly install SD card, but bios reports no media found. Yes, I made all the changes to bios to set the SD card as 1st boot and all that. Tried booting on another PC, same problem. I then examined the 1st sectors of the SD card and there is no code in the MBR area. No 55AAh at 01FE. Thus grub did not install itself into MBR.
Am I mistaken that you can install grub onto the SD card, do I need to use the harddrive grub (hopefully not)? Has anyone successfully done what I am trying to do?
I'm wondering here how this bad situation will affect Devuan... Any thoughts?
Hopefully it will drive more users to Devuan, a system that has no systemd problems.
Just some info- duckduckgo uses Microsoft Bing api as its search. Thus its results are more similar to Bing, as opposed to Google.
I don't imagine many on this forum use google directly and I have never seen verbatim on DDG or SP.
"verbatim" is a Google search option, on their search page. Didint mean to imply a general search option. Excuse my lack of clarification.
Search for an exact match
Put a word or phrase inside quotes. For example, "tallest building".
I've tried that many times, and it never seems to work. At this point, I'd be happy to know how to get google to return hits that contain my search terms.
I have good luck with Google Verbatim. At the search page top press Tools button, change All Results to Verbatim.
From what I understand, the results must contain all the search words (an "AND").
Rolling Stones Black and Blue. Ron Wood was a such a great addition to RS. Ive always thought this 1 of their best albums.
Jagger dosent stop.
https://www.youtube.com/watch?v=gVpzrxjiAtc
Richards and Wood.
https://www.youtube.com/watch?v=yaCYoCAOZbI
I randomly have this problem after installing the net install from ethernet. When installing from ethernet, /etc/network/interfaces will contain:
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
This control causes a delay during boot and at some point, this code should be removed, and let the network manager (wicd, networkmanger, etc) control network. But at times I have removed this code from /etc/network/interfaces and I didnt have ethernet as well. In my case the problem worked itself out with removal of this code and the network manager managing ethernet.
If no ethernet, what happens if you:
dhclient -r eth0
ifconfig eth0 down
ifconfig eth0 up
dhclient -v eth0
The openrc command to add a service to the default runlevel would be:
rc-update add lxdm default
This should create a symlink for the lxdm init script in /etc/runlevels/default (pointing to /etc/init.d), and thus openrc should autostart it upon boot.
Isao Tomita Ravels Bolero
Why does the existing script in init.d not do the job?
Rolf
It should work in openrc as is, as long as it has the LSB header stuff at the top of the script. Debian has modified openrc to use the LSB so the scripts do not need to be modified from sysvinit.
Also, you can check if openrc currently has webmin assigned to a runlevel:
rc-update show
Maybe you need to tell openrc to start the script in a runlevel. Assuming the service is named webmin and to have it start in default runlevel:
rc-update add webmin default
This thread may help-
Herbie Hancock - Chameleon
https://www.youtube.com/watch?v=UbkqE4fpvdI
I had to work through on listening to this, but turns out very good.
Miles Davis - Tutu
https://www.youtube.com/watch?v=sAMJy-PHzKE
Miles, nothing more needs to be said.
You could try try adding backports to /etc/apt/sources.list, and see if its there. But probably not going to be productive:
https://packages.debian.org/search?keywords=openjdk
You could try downloading the openjdk8 .deb file directly from here
https://packages.debian.org/stretch/ope … k-headless
and install in manually. You probably will encounter dependencies, such as the JRE; so download and install those as needed.
Then there is the option to download Oracle JDK8 and install that. But realize Oracle has newly implemented licensing.
I think I am correct with my response here, if not; please correct this post. I believe you can see what packages are Devuan, and what packages are Debian by downloading the Packages.gz files from "Devuan" for Devuan and from "Merged" for Debian (see below for details). Packages.gz contains a text file list of what I believe to be packages from Devuan (modified by Devuan), and from Debian (packages not modified).
For stable ascii, amd64 for example.
if you go here, you can download the Devuan Packages.gz file. Extract Packages.dev. I believe this to be all packages modified by Devuan:
https://pkgmaster.devuan.org/devuan/dis … ary-amd64/
Go here for Debain "merged" packages that do not require Devuan modifications:
https://pkgmaster.devuan.org/merged/dis … ary-amd64/
You will see that the packages in Devuan requiring modification pales in comparison to the Debian base packages (luckily!).
Again, please correct me if this post is incorrect.
More kool 50s/60s jazz. John Coltrane+. Very good cinematography.
To document my findings.
Debians implementation of openrc init uses /sbin/init (obviously). /etc/inittab, /etc/init.d/rcS, and /etc/rc are used to run openrc runlevel sysinit (until completion) and then runlevel default. Note runlevel boot is not used in Debians implementation. "running" these runlevels is executing /sbin/openrc with the runlevel as the commandline arg.
When running openrc-init (as demonstrated by @Geoff42), /sbin/init, initab, rcS, rc are not used. Instead openrc-init has hard-coded (in openrc-init.c) the running of runlevel sysinit, followed by runlevel boot, followed by runlevel default. "default" can be overridden with a commandline arg to openrc-init.
Also, it appears that Debian has added patches to openrc for the LSB and insserv support. This support is not included in vanilla openrc. This modification provides the ability for openrc to use stock sysvinit init scripts (via LSB) and thus not requiring all init scripts to be rewritten to openrc-run interpretive specs (/bin/sh can be used). This is good in that it allows openrc to be run with minimal changes, from sysvinit. Debians process for using LSB and insserv does not use the 3 hidden .depend.* files in /etc/init.d, instead processes the LSB headers directly (thus the 3 .depend.* files are not used).
Thanks @Geoff42 for your persistent work in getting openrc-init to boot!
Yes, it is; love ELO...
I notice that the code you quote from openrc-init is a bit different from that on the github OpenRC.
https://github.com/OpenRC/openrc/blob/m … nrc-init.c
Their version does not obviously wait for do_openrc to finish and do_openrc itself appears to execlp the runlevel.
I am not an expert C coder so I may mis-understand what it is doing, but doesn't each level just get started asynchronously?Geoff
Just to tidy up-
Yes, in effect; it would be "each level just get started asynchronously" from the code change in init(), but the new code moved the waitpid out of from init() down into do_openrc() at line 73:
while (waitpid(pid, NULL, 0) != pid)
Thus the return from do_openrc() wont happen until the "whatever we need to do to ensure all has started..." has actually started.
EDIT- To clarify; The transition of sysinit-boot-default will not be asynchronously. atleast in the intent of the coding.
I checked Debian unstable, still at .40.3. Guess its best to wait until the update migrates up through to testing...
Geoff 42 wrote:I think that OpenRC does not use the .depends files in init.d, as those files are based on the init runlevels 1 to 6,
while OpenRC uses /etc/runlevels/, which in my case are sysinit, boot and default. I am now wondering whether boot and default are starting up before sysinit has finished.I thought OpenRC does use the .depend files, at each bootup to generate the /run/openrc directory. This is how the LSB code in the init scripts ends up being used by OpenRC, and the dependencies all work as expected. I played around with this some with some test scripts and it seemed thats the way it worked. But I may be mistaken, I will look into this further.
It appears OpenRC does NOT use the .depend.* files in /etc/init.d. Instead directly using the LSB header info within the scripts. I ran some tests; changing the #Required-Start: in a particular script in /etc/init.d, and also manually changing the scripts entry in depend.boot to something different from that. The change to the script file was picked up on next boot, and the change to .depend.boot was not picked up at all. I then deleted the 3 .depend files, rebooted, and nobody complained.
The change I made to the script file was reflected in /run/openrc/deptree as well as the actual running of the script, at the next boot after the change.
I see that the changes are recent :-
https://github.com/OpenRC/openrc/commit … 65898b2411
and are to do with waiting for the child process.
Geoff
Edit: the bug report :-
The code I posted and was looking into was from Debian testing, most likely what you are running. And as you have found out, there seems to indeed be a problem with the child processes, and the github source is reflecting the current attempts being made to fix it. There is significant difference in the current Debian code, and the patches reflected in the github version; in the init as well as do_openrc functions.
Researching...
In openrc-init, the sysint and boot runlevels are hard-coded. Default is also hard-coded, but can be overridded by 1st arguement on commandline of openrc-init.
waitpid is used to ensure the various runlevels are completed before the next one is run, I suppose this is how waitpid works (not familiar with it).
Thus openrc-init "should" run the runlevels correctly (started in proper order, waiting for each to complete).
static void init(const char *default_runlevel)
{
const char *runlevel = NULL;
pid_t pid;
pid = do_openrc("sysinit");
waitpid(pid, NULL, 0);
pid = do_openrc("boot");
waitpid(pid, NULL, 0);
if (default_runlevel)
runlevel = default_runlevel;
else
runlevel = rc_conf_value("rc_default_runlevel");
if (!runlevel)
runlevel = rc_default_runlevel;
if (!rc_runlevel_exists(runlevel)) {
printf("%s is an invalid runlevel\n", runlevel);
runlevel = rc_default_runlevel;
}
pid = do_openrc(runlevel);
waitpid(pid, NULL, 0);
log_wtmp("reboot", "~~", 0, RUN_LVL, "~~");
}