[Curso] Introducción a la programación en C (II)

Moderadores: Kravenbcn, largeroliker, fidelcastro, cerealkiller, pspCaracas, m0skit0, LnD, ka69, zacky06

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (II)

Mensaje por m0skit0 »

Efectivamente no tiene permisos de ejecución. Si quieres hacerlo desde consola es chmod +x ruta_fichero (entre otros).

Una pequeña explicación sobre los permisos de los ficheros en UNIX (para quien interese):

-rw------- indica los permisos del fichero.

El primer carácter indica el tipo de fichero, - si es un fichero, d si es un directorio y s si está activo el SetUID, o suid, que significa que al ejecutar el fichero coge los permisos que tenga el dueño del fichero.

Los siguientes 3 caracteres indican los permisos del dueño, los siguientes 3 del grupo al que pertenece el dueño y finalmente los 3 restantes para los demás usuarios.

Cada grupo de 3 caracteres indica 3 permisos: lectura (r), escritura (w) y ejecución (x). Los que estén activos aplican. Por ejemplo, en el caso anterior tenemos que dicho fichero sólo lo puede leer y escribir el dueño, pero no ejecutar, y los demás usuarios no pueden hacer nada.

Estos permisos también se suelen representar como bits, es decir, el ejemplo anterior sería 0 110 000 000, que viene a ser en octal (porque agrupamos los bits de 3 en 3) 0600, así que por ejemplo el comando chmod 0600 cambiaría los permisos a -rw------- a cualquier fichero. Otro ejemplo: chmod 0764 serían los permisos -rwxrw-r--, con lo que se cambiaría el fichero a todos los permisos para el dueño, todos los permisos salvo ejecución para el grupo y sólo lectura para el resto de usuarios.

Y ya que estoy os explico un poco la salida de ls -l y así todos contentos:

Código: Seleccionar todo

-rw-------             Permisos
1                   Número de enlaces (no recuerdo si sólo duros o duros y blandos)
albert                Dueño del fichero
albert                Grupo del fichero
8434                Tamaño en bytes
2010-12-29 00:48 HW      Fecha de última modificación (si no recuerdo mal xD)

Saludos
Imagen

Avatar de Usuario
Dark Pallacus
ViP Hordes
ViP Hordes
Mensajes: 1509
Registrado: 03 Sep 2009, 00:35
PSN ID: Pallacus
Ubicación: Barcelona
Contactar:

Re: [Curso] Introducción a la programación en C (II)

Mensaje por Dark Pallacus »

Muchas gracias. Mas o menos, he accedido a las propiedades del fichero y he encontrado una casilla para permitir ejecutarlo como programa, pero tal como lo marco, se desmarca y no hay manera de activarlo.... :(
PS3 - PSP 2000

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (II)

Mensaje por m0skit0 »

A ver, otra vez: sudo chmod +ax ruta_fichero
Imagen

Avatar de Usuario
Dark Pallacus
ViP Hordes
ViP Hordes
Mensajes: 1509
Registrado: 03 Sep 2009, 00:35
PSN ID: Pallacus
Ubicación: Barcelona
Contactar:

Re: [Curso] Introducción a la programación en C (II)

Mensaje por Dark Pallacus »

Me estoy frustrando, dice que "+ax" no es válido....

Código: Seleccionar todo

albert@albert-K50IE:/media/Data/DOC/Albert/Programació/C/Lección 02/HW$ sudo chmod +ax HW
chmod: el mode no és vàlid: «+ax»
Proveu «chmod --help» per a obtenir més informació.
albert@albert-K50IE:/media/Data/DOC/Albert/Programació/C/Lección 02/HW$
No se si la versión tenga algo que ver

Código: Seleccionar todo

albert@albert-K50IE:/media/Data/DOC/Albert/Programació/C/Lección 02/HW$ chmod --version
chmod (GNU coreutils) 8.5
Copyright © 2010 Free Software Foundation, Inc.
GPLv3+: llicència GNU GPL ver. 3 o posterior <http://gnu.org/licenses/gpl.html>
Aquest és programari lliure: podeu modificar‐lo i redistribuir‐lo si voleu.
No hi ha CAP GARANTIA, en la mesura que ho permeta la llei.

Escrit per David MacKenzie i Jim Meyering.
Muchas gracias por perder vuestro tiempo conmigo.

-- Doble Post --

Atención, pregunta tonta: A lo mejor no funcionan los permisos porque el archivo está en una partición NTFS?

-- Triple Post --

Pallacus es tonto del culo. He copiado el "programa" a un disco ext4 y ya he podido cambiar los "atributos".

Por fin, ejercico resuelto:

Código: Seleccionar todo

albert@albert-K50IE:~/Documents/Programació/C/Lección 02/HW$ ./HW
Hola mundo

albert@albert-K50IE:~/Documents/Programació/C/Lección 02/HW$


Muchísimas gracias por vuestra paciencia.
PS3 - PSP 2000

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (II)

Mensaje por m0skit0 »

Dark Pallacus escribió:Me estoy frustrando, dice que "+ax" no es válido....

Ups, perdón error de sintaxis :tongue: es a+x :roll:

Dark Pallacus escribió:A lo mejor no funcionan los permisos porque el archivo está en una partición NTFS?
Dark Pallacus escribió:Pallacus es tonto del culo.

:oki: :lol:
Imagen

Avatar de Usuario
Dark Pallacus
ViP Hordes
ViP Hordes
Mensajes: 1509
Registrado: 03 Sep 2009, 00:35
PSN ID: Pallacus
Ubicación: Barcelona
Contactar:

Re: [Curso] Introducción a la programación en C (II)

Mensaje por Dark Pallacus »

A Pallacus solo le llama tonto del culo Pallacus. :twisted: :evil: ;)
PS3 - PSP 2000

Avatar de Usuario
~Rdavid~
Experto
Experto
Mensajes: 965
Registrado: 12 Nov 2009, 17:29
Ubicación: Costa Rica

Re: [Curso] Introducción a la programación en C (II)

Mensaje por ~Rdavid~ »

Buena explicación m0skit0, ahora entiendo algunas cosas de esto, supongo que 777 será para tener todos los derechos no?
Imagen

Avatar de Usuario
miguelamacias
Experto
Experto
Mensajes: 960
Registrado: 03 Sep 2009, 14:16
Ubicación: Coria del Río, Sevilla
Contactar:

Re: [Curso] Introducción a la programación en C (II)

Mensaje por miguelamacias »

~Rdavid~ escribió:Buena explicación m0skit0, ahora entiendo algunas cosas de esto, supongo que 777 será para tener todos los derechos no?


Así es.

Saludos!

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5585
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: [Curso] Introducción a la programación en C (II)

Mensaje por m0skit0 »

Dark Pallacus escribió:A Pallacus solo le llama tonto del culo Pallacus. :twisted: :evil: ;)

Por eso está "quoteado" :laughing:
Imagen

JeFNDZ
Habitual
Habitual
Mensajes: 378
Registrado: 11 Sep 2009, 06:44

Re: [Curso] Introducción a la programación en C (II)

Mensaje por JeFNDZ »

Cuando añado el cd y el espacio (después de añadir la dirección del fichero), sale un mensaje que dice: "Permiso denegado".

Como le doy permisos? (supongo que serán de root).

Responder