Linux – Root password contains character that can’t be entered

linuxpasswordputtyrootssh

Don't know what happend really. I changed the root password to a long password containing weird characters, and triple checked that I could log in with it, and has been ever since. Until now.

I think the bad character is a ’. How do I enter that in Putty? When I paste the password in Putty, that character and some other are removed/moved. I've set UTF-8 under Window>Translation.

Update: locale returns the following.

LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

I've (falsely) assumed it was using UTF-8.

Is there a way to make su read the password from a file?

Update 2: I created two files using Notepad++; ansi.txt and utf8.txt. Both containing the string abc’def

cat ansi.txt prints abcdef
cat utf8.txt prints abcâdef

Best Answer

If the "special" character is in fact an accent char (like ' or ```), I could imagine that your current input method converts this character followed, say, by a vowel into an accented char. Entering ' and e on a German keyboard, e.g., will in many cases result in é, similar for ```` and u resulting in ù. You could try to enter a space directly after the "special" character to prevent such a conversion. No guarantee, just a guess. (And I hope this answer will appear as I see it now in the preview. ;-))