You are not logged in.
UPDATE: I surfed around and learned that the menu has something to do with /boot/grub/grub.cfg. There is a line in it:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 10 (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-8E1EA5C71EA5A8A3' {
and it was updated yesterday. Comments in grub.cfg state that it is "automatically generated by grub-mkconfig using templates # from /etc/grub.d and settings from /etc/default/grub," though /etc/grub.d and /etc/default/grub do not appear to contain anything relevant. grub-mkconfig scans drives for installed bootable OSs, so maybe the Windows 10 boot entry is added when grub is updated.
I have a question that isn't Devuan's fault, but I'm not sure where to ask it.
I have a few different Linux distributions, all Debian spins, installed on SSDs in external enclosures connected via USB (the internal SSD has Windows 10 installed on it). I would think they'd all operate via the same rules. However, one thing puzzles me. On some distributions, after I boot a few times, the boot menu changes to include a Windows 10 entry. On Sparky Linux systems, it's clear why that happens, as a script that deals with Grub runs, demanding that the user choose the drive on which Grub should be installed. After that script runs, the boot menu includes a Windows 10 entry. But on this system, a Devuan MATE, I saw the Windows 10 boot menu entry after ten or twenty boots. What's strange (to me) is that the Windows 10 boot entry will be present even if I remove the internal SSD.
By the way, when I install Linux on an external SSD, I remove the internal SSD to avoid a dual-boot situation.
At first I thought the Windows 10 boot entry was added after I booted Windows without disconnecting the external SSD, but now I'm not sure about that.
Does Linux automatically run Grub on every boot? Is it when Grub is updated?
Can this extraneous boot entry be removed without harming the OS?
Feel free to point me to a website explaining things, as I'd like to understand what's happening.
@Head_on_a_Stick
syslog does not appear to contain any warnings or failures. Curiously, I left Wicd Network Manager running for many minutes. When I returned to it and clicked in the main area, the list of available WiFi sources suddenly appeared.
If it matters, this laptop has the dreaded Ralink WiFi hardware, which many Linux distributions seem to think is the anti-Christ, along with Broadcom.
I've asked many questions and have gotten all of my queries answered. So I thought I'd try to give back to the community.
When I first started using Linux, I thought I was restricted to the browsers the developers offered. Then I realized that browsers such as Pale Moon and Basilisk could be used by downloading it (Pale Moon calls it a bzipped tarball), extracting it, and moving the folder to the desktop, where I could start it by opening the folder and double-clicking on the executable (I could also just leave them in Downloads and access them there). But then I realized that I could add those entries to the panel by adding two files to the file system. Please note that Openbox is slightly different, as one must edit the Panel file.
First, a .png file must be copied to /usr/share/pixmaps, in this case, basilisk.png. I found this icon in basilisk/browser/icons, named mozicon128.png. This file will serve as the icon in the panel.
Second, a .desktop file must be added to /usr/share/applications. The format is:
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Exec=/home/username/Downloads/basilisk/basilisk
Name=Basilisk
GenericName=Web Browser
Icon=basilisk
Categories=Network;WebBrowser
The file referenced in the Exec line could reside anywhere. The file referenced in the Icon line has an implied extension of .png, in this case the icon is called "basilisk.png" and resides in /usr/share/pixmaps. I chose to copy the .png file to /usr/share/pixmaps, though one could easily keep it in /home/username/Downloads and reference it properly. The Categories line will place it in the start menu section titled Internet. The files will be accessed on the next login, so don't panic if you add them and don't see them in the start menu.
Please note that the above process would work for any application. Also note that certain browsers, with Brave being a good example, do not offer a downloadable folder that can be used this way. Browsers such as Vivaldi that offer a .deb file will automatically create .desktop and .png files and copy them to the appropriate directories. The reason I left the browser folder in Downloads is that Linux is inconsistent with respect to executables. On Devuan, both Firefox and Vivaldi are stored in /opt, so I could have copied the Basilisk folder to /opt as well. But on Sparky Linux, Firefox is stored in /usr/lib, which is surprising given that both Devuan and Sparky are Debian spins. /usr/share/pixmaps appears to be consistent between Debian spins.
The above .desktop / .png scheme works for openSUSE as well, though obviously .deb files will be of no use.
I have two Devuan systems, both on SSDs in external enclosures that I run via USB on an HP laptop with Intel 3rd Generation Core processor and 8 GB memory. The first is Cinnamon, which pretty much runs like a Swiss clock. MATE is almost as reliable, but Wicd Network Manager does not always provide a connection. Right now it is showing "Scanning" which it has done for thirty minutes now.
I'm thinking of switching to regular Network Manager. Should I uninstall Wicd Network Manager after installing regular Network Manager? Obviously I would need to change the applications on the right side of the panel to eliminate Wicd Network Manager. Or will both network managers coexist?
P.S. My laptop is old and not 100% anymore -- the USB ports are a constant annoyance -- so it might be that Wicd Network Manager is merely a little more sensitive to the aging hardware.
@zapper
Point taken, but:
- One only learns these things after one pays for it.
- ExpressVPN also has a problem with Manjaro, as they only test with Arch and expect Manjaro users to accept AUR.
- I first used ProtonVPN, but its commands require sudo while ExpressVPN commands do not. ProtonVPN eliminated its servers in my home city, which makes it problematic for websites requiring local login (Hotmail and my bank's website did not appreciate that).
Which VPNs are known to be compatible with Devuan?
nobody@toshiba128:~$ sudo /usr/sbin/expressvpnd
restore: /etc/resolv.conf not generated by expressvpn
^C
nobody@toshiba128:~$
The end of /var/log/syslog didn't contain anything related to the above.
As I said before, I think the latest ExpressVPN .deb is pretty much incompatible with non-systemd systems. I'm marking this thread as solved because I have a work-around, i.e., use the previous .deb.
@all
nobody@toshiba128:~$ pgrep -a expressvpn && echo 'It is running' || echo 'Not running'
Not running
nobody@toshiba128:~$ /usr/sbin/expressvpnd
<crickets>
Then I re-executed the first command, but I received the same result.
@Marjorie
nobody@toshiba128:~$ sudo update-rc.d expressvpn defaults
nobody@toshiba128:~$
nobody@toshiba128:~$ sudo service expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!
I think the latest expressvpn .deb is hosed with respect to non-systemd systems.
@Head_on_a_Stick
Okay, I'm back. My Internet access on the weekend is limited.
nobody@toshiba128:~$ expressvpn status
Cannot connect to expressvpnd daemon.
It seems that the expressvpn daemon is not running. Please run "sudo service expressvpn restart" to start it.
If the problem persists, please contact us.
nobody@toshiba128:~$ pgrep -a expressvpn && echo 'It's running' || echo 'Not running'
>
@zapper
I think substituting s6 for SysV is way beyond my talents.
@Head_on_a_Stick
You lost me on the third command:
nobody@toshiba128:~$ ar x Downloads/expressvpn_3.4.0.62-1_amd64.deb
nobody@toshiba128:~$ tar xf data.tar*
nobody@toshiba128:~$ cat etc/init.d/expressvpn
cat: etc/init.d/expressvpn: No such file or directory
nobody@toshiba128:~$ ls
control.tar.gz Desktop etc Pictures usde
data.tar.gz Documents _gpgbuilder Public usr
debian-binary Downloads Music Templates Videos
nobody@toshiba128:~$
So what the heck, I purged the working .deb and installed the funky one:
nobody@toshiba128:~$ cat /etc/init.d/expressvpn
#! /usr/bin/env bash
### BEGIN INIT INFO
# Provides: expressvpn
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start expressvpn at boot time
### END INIT INFO
# Do NOT "set -e"
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="ExpressVPN service"
NAME=expressvpnd
DAEMON=/usr/sbin/$NAME
DAEMON_ARGS="--client-version 3.4.0 --client-build 62"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/expressvpn
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 5
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
STDOUT=${STDOUT:-"/dev/null"}
STDERR=${STDERR:-"/dev/null"}
# Load the VERBOSE setting and other rcS variables
[ -f /lib/init/vars.sh ] && . /lib/init/vars.sh
# To be replaced by LSB functions.
function log_daemon_msg() {
echo -n "$@"
}
# To be replaced by LSB functions.
function log_end_msg() {
retval=$1
if [ "$retval" -eq 0 ]; then
echo " [ OK ]"
else
echo " [ FAILED ]"
fi
return "$retval"
}
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
[ -f /lib/lsb/init-functions ] && . /lib/lsb/init-functions
function pidofproc() {
if [ $# -ne 3 ]; then
echo "Expected three arguments, e.g. $0 -p pidfile daemon-name"
fi
local PID PIDFILE
PID=$(pgrep -f "$3")
PIDFILE=$(cat "$2")
if [ "x$PIDFILE" == "x" ]; then
return 1
fi
if [ "x$PID" != "x" ] && [ "$PIDFILE" == "$PID" ]; then
return 0
fi
return 1
}
function killproc() {
if [ $# -ne 3 ]; then
echo "Expected three arguments, e.g. $0 -p pidfile signal"
fi
local PID
PID=$(cat "$2")
/bin/kill -s "$3" "$PID"
while true; do
if pidof "$(basename "$DAEMON")" >/dev/null; then
return 0
fi
sleep 1
n=$(( "$n" + 1 ))
if [ "$n" -eq 30 ]; then
/bin/kill -s SIGKILL "$PID"
return 0
fi
done
}
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
if command -v start-stop-daemon > /dev/null 2>&1; then
nohup start-stop-daemon --start --quiet -m --pidfile "$PIDFILE" --exec "$DAEMON" -- "$DAEMON_ARGS" >>"$STDOUT" 2>>"$STDERR" &
else
su -s /bin/sh -c "nohup $DAEMON -pidfile $PIDFILE $DAEMON_ARGS >>$STDOUT 2>>$STDERR &"
fi
# Add code here, if necessary, that waits for the process to be ready
# to handle requests from services started subsequently which depend
# on this one. As a last resort, sleep for some time.
sleep 1
if /usr/bin/expressvpn status > /dev/null 2>&1; then
return 0
else
return 2
fi
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
if command -v start-stop-daemon > /dev/null 2>&1; then
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$PIDFILE" --name "$NAME"
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
# If the above conditions are not satisfied then add some other code
# that waits for the process to drop all resources that could be
# needed by services started subsequently. A last resort is to
# sleep for some time.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f "$PIDFILE"
return "$RETVAL"
else
# Stop the daemon.
if [ -e "$PIDFILE" ]; then
local PID
PID="$(pgrep -f "$PIDFILE")"
if test ! -z "$PID" && kill -0 "$PID" &>/dev/null; then
if killproc -p "$PIDFILE" SIGTERM && /bin/rm -rf "$PIDFILE"; then
return 0
else
return 2
fi
fi
else
return 1
fi
fi
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
status)
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
;;
restart)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
log_action_msg "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" || true
exit 1
;;
esac
:
Normally all I have to do is "dpkg -i <the .deb>" and "expressvpn activate" but with the funky .deb I get the following:
nobody@toshiba128:~$ expressvpn activate
Cannot connect to expressvpnd daemon.
It seems that the expressvpn daemon is not running. Please run "sudo service expressvpn restart" to start it.
If the problem persists, please contact us.
nobody@toshiba128:~$ sudo /etc/init.d/expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!
Thanks for the replies.
I'll keep that restart command for future use. I might have to build an openrc system to play with it.
What happened was, ExpressVPN released a new .deb (expressvpn_3.4.0.62-1_amd64.deb), which resulted in the following error when I tried to connect:
expressvpn connect <city>
Cannot connect to expressvpnd daemon.
It seems that the expressvpn daemon is not running.
Please run "sudo service expressvpn restart" to start it.
If the problem persists, please contact us.
sudo service expressvpn restart
[FAIL] Restarting ExpressVPN service: expressvpnd failed!
Only after I executed "dpkg --purge expressvpn" and dpkg -i expressvpn_3.3.0.21-1_amd64.deb" (the previous .deb) and "expressvpn activate" was I able to get ExpressVPN to run again. ExpressVPN admitted they do not test against any Debian spin that uses an init other than systemd. I suspect ExpressVPN only tests using Debian and Ubuntu (or a spin like Linux Mint).
I can use ExpressVPN with the older .deb, but eventually that will stop working. By the way, the new .deb works on Linux Mint and Sparky Linux, both of which employ the dreaded systemd.
The latest version of Expressvpn is having problems. Expressvpn support staff told me to execute "systemctl daemon-reload" but systemctl is a systemd thing. What's the Devuan equivalent? I selected SysV for init software in Beowulf Cinnamon.
On a related subject, there is a directory "/etc/systemd" but is that actually in use or is it a holdover from Debian?
@MiyoLinux @Head_on_a_Stick @Pix3l Thanks for the replies.
The problem is global (if that's the right word), as the taskbar volume control is set to zero.
alsa-utils is installed. And I'm not sure what you mean by /etc/init.d/alsa-utils init script being enabled. It's got executable permissions and the contents are not commented out.
Pix3l is correct, the problem was not present before.
The release notes state that it is necessary to comment "autospawn=no" in /etc/pulse/client.conf.d/00-disable-autospawn.conf. Okay, that allows for sound. But there's still a minor bug. I think it happens with every boot, but it might be something a little more subtle, perhaps it happens on the first boot of a day. The volume slider is set all the way to the left, so there is no sound. It's simple to fix, just move the slider to the right, but why doesn't it retain the previous setting?
P.S. In case it matters, this is Cinnamon.
Thanks for the reply. Yes, that was exactly the problem. Strange that it never happened before, as I use vi to edit a number of files immediately after installation.
Every time I build a Devuan system, and some other distros, I disable colored vi. It's always been simple: create a .vimrc file and insert "syntax off" into it.
But now I get an error:
vi .bashrc
Error detected while processing /home/nobody/.vimrc:
line 1:
E319: Sorry, the command is not available in this version: syntax off
Press ENTER or type command to continue
Here's the contents of .vimrc:
cat .vimrc
syntax off
And it's in the correct location:
pwd
/home/nobody
Did something change recently in vi?
P.S. In case it matters, this is Cinnamon.
Yup, that fixed it. There was well over a hundred errors. Good thing the default is 'Y' so the Enter key is all one needs. Thanks again.
@Head_on_a_Stick
Thanks for the reply. No, I didn't. I'm doing that now. Holy cow, there's a never-ending list of prompts to fix this and that.
It finally finished. I'll try to boot it.
I will use a USB 2.0 cable so the USB 3.0 ports wil be converted to USB 2.0. It's slower, but I've had luck with that trick in the past.
I believe the USB 3.0 ports on my 2013 laptop (HP with Intel 3rd Generation Core processor, 8 GB memory) are no longer reliable. I say that because a few times I have seen the strange visuals one only sees after accidentally unplugging the cable from the external SSD. One of them was bad, so I used the other one, thinking it was okay. If only.
Today I saw a message telling me that the thumbnail cache was corrupted (or words to that effect). Clicking on FIX did not fix the problem. I rebooted, only the system was unable to boot because of corruption (it told me to fsck). I shut it down and restarted using a Sparky Linux USB flash drive plugged into a USB 2.0 port. I unmounted the drive using GParted and tried to fsck, but received the below message:
sudo fsck /dev/sdc
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdcThe superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>Found a dos partition table in /dev/sdc
I tried both of the suggested commands, but received essentially the same message.
Is it time for a rebuild?
@golinux
:-)
I agree, but I like its icons.
@PedroReina
Thanks for the reply. No, that wasn't it. Eventually I discovered that Panel Options -> Configure Panel offered a way to remove any of the icons.
As for the transparency, it's a feature of the icon set I chose, GNOME. Most of the icon sets include a transparent Audio Volume. Breeze and Breeze Dark are the only ones (of the default sets) that include a visible one. I would think it's a bug.
I just built a KDE system mainly to learn the vagaries of that desktop.
I added a number of icons to the panel, including Konqueror. However, I'm not impressed with Konqueror, as it displays an Undocumented Error upon starting, something to do with the home page, I guess. So I thought I'd delete the icon from the panel. But unlike with Cinnamon or MATE, right-clicking on the icon does not provide a menu option to remove it. Dragging it does not work either. How are icons deleted from the panel?
I actually read the release notes, so I was able to get sound to work. But when I placed Volume Control on the panel, the icon was transparent. I know it's there because I can click on it and get it to display. Any hints on how to make it visible?
@Head_on_a_Stick
I have Windows 10 installed on the internal SATA drive, with Devuan running via USB 3.0 external enclosure. I'm not dual-booting. I should have thought of the time problem, as I see it all the time on Windows. What I'm doing confuses the motherboard.
Thanks for the solution for Linux. That will help a lot.