0

Whenever I use the sudo command, I get the following error:

sudo: unable to resolve host josphh-pop-os: Name or service not known

Usually with things like sudo apt install it shows the error and then runs, but with other commands it just produces that error and nothing more. I'm currently running Pop_OS if that is any help. Thanks in advance.

Edit: Contents of the file /etc/sudoers:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:>

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
5
  • 1
    Please add the contents of the file /etc/sudoers by editing your question. Use the "code" feature while editing to format the file contents here so it is readable. Commented Nov 27, 2020 at 18:39
  • Use the id command to make sure you are inside the groups admin or sudo. Also, does the problem persist if you reboot the machine? Commented Nov 28, 2020 at 12:28
  • @Hobber after using the command id, I get the following message uid=1000(josphh) gid=1000(josphh) groups=1000(josphh),4(adm),27(sudo) And also no, the problem persists after reboot. Commented Nov 28, 2020 at 12:37
  • 1
    What files exist in the /etc/sudoers.d/ directory? Commented Nov 28, 2020 at 16:10
  • @glennjackman just a README file Commented Nov 28, 2020 at 18:18

2 Answers 2

1

Usually this is because you don't have a hostname (perhaps corrupt installation?), try editing /etc/hostname by doing sudo nano /etc/hostname and write a name for your computer.

1
  • It seems that there's already a hostname in that file, I've changed it but i still get the same sudo error. Commented Nov 28, 2020 at 12:15
0

The output of the command hostname (or the Static hostname field of the command hostnamectl) should match the hostname written in the file /etc/hostname.

The file /etc/hosts should also contain something like this:

127.0.0.1   localhost
::1         localhost
127.0.1.1   yourHostName.localdomain    yourHostName

An error in some of these files may be the cause for your problem.

You will probably need sudo privileges to fix that. But you are precisely unable to run sudo, so if you have the option, try logging as root:

su
1
  • When opening the file /etc/hosts I get exactly what you specified. And when running hostname, I get the exact name as in the file /etc/hostname Commented Nov 28, 2020 at 12:20

You must log in to answer this question.