PDA

Visualizza la versione completa : Impossibile modificare i permessi su wubi (era: compilazione - permission denied)


vonkraun
21-11-2012, 19:39
Devo eseguire un programma fatto da me in C++ ma non mi fa dare i permessi.
o
Mi spiego meglio. Il programma compila bene tramite Makefile

CC = mpicxx NAME = floyd1 CFLAGS = -O3 MODULES = floyd1.o Graph.o
all : floyd1
Graph.o : Graph.cc Graph.h $(CC) $(CFLAGS) -c Graph.cc
floyd1.o : floyd1.cc $(CC) $(CFLAGS) -c floyd1.cc
floyd1 : $(MODULES) $(CC) $(CFLAGS) $(MODULES) -o $(NAME) $(EXTRALIBS)
e ovviamente, mi dice che non ci sono i permessi di esecuzione quando digito il comando

./floyd1 input/input4 dove input4 è il file di input.
Quindi provo a dargli i permessi con
chmod 777 floyd1 , non mi da nessun errore, ma quando provo a rieseguire mi dice che mancano i permessi.
Per di più provo a darglieli cliccando sulle proprietà del file eseguibile ma non appena seleziono Write and Read in automatico mi riposiziona None.

Che faccio?

MItaly
21-11-2012, 19:48
Di base il compilatore dovrebbe marcare già di suo l'eseguibile generato come eseguibile, per cui il chmod in teoria dovrebbe essere superfluo.
Domanda: il tuo utente è proprietario del file/della directory? Perché questo potrebbe essere un motivo per cui potrebbe non farti fa cambiare i permessi...
---edit---
... ma non tornerebbe con il fatto che non chmod non ti dà errori... :confused: fai così: dai


ls -l
sia prima che dopo il chmod che vediamo.

Inoltre: per caso stai lavorando su una partizione FAT (es. una chiavetta) o che comunque non supporta i permessi UNIX?

vonkraun
21-11-2012, 20:11
sia prima che dopo il chmod:

-rw------- 1 utente utente 844 ott 5 2010 creaejemplo.cpp
-rw------- 1 utente utente 85900 nov 21 19:04 floyd1
-rw------- 1 utente utente 4359 nov 21 00:49 floyd1.cc
-rw------- 1 utente utente 4004 nov 21 00:48 floyd1.cc~
-rw------- 1 utente utente 101244 nov 21 19:04 floyd1.o
-rw------- 1 utente utente 5128 nov 16 17:53 floyd2.cc
-rw------- 1 utente utente 5117 nov 16 17:19 floyd2.cpp~
-rw------- 1 utente utente 3067 nov 9 18:24 floyd.cc~
-rw------- 1 utente utente 2154 nov 21 00:27 Graph.cc
-rw------- 1 utente utente 2112 nov 21 00:26 Graph.cc~
-rw------- 1 utente utente 816 nov 21 00:27 Graph.h
-rw------- 1 utente utente 784 nov 21 00:24 Graph.h~
-rw------- 1 utente utente 6552 nov 21 19:04 Graph.o
drwx------ 1 utente utente 0 nov 21 18:03 input
-rw------- 1 utente utente 275 nov 21 18:04 Makefile
-rw------- 1 utente utente 309 nov 20 22:27 Makefile~
non sto lavorando su una chiavetta, ho installato linux nella partizione C di windows.

MItaly
21-11-2012, 20:16
Uhm non avrai usato quell'abominio di wubi? :spy:

Comunque, che output ti danno


pwd
whoami
mount

?

vonkraun
21-11-2012, 20:25
si ho usato wubi, ma è la prima volta che mi succede.

MItaly
21-11-2012, 20:29
Originariamente inviato da MItaly
Comunque, che output ti danno


pwd
whoami
mount

?

vonkraun
21-11-2012, 20:41
il primo comando mi rida il path ed è corretto, il secondo il nome dell amministratore, ovvero io e il terzo questo:


/dev/loop0 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda3 on /host type fuseblk
(rw,nosuid,nodev,relatime,user_id=0,group_id=0,all ow_other,blksize=4096)
gvfs-fuse-daemon on /home/nomeutente/.gvfs type fuse.gvfs-fuse-daemon
(rw,nosuid,nodev,user=nomeutente) /dev/sda5 on /media/8688233e-7cf5-4379-a154-06333c08d79c type
ext4 (rw,nosuid,nodev,uhelper=udisks)
/dev/sda2 on /media/387049C870498D96 type fuseblk
(rw,nosuid,nodev,allow_other,default_permissions,b lksize=4096)

scusa se te lo dico ma se sai già che eventuali prove fare in futuro dimmelo ora perchè non posso collegarmi ad internet da ubuntu (uso una scheda di rete esterna che non vuole saperne di ubuntu) e quindi devo fare sempre log in log out da windows e da ubuntu.

MItaly
21-11-2012, 20:55
il primo comando mi rida il path ed è corretto
Eh mi interessava sapere appunto quale era questo path... :stordita:

Comunque, mi pare più un problema di Linux che di programmazione, cambio titolo e sposto nel forum appropriato.

vonkraun
21-11-2012, 21:18
RISOLTO!

il file era nella partizione di windows e quindi non potevo cambiargli i permessi da ubuntu. l'ho spostato e tutto ha funzionato.

Loading