Bash: permiso denegado para escritura de archivos

Bash: permiso denegado para escritura de archivos

Seguí estoguía tutorialsobre "Cómo crear archivos Proc de Linux en un programa C usando LKM".

Creé exitosamente mi módulo y lo cargué. Ahora quiero hacer eco en mi archivo proc para asegurarme de que se llame al método que se supone que debe llamarse.

Yo he tratado:

$ echo "hello" > /proc/procEntry123       # But it says permission is denied!
$ sudo echo "hello" > /proc/procEntry123  # Same error message.

¿Cómo puedo elevar los privilegios para hacer eco en este archivo? Soy el único usuario y administrador de este sistema.

Respuesta1

¡Pero dice que se ha denegado el permiso!

Probablemente lo diga porque estableces permisos restrictivos al llamar create_proc_entry(). (0644 se traduce como "u=rw,go=r", que solo otorga permisos de escritura al propietario, que por defecto es root).

Puse "sudo" delante: el mismo mensaje.

Las redirecciones como >o |son realizadas por el shell en ejecución,antesinvoca sudo.

Tienes que usar sudo sh -c "echo blah > /proc/blah"o ejecutar un shell raíz con sudo -s.

Soy el único usuario: ¡esta es mi máquina personal!

Esto no importa en Linux. Los permisos de archivos se aplicarán independientemente de quién utilice la computadora.

Si no desea eso, inicie sesión como root o utilícelo pam_cappara tener la cap_dac_overridecapacidad, pero cualquiera de los métodosvoluntadcausar problemas tarde o temprano.

información relacionada