Confusión con sudo y varias cuentas locales

0

Estoy teniendo dificultades para entender por qué ciertas cosas son mucho más complicadas en una terminal mac que en una shell estándar de Linux ...

Digamos que tengo dos cuentas locales, un administrador llamado "adm" y un usuario estándar "usracc" y quiero poder actualizar la base de datos locate con el comando updatedb . Necesito simplemente ejecutar sudo updatedb , excepto que usracc no está en la lista de sudoers.

Ok, digo y su adm entonces sudo updatedb lo que me dice que no se encuentra el comando updatedb . Para recapitular:

  1. mi cuenta de usuario regular no está en la lista de sudoers (esto es realmente intencional, ya que no quiero comprometer el sistema si la contraseña de esta cuenta está comprometida).

  2. mi cuenta de administrador puede sudo pero aparentemente no ese comando en particular, que no se puede encontrar por ninguna razón.

  3. cuando su a mi cuenta de administrador que veo; shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied que se repite cada vez que trato de obtener asistencia de contenido con la tecla de tabulación.

así que con la cuenta raíz deshabilitada, Apple te obliga a dar privilegios de sudo a las cuentas de usuario para poder hacer cosas simples, ¿cómo ayuda eso exactamente con la seguridad? ¿O acaso he malinterpretado algo aquí?

    
pregunta posdef 19.09.2014 - 14:07

1 respuesta

1

No estás llevando tu entorno de shell a la sesión su adm . así que si echo $PATH en la cuenta usracc y en la cuenta adm, encontrará que no son iguales (por lo que adm no puede encontrar el comando updatedb). Todo lo que necesita hacer es decirle a su que desea transferir su env ( su -m adm debería hacerlo) o simplemente agregar la ruta a updatedb.

Aunque en mi cuadro updatedb se llama /usr/libexec/locate.updatedb y es un script.

    
respondido por el Camden Narzt 23.09.2014 - 06:03

Lea otras preguntas en las etiquetas