1

I have been using Parallels on my Mac to run Ubuntu for a couple of weeks and it's been fine. Today I tried to install a package and received the following error:

{user} is not in the sudoers file. This incident will be reported.

when I vim /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:/sbin:/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

This was working fine yesterday and I have made no changes to the sudoers file.

I also can't access the boot menu to start in recovery mode. Does anyone have any ideas how to solve this?

  • Is your user in the sudo group (in Ubuntu)? Also, I assume that your mac is running OSX and that parallels is running the Ubuntu, is that correct? – terdon Apr 15 '15 at 9:53
  • Mac is running OSX, and ubuntu is running within Parallels. my user is in the root group. – James McDougall Apr 15 '15 at 10:13
0

You should never attempt to edit /etc/sudoers directly. The command visudo is designed to check the format and make sure you don't end up in a situation like this one. Unfortunately, you now have a borked sudoers file which won't let you run commands with sudo so you can't fix it. If you have enabled the root account, log in as root and run visudo.

If you haven't enabled it, you need to boot your VM to a live session (point Parallels to the Ubuntu ISO you used to install and tell it to boot it). Once there, you will need to mount your virtual drive and edit the /etc/sudoers file so that it looks like this:

 #
 # 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:/sbin:/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
  • I haven't manually edited /etc/sudoers at any point this is why I don't understand why I am having this issue. – James McDougall Apr 15 '15 at 10:23
  • @JamesMcDougall well someone did. What you show is a malformed sudoers file. I have no idea how/why but that's what it is. No matter how it came about, the issue now is that you can't use sudo so you'll need to fix from a live session. – terdon Apr 15 '15 at 10:25
  • Strange - its sorted now, thanks for your help! – James McDougall Apr 15 '15 at 10:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.