Searching...
domingo, 1 de diciembre de 2019

Crear un directorio de inicio para un usuario local en HDFS

En el examen, se le puede pedir que cree un directorio de inicio para un usuario local existente en HDFS. Es posible que se le solicite que establezca una propiedad o permiso específico para el directorio de inicio. El proceso básicamente involucra:
  1. Crear un usuario local si aún no está presente.
  2. Crear un directorio de inicio en HDFS para el usuario.
  3. Asignar propiedad y permisos apropiados al directorio de inicio.

1. Crear un usuario local

Ten en cuenta que tendrás que crear un usuario local en el examen solo si aún no está presente en el sistema. Vamos a ver un ejemplo para crear un directorio de inicio en HDFS para el usuario "test" y asignando los permisos solicitados.
1. Primero, verifica si el usuario "test" ya está presente en el sistema local:
# id test
id: test: no such user
2. Creamos un usuario llamado "test" en el sistema local.
# useradd test
3. Vuelve a verificar la creación del usuario con el comando "id" .
$ id test
uid=1001(test) gid=1001(test) groups=1001(test)

2. Crear directorio de inicio en HDFS

1. El siguiente paso es crear un directorio de inicio para el usuario "test" en HDFS. Esto se puede hacer con el usuario "hdfs" que tiene privilegios de superusuario en el sistema de archivos HDFS. De hecho, todos los comandos dados a continuación deben ejecutarse con el usuario hdfs.
# su - hdfs
$ hdfs dfs -mkdir /user/test
2. Comprueba que se ha creado el directorio:
$ hdfs dfs -ls /user
drwxr-xr-x   - hdfs   supergroup          0 2018-09-01 19:18 /user/test

3. Asignar propiedad y permisos

El último e importante paso es asignar la propiedad y los permisos deseados al directorio de inicio. Sin esto, no se puede utilizar el directorio para ningún propósito.
1. Primero comprueba el directorio y sus permisos predeterminados.
$ hdfs dfs -ls /user
drwxr-xr-x   - hdfs   supergroup          0 2018-09-01 19:18 /user/test
2. Cambia la propiedad del directorio “/user/test” a test:test.
$ hdfs dfs -chown test:test /user/test
$ hdfs dfs -ls /user
drwxr-xr-x   - test   test                0 2018-09-01 19:18 /user/test
3. Los permisos actuales del directorio son 755. Vamos a cambiar los permisos a 766 usando el comando que se muestra a continuación:
$ hdfs dfs -chmod 766 /user/test
$ hdfs dfs -ls /user
drwxrw-rw-   - test   test                0 2018-09-01 19:18 /user/test

Copia de ficheros hacia y desde HDFS

Para verificar si hemos realizado todos los pasos correctamente, podemos crear un archivo local y subirlo a HDFS y viceversa utilizando el usuario "test". Primero vamos a crear un archivo local usando el usuario "test".
# su - test
$ touch /home/test/test_file
Ahora, copia este archivo al directorio de inicio HDFS del usuario "test". Si quieres copiar un archivo desde cualquier otra ubicación, asegúrate de que el directorio principal tenga el permiso 755.
$ hdfs dfs -put /home/test/test_file /user/test/
Comprobamos:
$ hdfs dfs -ls /user/test
Found 1 items
-rw-r--r--   3 test test          0 2018-09-01 20:03 /user/test/test_file
Note: Los comandos "hdfs dfs -put" y "hdfs dfs -copyFromLocal" son equivalentes y se pueden usar indistintamente
Ahora copiamos el mismo archivo de HDFS al sistema de archivos local.
$ hdfs dfs -get /user/test/test_file /tmp/
Comprobamos:
$ ls -l /tmp/test_file
-rw-r--r-- 1 test test 0 Sep  1 20:05 /tmp/test_file
Los comandos "hdfs dfs -get" y "hdfs dfs -CopyToLocal" son equivalentes y se pueden usar indistintamente.


0 comentarios:

Publicar un comentario

Gracias por participar en esta página.

 
Back to top!