Bash: autorizzazione negata per la scrittura di file


6

Ho seguito questa guida tutorial su "Come creare file Proc Linux in programma C usando LKM".

Ho creato con successo il mio modulo e l'ho caricato. Ora voglio fare eco al mio file proc per assicurarmi che il metodo venga chiamato che dovrebbe essere chiamato.

Ho provato:

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

Come posso elevare i privilegi per fare eco a questo file? Sono l'unico utente e amministratore di questo sistema.


"Ma io sono sudo", no in realtà sei suil super utente. Significa qualcosa come "Esegui questa azione come superutente" poiché la seconda metà è docome in "fai questo, fallo"
— TheZ,

Risposte:


13

Ma dice che il permesso è negato!

Probabilmente lo dice perché hai impostato autorizzazioni restrittive durante la chiamata create_proc_entry(). (0644 si traduce in "u = rw, go = r", che fornisce solo autorizzazioni di scrittura al proprietario, il cui valore predefinito è root.)

Ho messo "sudo" davanti ad esso - stesso messaggio.

Reindirizzamenti come >o |vengono eseguiti dalla shell in esecuzione, prima che invochi sudo.

Devi usare sudo sh -c "echo blah > /proc/blah"o eseguire una shell di root con sudo -s.

Sono l'unico utente - questa è la mia macchina personale!

Questo non ha importanza in Linux. Le autorizzazioni per i file verranno applicate indipendentemente da chi utilizza il computer.

Se non si desidera che sia il login come root, o utilizzare pam_capper darti la cap_dac_overridepossibilità - ma entrambi i metodi sarà causare problemi prima o poi.


2
No, non suggerire che l'inesperito acceda come root. Questa è una ricetta per il disastro!
— Darth Android,

@DarthAndroid: se riescono a scrivere un modulo del kernel, dovrebbero avere abbastanza buon senso per non farlo.
— Grawity,

2
Ma il problema non è che stai suggerendo questo a un utente esperto, è che tutti, il loro fratello e il loro cane che visitano questo post vedranno che hai suggerito di lanciare cautela al vento e accedere come root. Ci sono già 23 opinioni su questa domanda, quindi in sostanza 23 persone ora potrebbero pensare che vada bene. :) Solo un pensiero ... Detto questo, molte persone accederanno come root, non importa quello che diciamo loro, quindi immagino che non abbia davvero importanza ...
— jmort253

Salve ragazzi, ho controllato il file proc ed è stato risolto. Questo esercizio era puramente sperimentale, quindi non importa che il file sia rw per tutti. Grazie per l'aiuto!
— Sam,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.