Diferencia entre revisiones de «Sistema de ficheros»
m (→Consola) |
|||
(No se muestran 42 ediciones intermedias realizadas por 18 usuarios) | |||
Línea 1: | Línea 1: | ||
[[Category:Conoce tu sistema]] | [[Category:Conoce tu sistema]] | ||
− | Si vienes del mundo de Windows lo primero que te sorprenderá es que no está la unidad C:. La distribución de los discos y particiones en Linux es diferente. Ya en la instalación te puedes dar cuenta cómo se nombran los | + | [[Category:Video tutoriales]] |
+ | |||
+ | Si vienes del mundo de Windows lo primero que te sorprenderá es que no está la unidad C:. La distribución de los discos y particiones en Linux es diferente. Ya en la instalación te puedes dar cuenta cómo se nombran los discos en Linux: | ||
+ | * El primer disco duro es /dev/hda ('''H'''ard '''D'''isk ide '''A''') | ||
+ | * El segundo disco duro es /dev/hdb ('''H'''ard '''D'''isk ide '''B''') | ||
+ | |||
+ | El disco tendrá una o varias particiones, así las del primer disco duro (/dev/hda) serán /dev/hda1, /dev/hda2, ... Éstas tiene el equivalente a lo que en Windows se llama C:, D:, ...etc. | ||
En Linux todo es un archivo, y cuando digo todo es todo. Desde los archivos de datos hasta las particiones de los discos pasando por el ratón y la tarjeta de sonido. Los directorios también son archivos. Existe un directorio raiz (/) del que cuelga todo. Los dispositivos cuelgan del directorio /dev. | En Linux todo es un archivo, y cuando digo todo es todo. Desde los archivos de datos hasta las particiones de los discos pasando por el ratón y la tarjeta de sonido. Los directorios también son archivos. Existe un directorio raiz (/) del que cuelga todo. Los dispositivos cuelgan del directorio /dev. | ||
+ | |||
+ | == Referencias == | ||
Algunos de los directorios más interesantes: | Algunos de los directorios más interesantes: | ||
− | * '''/dev''': Ahí están todos los dispositivos de | + | * '''/''': Raíz. |
+ | *'''/usr''': Aquí se encuentra la gran mayoría de los archivos existentes en un sistema Linux, tales como documentación, casi la totalidad de los comandos de usuario, juegos, librerías, etc. | ||
+ | * '''/bin''': Aquí están los comandos que pueden usar todos los usuarios (incluido el administrador o root). | ||
+ | * '''/sbin''': Aquí están los comandos que sólo puede usar el administrador o root. | ||
+ | * '''/dev''': Ahí están todos los dispositivos de nuestra máquina. | ||
* '''/home''': Lugar donde se almacenan las cuentas de usuarios. | * '''/home''': Lugar donde se almacenan las cuentas de usuarios. | ||
− | * '''/ | + | * '''/lib''': Enlaces a las librerías que se necesitan para el sistema. |
+ | * '''/var''': Contiene información variable, como por ejemplo los logs del sistema (''/var/log''), correo local, etc. | ||
* '''/tmp''': Directorio temporal. | * '''/tmp''': Directorio temporal. | ||
* '''/etc''': Configuración global de los programas. | * '''/etc''': Configuración global de los programas. | ||
+ | * '''/root''': Cuenta del administrador. | ||
+ | * '''/boot''': Aquí está todo lo necesario para arrancar el sistema. | ||
+ | * '''/media''': Punto de montaje para sistemas de archivos montados localmente. | ||
+ | * '''/mnt''': Antiguo punto de montaje para sistemas de archivos montados localmente. Hoy en día está en desuso y se conserva por razones históricas. | ||
+ | * '''/proc''': Sistema de archivos virtual de información de procesos y del kernel. | ||
+ | |||
+ | Algunas referencias de Archivos conocidos: | ||
+ | * '''/etc/apt/sources.list''': Este archivo configura la lista de repositorios para [[Añadir aplicaciones]], ver ''[[Activar universe y multiverse]]'' para más detalles. | ||
+ | * '''/etc/X11/xorg.conf''': Este archivo define y configura el entorno gráfico a cargar. | ||
+ | * '''/etc/fstab''': Este archivo configura el acceso a los diferentes sistemas de archivos que hay en nuestro sistema. | ||
+ | * '''/etc/passwd''': Este archivo controla el uso de usuarios, en contraseñas, con permisos y grupos que pertenecen a cada usuario, archivo muy importante si uno quiere tener un usario root más que el ya conocido root. | ||
+ | * '''/etc/readahead/boot''' y '''/etc/readahead/desktop''': Estos archivos contienen la lista de rutas de todos los archivos que se van a cargar en la memoria caché durante el [[Inicio_del_sistema]]. | ||
+ | |||
+ | == Permisos == | ||
− | |||
El sistema de permisos de Linux es simple y efectivo. Existen tres tipos de permisos: | El sistema de permisos de Linux es simple y efectivo. Existen tres tipos de permisos: | ||
Línea 18: | Línea 44: | ||
* '''Lectura''': Si es para un archivo significa que podemos leerlo y si es un directorio es que podemos leerlo también. Es representado por una R. | * '''Lectura''': Si es para un archivo significa que podemos leerlo y si es un directorio es que podemos leerlo también. Es representado por una R. | ||
* '''Escritura''': Si es para un archivo será que podemos escribir en él y si es para un directorio significa que podemos crear ficheros dentro de él. Es representado por una W | * '''Escritura''': Si es para un archivo será que podemos escribir en él y si es para un directorio significa que podemos crear ficheros dentro de él. Es representado por una W | ||
− | |||
También existen tres tipos de roles sobre los que se aplican estos permisos. Un archivo pertenece a un usuario y a un grupo: | También existen tres tipos de roles sobre los que se aplican estos permisos. Un archivo pertenece a un usuario y a un grupo: | ||
− | * '''Usuario''': El propietario del | + | * '''Usuario''': El propietario del archivo. |
* '''Grupo''': Grupo al que pertenece el archivo. | * '''Grupo''': Grupo al que pertenece el archivo. | ||
* '''Otros''': Los demás usuarios. | * '''Otros''': Los demás usuarios. | ||
Línea 31: | Línea 56: | ||
-rwxr-x--- 1 pepito usuarios 453 2005-02-17 09:35 pg_backup.sh | -rwxr-x--- 1 pepito usuarios 453 2005-02-17 09:35 pg_backup.sh | ||
+ | El archivo pg_backup.sh pertenece al usuario ''pepito'' y al grupo ''usuarios''. Los permisos que tiene para el usuario son ''rwx'' lo que significa que el usuario ''pepito'' puede leer el archivo, escribir en él y ejecutarlo. Por la extensión vemos que es un script, por lo que es normal que se pueda ejecutar. Para el grupo tiene los permisos ''r-x''. Eso significa que los miembros del grupo ''usuarios'' pueden leer el archivo y ejecutarlo, pero no modificarlo. Los permisos para los demás usuarios (otros) son ''---'', por lo que un usuario que no sea ''pepito'' ni pertenezca al grupo ''usuarios'' no podrá leer, escribir ni ejecutar el archivo. | ||
− | + | === Cambio de permisos === | |
− | == | + | ==== Interfaz gráfica ==== |
− | + | Podrás cambiar los permisos de forma gráfica; sólo tienes que darle con el botón derecho del ratón sobre el directorio o el archivo al que quieras cambiar el permiso y seleccionar la pestaña ''permisos''. | |
+ | [[imagen:permisos.jpg|350px|center|Opciones gráficas de permisos]] | ||
+ | |||
+ | ==== Consola ==== | ||
+ | |||
+ | El comando '''chmod''' se usa para designar los permisos de un archivo. Sólo el ''dueño del archivo'' y el ''root'' pueden cambiar los permisos. La sintaxis de chmod es: | ||
chmod {a, u, g, o} {+, -} {r, w, x} nombre del archivo | chmod {a, u, g, o} {+, -} {r, w, x} nombre del archivo | ||
Línea 44: | Línea 75: | ||
'''u:''' corresponde al dueño del archivo | '''u:''' corresponde al dueño del archivo | ||
'''g:''' corresponde al grupo | '''g:''' corresponde al grupo | ||
− | '''o''' o '''a:''' corresponde al resto de los | + | '''o''' o '''a:''' corresponde al resto de los usuarios, '''a''' para todos (all) y '''o''' para otros (others) |
− | Para | + | Para autorizar o desautorizar el permiso: |
'''+:''' autoriza | '''+:''' autoriza | ||
'''-:''' desautoriza | '''-:''' desautoriza | ||
Línea 56: | Línea 87: | ||
'''x:''' ejecución | '''x:''' ejecución | ||
+ | El comando '''chmod''' también acepta otros valores para cambiar los permisos. Es probable que hayas visto algo como: | ||
+ | |||
+ | sudo chmod 751 [nombre del archivo] | ||
+ | |||
+ | Es otro modo de gestionar los permisos; de forma binaria. El sistema es muy simple y cómodo: se considera un bit para lectura ('''r''') otro para escritura ('''w''') y otro para ejecución ('''x'''). Las combinaciones posibles son ocho y se muestran en la tabla siguiente: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Octal !! '''r w x''' | ||
+ | |- | ||
+ | | 0 || 0 0 0 | ||
+ | |- | ||
+ | | 1 || 0 0 1 | ||
+ | |- | ||
+ | | 2 || 0 1 0 | ||
+ | |- | ||
+ | | 3 || 0 1 1 | ||
+ | |- | ||
+ | | 4 || 1 0 0 | ||
+ | |- | ||
+ | | 5 || 1 0 1 | ||
+ | |- | ||
+ | | 6 || 1 1 0 | ||
+ | |- | ||
+ | | 7 || 1 1 1 | ||
+ | |} | ||
+ | |||
+ | Un uno equivale a activar y un cero a desactivar los permisos. | ||
+ | El equivalente octal de los permisos se aplica en orden: ''dueño, grupo y cualquiera'' ('''u''','''g''','''a'''). | ||
+ | Entonces en el ejemplo anterior el valor 751 actúa: | ||
+ | |||
+ | # Cediendo todos los permisos al dueño. | ||
+ | # Cediendo permiso de lectura y ejecución al grupo. | ||
+ | # Cediendo permiso de ejecución a cualquiera. | ||
+ | |||
+ | === Cambio de propietario/grupo === | ||
+ | |||
+ | ==== Interfaz gráfica ==== | ||
+ | |||
+ | De forma gráfica solamente podrás cambiar el grupo al que pertenece un archivo. Para hacerlo tienes que darle con el botón derecho del ratón sobre el directorio o el archivo al que quieras cambiar el grupo y seleccionar la pestaña ''permisos''. | ||
+ | |||
+ | [[imagen:permisosgrupo.jpg|350px|center|Opciones gráficas de permisos]] | ||
+ | |||
+ | Para poder cambiar también el usuario al que pertenece el archivo deberá usar la consola. Mira más abajo para saber como hacerlo. | ||
+ | |||
+ | ==== Consola ==== | ||
+ | |||
+ | El cambio de propietario se hace empleando el comando ''chown'' : | ||
+ | chown (propietario):(grupo) (archivo) | ||
+ | |||
+ | Pondremos un ejemplo, supongamos que el usuario ''gaccardo'' desea darle una copia del archivo ''test.sxw'' al usuario ''pigu'', el usuario ''pigu'' debe ser propietario de su copia para poder modificarla. Para esto debe cambiar el propietario y el grupo utilizando el comando chown. | ||
+ | |||
+ | Haciendo "'''ls -l'''" nos encontramos con un fichero asi: | ||
+ | |||
+ | -rwx-rw-r-- gaccardo gaccardo 435 sep 4 11:38 test.sxw | ||
+ | |||
+ | Por lo que en este caso el usuario gaccardo (actual propietario) deberá hacer : | ||
+ | |||
+ | [gaccardo@servidor priv]chown pigu:pigu test.sxw | ||
+ | |||
+ | Si vuelve a hacer "'''ls -l'''" encuentra que ha cambiado el actual propietario | ||
+ | |||
+ | -rwx-rw-r-- pigu pigu 435 sep 4 11:38 test.sxw | ||
+ | |||
+ | == Ver también == | ||
+ | |||
+ | * [[Terminal]] | ||
+ | * [[w:es:Permisos de acceso a archivos|Permisos de acceso a archivos en la Wikipedia]] {{es}} | ||
+ | * [[w:es:Chmod|Comando ''Chmod'' en la Wikipedia]] {{es}} | ||
+ | * [[w:es:Chown|Comando ''Chown'' en la Wikipedia]] {{es}} | ||
+ | * [[w:es:Sistema de archivos|Definición de ''Sistema de archivos'' en la Wikipedia]] {{es}} | ||
+ | |||
+ | == Artículo en vídeo == | ||
− | + | Aquí puedes ver lo explicado en formato vídeo. | |
− | + | ||
− | + | <blip id="AYG5nzQC"/> |
Última revisión de 01:50 22 mar 2011
Si vienes del mundo de Windows lo primero que te sorprenderá es que no está la unidad C:. La distribución de los discos y particiones en Linux es diferente. Ya en la instalación te puedes dar cuenta cómo se nombran los discos en Linux:
- El primer disco duro es /dev/hda (Hard Disk ide A)
- El segundo disco duro es /dev/hdb (Hard Disk ide B)
El disco tendrá una o varias particiones, así las del primer disco duro (/dev/hda) serán /dev/hda1, /dev/hda2, ... Éstas tiene el equivalente a lo que en Windows se llama C:, D:, ...etc.
En Linux todo es un archivo, y cuando digo todo es todo. Desde los archivos de datos hasta las particiones de los discos pasando por el ratón y la tarjeta de sonido. Los directorios también son archivos. Existe un directorio raiz (/) del que cuelga todo. Los dispositivos cuelgan del directorio /dev.
Contenido
Referencias
Algunos de los directorios más interesantes:
- /: Raíz.
- /usr: Aquí se encuentra la gran mayoría de los archivos existentes en un sistema Linux, tales como documentación, casi la totalidad de los comandos de usuario, juegos, librerías, etc.
- /bin: Aquí están los comandos que pueden usar todos los usuarios (incluido el administrador o root).
- /sbin: Aquí están los comandos que sólo puede usar el administrador o root.
- /dev: Ahí están todos los dispositivos de nuestra máquina.
- /home: Lugar donde se almacenan las cuentas de usuarios.
- /lib: Enlaces a las librerías que se necesitan para el sistema.
- /var: Contiene información variable, como por ejemplo los logs del sistema (/var/log), correo local, etc.
- /tmp: Directorio temporal.
- /etc: Configuración global de los programas.
- /root: Cuenta del administrador.
- /boot: Aquí está todo lo necesario para arrancar el sistema.
- /media: Punto de montaje para sistemas de archivos montados localmente.
- /mnt: Antiguo punto de montaje para sistemas de archivos montados localmente. Hoy en día está en desuso y se conserva por razones históricas.
- /proc: Sistema de archivos virtual de información de procesos y del kernel.
Algunas referencias de Archivos conocidos:
- /etc/apt/sources.list: Este archivo configura la lista de repositorios para Añadir aplicaciones, ver Activar universe y multiverse para más detalles.
- /etc/X11/xorg.conf: Este archivo define y configura el entorno gráfico a cargar.
- /etc/fstab: Este archivo configura el acceso a los diferentes sistemas de archivos que hay en nuestro sistema.
- /etc/passwd: Este archivo controla el uso de usuarios, en contraseñas, con permisos y grupos que pertenecen a cada usuario, archivo muy importante si uno quiere tener un usario root más que el ya conocido root.
- /etc/readahead/boot y /etc/readahead/desktop: Estos archivos contienen la lista de rutas de todos los archivos que se van a cargar en la memoria caché durante el Inicio_del_sistema.
Permisos
El sistema de permisos de Linux es simple y efectivo. Existen tres tipos de permisos:
- Ejecución: Si es para un archivo será ejecutable y si es para un directorio significa que podemos pasar por él. Es representado por una X.
- Lectura: Si es para un archivo significa que podemos leerlo y si es un directorio es que podemos leerlo también. Es representado por una R.
- Escritura: Si es para un archivo será que podemos escribir en él y si es para un directorio significa que podemos crear ficheros dentro de él. Es representado por una W
También existen tres tipos de roles sobre los que se aplican estos permisos. Un archivo pertenece a un usuario y a un grupo:
- Usuario: El propietario del archivo.
- Grupo: Grupo al que pertenece el archivo.
- Otros: Los demás usuarios.
Veamos un ejemplo:
$ ls -l pg_backup.sh -rwxr-x--- 1 pepito usuarios 453 2005-02-17 09:35 pg_backup.sh
El archivo pg_backup.sh pertenece al usuario pepito y al grupo usuarios. Los permisos que tiene para el usuario son rwx lo que significa que el usuario pepito puede leer el archivo, escribir en él y ejecutarlo. Por la extensión vemos que es un script, por lo que es normal que se pueda ejecutar. Para el grupo tiene los permisos r-x. Eso significa que los miembros del grupo usuarios pueden leer el archivo y ejecutarlo, pero no modificarlo. Los permisos para los demás usuarios (otros) son ---, por lo que un usuario que no sea pepito ni pertenezca al grupo usuarios no podrá leer, escribir ni ejecutar el archivo.
Cambio de permisos
Interfaz gráfica
Podrás cambiar los permisos de forma gráfica; sólo tienes que darle con el botón derecho del ratón sobre el directorio o el archivo al que quieras cambiar el permiso y seleccionar la pestaña permisos.
Consola
El comando chmod se usa para designar los permisos de un archivo. Sólo el dueño del archivo y el root pueden cambiar los permisos. La sintaxis de chmod es:
chmod {a, u, g, o} {+, -} {r, w, x} nombre del archivo
donde:
u: corresponde al dueño del archivo g: corresponde al grupo o o a: corresponde al resto de los usuarios, a para todos (all) y o para otros (others)
Para autorizar o desautorizar el permiso:
+: autoriza -: desautoriza =: resetea los permisos
Los tipos de permisos son:
r: lectura w: escritura x: ejecución
El comando chmod también acepta otros valores para cambiar los permisos. Es probable que hayas visto algo como:
sudo chmod 751 [nombre del archivo]
Es otro modo de gestionar los permisos; de forma binaria. El sistema es muy simple y cómodo: se considera un bit para lectura (r) otro para escritura (w) y otro para ejecución (x). Las combinaciones posibles son ocho y se muestran en la tabla siguiente:
Octal | r w x |
---|---|
0 | 0 0 0 |
1 | 0 0 1 |
2 | 0 1 0 |
3 | 0 1 1 |
4 | 1 0 0 |
5 | 1 0 1 |
6 | 1 1 0 |
7 | 1 1 1 |
Un uno equivale a activar y un cero a desactivar los permisos. El equivalente octal de los permisos se aplica en orden: dueño, grupo y cualquiera (u,g,a). Entonces en el ejemplo anterior el valor 751 actúa:
- Cediendo todos los permisos al dueño.
- Cediendo permiso de lectura y ejecución al grupo.
- Cediendo permiso de ejecución a cualquiera.
Cambio de propietario/grupo
Interfaz gráfica
De forma gráfica solamente podrás cambiar el grupo al que pertenece un archivo. Para hacerlo tienes que darle con el botón derecho del ratón sobre el directorio o el archivo al que quieras cambiar el grupo y seleccionar la pestaña permisos.
Para poder cambiar también el usuario al que pertenece el archivo deberá usar la consola. Mira más abajo para saber como hacerlo.
Consola
El cambio de propietario se hace empleando el comando chown :
chown (propietario):(grupo) (archivo)
Pondremos un ejemplo, supongamos que el usuario gaccardo desea darle una copia del archivo test.sxw al usuario pigu, el usuario pigu debe ser propietario de su copia para poder modificarla. Para esto debe cambiar el propietario y el grupo utilizando el comando chown.
Haciendo "ls -l" nos encontramos con un fichero asi:
-rwx-rw-r-- gaccardo gaccardo 435 sep 4 11:38 test.sxw
Por lo que en este caso el usuario gaccardo (actual propietario) deberá hacer :
[gaccardo@servidor priv]chown pigu:pigu test.sxw
Si vuelve a hacer "ls -l" encuentra que ha cambiado el actual propietario
-rwx-rw-r-- pigu pigu 435 sep 4 11:38 test.sxw
Ver también
- Terminal
- Permisos de acceso a archivos en la Wikipedia (en español)
- Comando Chmod en la Wikipedia (en español)
- Comando Chown en la Wikipedia (en español)
- Definición de Sistema de archivos en la Wikipedia (en español)
Artículo en vídeo
Aquí puedes ver lo explicado en formato vídeo.