How to edit /etc/hosts without sudo?
Solution 1
You don't need sudo to fix that, try pkexec
,
pkexec nano /etc/hosts
pkexec nano /etc/hostname
After running pkexec nano /etc/hosts
, add your new hostname in the line that starts with 127.0.1.1
like below,
127.0.0.1 localhost
127.0.1.1 your-hostname
And also don't forget to add your hostname inside /etc/hostname
file after running pkexec nano /etc/hostname
command,
your-hostname
Restart your PC. Now it works.
Solution 2
You need sudo or root privileges to edit the /etc/hosts
file in your local host. If you don't, there is no way of editing this file.
Then you must add an entry to /etc/hosts
so that your local host can resolve properly the hostname of the remote host.
This is the format of the lines in /etc/hosts
127.0.0.1 localhost.localdomain localhost
10.10.2.9 remotehost.labs remotehost
Related videos on Youtube
evamvid
Updated on September 18, 2022Comments
-
evamvid over 1 year
I have a machine that I can only access using SSH.
I was messing with the hostnames, and now it says:
ssh: unable to resolve hostname
I know how to fix it in
/etc/hosts
.Problem is, I need
sudo
to fix them because my normal account doesn't have permissions.What's the best way to fix the hosts?
-
Snipe3000 about 10 yearsInstead of editing
/etc/hosts
, maybe unix.stackexchange.com/questions/10438/… would help?
-
-
evamvid about 10 yearsI'm a little confused. What exactly does
pkexec
do? Also when I ran it on the hosts file, it showed up with a blank doc. When I saved, did I overwrite what was there? -
Avinash Raj about 10 years
pkexec allows an authorized user to execute PROGRAM as another user. If username is not specified, then the program will be executed as the administrative super user, root.
-
evamvid about 10 yearsSo it's like a backup/fake sudo? Awesome!
-
evamvid about 10 yearsAnd, I'm not sure why it showed blank, but it seems to have worked -- now I'm trying to fix the actual hosts problem
-
Avinash Raj about 10 yearsYes, try to fix that. You said "I know how to fix it in /etc/hosts and /etc/hostname"
-
evamvid about 10 yearsI thought I did, but apparently I didn't =)
-
mavillan about 10 yearsAnyway, pkexec needs to authenticate the user to execute the command before running it