Siempre es importante saber la estructura básica del sistema de archivos y algunos comandos
Sistema de archivos en un Sistema Operativo LINUX
Los directorios más importantes:
- /bin: contiene los ejecutables binarios esenciales para el sistema. Si observamos su contenido encontraremos los comandos más básicos.
- /boot: aquí están los archivos usados por el sistema durante el arranque, incluida la imagen del núcleo.
- /dev: almacena los controladores device drivers o device files para el acceso a los dispositivos físicos del disco, como el ratón, las tarjetas, el escáner, etc.
- /var: suele contener información variable, tanto generada por el propio sistema como por los usuarios. Contiene algunos subdirectorios interesantes:
- /var/lock: alberga los ficheros de bloqueo para indicar al sistema que un determinado dispositivo es inaccesible cuando está siendo usado por alguna aplicación.
- /var/log: es la bitácora del sistema, puesto que aquí se almacenan los registros detallados de toda la actividad desarrollada en el transcurso de una sesión de trabajo.
- /var/spool: contiene información preparada para ser transferida, por ejemplo, los trabajos de impresión o los mensajes de correo.
- /lib: contiene las librerías usadas por diferentes aplicaciones, evitando que cada programa incluya las suyas propias con la consiguiente redundancia de ficheros.
- /etc: es el directorio destinado para almacenar todos los archivos de configuración del sistema.
- /home: contiene el árbol de directorios propio de cada usuario del sistema. Encontraremos un subdirectorio para cada usuario, lo que en el entorno gráfico se llama carpeta personal. Es una buena costumbre situar este directorio en una partición independiente para salvaguardar los datos en caso de catástrofe o para reinstalar completamente un sistema distinto respetando el trabajo anterior.
- /sbin: aloja comandos esenciales de administración del sistema, normalmente reservados al administrador.
- /usr: donde se almacenan las aplicaciones y recursos disponibles para todos los usuarios del sistema.
Los más habituales son:
- /usr/share: suele contener datos compartidos independientes de la máquina, como la documentación de los programas o colecciones de imágenes para el escritorio.
- /usr/bin: contiene la mayoría de programas y comandos a disposición de los usuarios.
- /tmp: es un directorio temporal usado generalmente por las aplicaciones para almacenar algunos ficheros en tiempo de ejecución.
- /media: cuando montamos un CDRom, una memoria usb o un disquete se crea aquí automáticamente un subdirectorio .
- /media/cdrom0 para la primera unidad de cdrom
- /media/usbdisk para la memoria usb
Operaciones con archivos
- df[opciones] visualiza el punto de montaje, el número de bloques libres y si le pongo la opción -i los inodos libres en cada sistema de archivos.
- du[opciones] directorio|fichero informa de los bloques totales que usa el directorio sumando lo que ocupan los objetos de toda la rama que cuelga de él.
Opciones:
-a recursivamente
- fdformat /dev/fd0: formatea a bajo nivel .
- mkfs ext2|ext3 /dev/fd0: crea el sistema de archivos ext2 ó ext3 en un dispositivo.
- mkdosfs /dev/fd0: crea un sistema de archivos en formato dos en un dispositivo
- cfdisk dispositivo: programa visual para hacer particiones en dispositivos.
- umount dispositivo: desmonta sistemas de ficheros.
Tipos de dispositivos:
/dev/hda1: partición de disco duro no1
/dev/hdc: cdrom
Para ver que sistemas de archivos hay y con qué características se montan cuando el sistema arranca hay que mirar el fichero fstab:
cat/etc/fstab
Manejo de Directorios y Archivos
- cd: cambia de directorio activo, cd solo te lleva a tu HOME. Un punto para referirse al directorio actual. Dos puntos .. al directorio padre.
- ls: lista el contenido de un directorio.
-a: lista los ocultos.
-R: lista recursivamente
-r: lista en orden inverso
-f: visualiza un * en los ejecutables, una / junto a directorios y @ junto E. simbólicos.
-s: muestra el tamaño en bloques.
-l: formato largo.
-i: muestra el i-nodo
-d: para ver el listado de los directorios sin lo que llevan dentro
lista a partir de mi directorio actual y mira en el siguiente directorio sea cual sea su nombre.
ls -Ra
- mkdir: crea directorios. Se pueden crear varios a la vez. Se debe tener permiso de escritura donde se vayan a crear.
- mkdir -p directorio/ sirve para crear ramas de directorios.
- rmdir: borra uno o más directorios, siempre que los permisos lo permitan. Los directorios tienen que estar vacíos. No se puede eliminar el directorio actual. Se pueden usar meta caracteres.
- rmdir -p directorio borra una estructura entera si sus directorios están vacíos.
- mv: mueve o renombra (si están en el mismo sitio) ficheros o directorios. Cuando se mueve un archivo se conserva el i-nodo.
mv directorio1 directorio2
- cp fichero1 fichero2: hace una copia de fichero1 en fichero2 . Si el destino existe lo sobrescribe sin preguntar. Si el destino existe y sobrescribimos se cambia el contenido, pero se conserva el propietario y los permisos de destino. Si no existe el destino lo crea y mantiene los permisos de origen.
Parámetros opcionales:-i: pregunta al usuario si quiere copiar sobre el destino ya existente
-R: copia de forma recursiva lo que hay en carpeta 1 en carpeta2
Copiará la carpetaA y todo su contenido en carpetaB.
cp -R carpetaA carpetaB
-p: al hacer la copia mantiene la fecha, hora, propietario y permisos
-f: sobrescribe el destino en caso de existir aunque no se tenga permiso de escritura sobre el pero es necesario tener permiso sobre el directorio en el que está.
- rm: elimina archivos de uno o varios directorios.
-i: pregunta antes de borrar cada archivo.
-f: elimina el archivo aunque no tengamos permiso para suprimirlo, pero se debe de tener permiso sobre el directorio en el que está.
-r: borra todo el contenido del directorio así como el propio directorio.
Borrará el directorioA así como todo su contenido.
rm -r directorioA
Búsqueda de ficheros
Para buscar uno ó varios ficheros en el conjunto de directorios se utiliza el siguiente comando:
- find directorio -opcion1 -opcion2 ….
Opciones:
-name nombre del archivo (o directorio) a buscar
-user todos los archivos del usuario que especifiquemos
-type x donde x puede ser: b = archivo de bloque, c = archivo tipo carácter, d = directorio, f = fichero normal, l = enlace simbólico.
-print muestra en pantalla la ruta de todo el archivo
-perm [-]nnn buscaría todos los archivos cuyos permisos de acceso sean los indicados (en
octal).
-size n buscaría todos los archivos con n bloques (512 bytes). Con size nc los de n bytes ó caracteres.
-follow buscaría siguiendo los posibles enlaces
-exec xx “{}” “;” sirve para ejecutar un determinado comando “xx” en los archivos encontrados.
-xdev no extender la búsqueda a otros sistemas de archivos
-not invierte lo que va detrás
-empty busca archivos o directorios vacios
-links n busca archivos o directorios con n enlaces.
-inum n encuentra el archivo con el número de enlace n
-nouser usuarios que no pertenecen ya al sistema
buscaríamos a partir del directorio raíz todos los archivos y directorios de usuarios que ya no pertenecen al sistema y los borraríamos.
find / -nouser -exec rm -r "{}" ";"
Este es un breve resumen de comandos para un principiante en este sistema operativo, hay mucho mas comandos que en otra oportunidad nos adentraremos. Saludos
- Tutorial
- Otros










