PDA

View Full Version : Cambiare permessi.


x110
26-05-2004, 09:10
come posso cambiare i permessi a un file in proc per i quali solo
il superutente puo' accedere in lettura?
ho provato con chmod ma mi dice permission denied.
io vorrei estendere la lettura ache a altri.
ciao e grazie.

ilsensine
26-05-2004, 09:12
Non puoi.
Quale sarebbe il file in questione? Normalmente la lettura è garantita

Pang
26-05-2004, 10:08
Non si può, /proc è una directory contenente file generati dinamicamente dal kernel (correggetemi se sbaglio), e se non erro sono accessibili in sola lettura da tutti gli utenti.

Ciauz

figulus
26-05-2004, 10:36
Normalmente i diritti di accesso ai file di sistema non sono messi a caso... comunque visto che hai provato con chmod deduco che hai accesso come root al sistema. Dunque se vuoi leggere il tuo file in questione hai due possibilità: o passi a root con il comando su e ti leggi il file, oppure dai i privilegi necessari (vedi il comando sudo) all'utente che vuoi che legga il file. In ogni caso non conosco nessun file di /proc che sia opportuno consultare che non abbia accesso in lettura da parte di tutti. Qual è questo file di /proc di cui parli?

x110
28-05-2004, 10:14
/proc/ide/ide0/hda/identify
-r--------

la lettura deve eseguirla un prog da me scritto come utente normale
ho risolto mettendo il prog come suid e impostando il propietario come root.

ma si puo' fare in altro modo cambiando i permessi del file?

ciao.

ilsensine
28-05-2004, 10:25
Originariamente inviato da x110
ma si puo' fare in altro modo cambiando i permessi del file?

I permessi in proc sono decisi dal kernel. Devi applicare una patch simile a questa per estendere la lettura a tutti:

--- linux/drivers/ide/ide-proc.c.org 2004-05-28 11:37:59.000000000 +0200
+++ linux/drivers/ide/ide-proc.c 2004-05-28 11:38:10.000000000 +0200
@@ -756,7 +756,7 @@

static ide_proc_entry_t generic_drive_entries[] = {
{ "driver", S_IFREG|S_IRUGO, proc_ide_read_driver, proc_ide_write_driver },
- { "identify", S_IFREG|S_IRUSR, proc_ide_read_identify, NULL },
+ { "identify", S_IFREG|S_IRUGO, proc_ide_read_identify, NULL },
{ "media", S_IFREG|S_IRUGO, proc_ide_read_media, NULL },
{ "model", S_IFREG|S_IRUGO, proc_ide_read_dmodel, NULL },
{ "settings", S_IFREG|S_IRUSR|S_IWUSR,proc_ide_read_settings, proc_ide_write_settings },

x110
28-05-2004, 10:58
ok sei uno spettacolo.
il bello di linux e' anche questo:
non passi dalla porta.......
usa la ruspa.

what's the problem.;)