GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿la barra inclinada (/) forma parte del nombre del directorio raíz de Linux?

¿Es la barra inclinada (/ ) realmente parte del nombre del directorio raíz de Linux? ¿O es solo un símbolo para ello?

¿Qué pasa con /etc y así sucesivamente?

Actualizar

Supongamos que /dev/sda2 es el dispositivo de bloque de un directorio raíz de Linux.

$ sudo debugfs /dev/sda2
debugfs 1.44.1 (24-Mar-2018)
debugfs:  pwd
[pwd]   INODE:      2  PATH: /
[root]  INODE:      2  PATH: /
debugfs:  stat /
Inode: 2   Type: directory    Mode:  0755   Flags: 0x80000
Generation: 0    Version: 0x00000000:00000077
User:     0   Group:     0   Project:     0   Size: 4096
File ACL: 0
Links: 25   Blockcount: 8
Fragment:  Address: 0    Number: 0    Size: 0
 ctime: 0x5b13c9f1:3f017990 -- Sun Jun  3 15:28:57 2018
 atime: 0x5b13ca0f:3b3ee380 -- Sun Jun  3 15:29:27 2018
 mtime: 0x5b13c9f1:3f017990 -- Sun Jun  3 15:28:57 2018
crtime: 0x5aad1843:00000000 -- Sat Mar 17 16:59:39 2018
Size of extra inode fields: 32
EXTENTS:
(0):9249

Así que hay un directorio ahí, inodo #2, pero no tiene nombre.

Respuesta aceptada:

El estándar POSIX.1-2008 dice

Un nombre de ruta que consta de un solo / se resolverá en el directorio raíz
del proceso. Un nombre de ruta nulo no se podrá
resolver con éxito.

El estándar además hace una distinción entre nombres de archivo y nombres de ruta . / es el nombre de ruta para la ruta del directorio raíz. El nombre del directorio es "el directorio raíz", pero en el sistema de archivos no tiene nombre, no tiene un nombre de archivo. Si tuviera un nombre de archivo, ese nombre sería una entrada de directorio en el directorio sobre el directorio raíz, y no existe tal directorio.

El carácter / nunca puede ser parte de un nombre de archivo ya que es el separador de ruta.

Para mayor claridad:/ no es el nombre del directorio raíz, pero la ruta a él, su nombre de ruta .

/etc es otro nombre de ruta. Es el nombre de la ruta absoluta al etc directorio. El nombre del directorio en esa ruta es etc (su nombre de archivo es etc ).

/usr/local/bin/curl es el nombre de ruta del curl archivo ejecutable de la misma manera que /etc es el nombre de ruta del etc directorio.


Linux
  1. El juego de nombres:Nombrar interfaces de red en Linux

  2. Linux:¿por qué el directorio raíz se indica con un signo /?

  3. Linux:¿cómo se inspecciona la información de la estructura del directorio de un archivo Unix/linux?

  4. Comprender el directorio /etc/skel en Linux

  5. Comprender los scripts rc en Linux

Cómo obtener el tamaño de un directorio en Linux

Cómo encontrar el tamaño total de un directorio en Linux

Cómo cambiar la contraseña de root en Linux

El comando find Directory de Linux:Explicación

Cómo cambiar el nombre de host en Debian Linux

Linux / Carpeta y /carpeta raíz