Probably a locale issue
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I noticed this as well on Void, but never really looked into the cause, but like other people pointed out, the root user must be lacking some shell-related configuration or something. For me tab-completion and up arrowing through the command history was also broken for root. It frustrated me, but never enough to bother trying to solve it lol.
Super users don't make mistakes.
You might also have a look at stty --all output: erase in particular.
stty situation indeed
It says 'erase = ^?'. How do I change this?
What is it when you're root?
What is it when you're not root?
Is it possible to set this permanently?
Sure, but there are many ways to do it, depending on all sorts of details/variables, like what terminal or terminal emulator you are using, what shell, etc.
Consistent BackSpace and Delete Configuration has lots of information that might help you understand the relevant details of your system and options for setting it as you wish for root.
Yeah, probably a .bashrc difference between users.
It could also be ~/.inputrc (or /etc/inputrc if not in the user's home directory.) https://man.archlinux.org/man/readline.3
What does $TERM say for both users? I assume you use Bash for both users?
It says "linux" for both. You're right, I'm using bash
This is one of those issues where there's a billion different solutions based on a billion different reasons.
Have you compared the configuration files? You most likely have some keybinding that root don't have, and hopefully works for root as well.