Interactuando con Kabré¶
Conexiones SSH y claves SSH¶
Para empezar, abra un emulador de terminal y abra una sesión ssh escribiendo
$ ssh -p 22022 [user]@kabre.cenat.ac.cr
Recuerde cambiar [user] por su nombre de usuario. Escriba su contraseña cuando se le solicite. Se registrará en algún nodo de inicio de sesión. Este es un terminal típico de Linux, pruebe algunos comandos conocidos, como ls, cd, mkdir y otros.
Una clave SSH es un archivo que mantendrá su conexión segura y evita que escriba su contraseña cada vez que inicie sesión. Este archivo está comúnmente vinculado a una computadora, normalmente debe generar una para la computadora que utilizará para interactuar con Kabré.
Para generar una clave SSH, en su computadora local (computadora portátil, estación de trabajo …) abra un terminal, vaya a su directorio de inicio y escriba
y siga las instrucciones. Si elige las opciones predeterminadas, la nueva clave estará en ~/.ssh/, ahora tiene que copiar la clave pública a Kabré, para hacerlo escriba
$ scp -P 22022 ~/.ssh/id_rsa.pub your_user@kabre.cenat.ac.cr:~
Ahora, dentro de una sesión ssh en Kabré, escriba:
$ cat id_rsa.pub >> .ssh/authorized_keys $ rm id_rsa.pub
Alternativamente, puede ejecutar este procedimiento en un solo comando si está disponible en su estación de trabajo, de la siguiente manera:
$ ssh-copy-id -p 22022 your_user@kabre.cenat.ac.cr
Ahora, si abre un nuevo terminal y escribe ssh -p 22022 your_user@kabre.cenat.ac.cr se registrará sin solicitar la contraseña. Esto se debe a que Kabré tiene la clave ssh pública de su computadora. También es conveniente para su computadora tener la clave pública de Kabré, simplemente adjúntela a authorized_keys en su computadora local, así:
$ scp user@kabre.cenat.ac.cr:~/.ssh/id_rsa.pub .
$ cat id_rsa.pub >> ~/.ssh/authorized_keys $ rm id_rsa.pub
Sistema de archivos de Kabré¶
Contamos con tres directorios: /home, /work y /data.
Directorio |
Cuota |
Propósito |
Respaldo |
|---|---|---|---|
/home/userid |
10GB |
Scripts y datos importantes |
Mensual |
/work/userid |
100GB |
Datos temporales y herramientas |
NO |
/data/userid |
100GB |
Bases de datos y datos a analizar |
NO |
Para saber la cantidad de espacio disponible que queda en cada directorio, puede usar el siguiente comando:
$ df -h /home/userid
$ df -h /work/userid
$ df -h /data/userid
Notas:
El usuario es responsable de administrar sus directorios Home, Work y Data. El primero está destinado a programas y datos confidenciales, el segundo a datos temporales, herramientas y archivos generales y el último está destinado a datos masivos, bases de datos y datos a analizar.
La capacidad del directorio Work y Data se puede ampliar a petición. Debe proporcionarse una justificación clara del espacio adicional necesario. Envíe su solicitud a la página de tiquetes tiquetes.kabre.cenat.ac.cr.
Aunque se realiza una copia de seguridad del directorio Home mensualmente, recomendamos a los usuarios que trabajen con un sistema de control de versiones (v.g. git) para sus scripts y códigos fuente.
Copiar archivos entre su computadora y Kabré¶
El comando scp es similar al comando cp, copia archivos de un origen a un destino a través de una sesión SSH. Tiene la siguiente sintaxis:
$ scp -P 22022 [user]@[host][path]origin_file [user]@[host][path]destiny_file
Tenga en cuenta que este comando es solo para un solo archivo, si necesita cargar un directorio completo, agregue la opción -r al comando, como se muestra a continuación:
$ scp -P 22022 -r [user]@[host][path]origin_directory [user]@[host][path]destiny_directory
Los valores por defecto son:
user: su usuario local
host: host local
path: directorio de trabajo actual
El comando scp debe ejecutarse en su máquina local, no en Kabré. Tal vez su aplicación genere muchos archivos de visualización y desee descargar esos archivos a su computadora, recuerde que ~ significa el directorio de inicio y * coincide con cualquier secuencia de caracteres, usando estos conceptos:
$ scp -P 22022 user@kabre.cenat.ac.cr:~/application/output/\*.viz ~/app/results/visualization
O tal vez desee cargar un archivo de parámetros para usar en una simulación, debería hacer lo siguiente:
$ scp -P 22022 ~/research/app/parameters.dat user@kabre.cenat.ac.cr:~/application/input
Dar permisos a otro usuario sobre un directorio¶
El primer paso es conocer el uid (identificación de usuario) del usuario con el que desea compartir la propiedad, para obtener el uid, ejecute el siguiente comando:
$ id username
A continuación, una vez conocido el uid, se puede proceder a otorgar permisos sobre un solo archivo o directorio, aquí se puede elegir qué permisos otorgar, podrían ser: R (para lectura), W (para escritura) y / o X ( para ejecutar).
Si desea otorgar todos los permisos al usuario cuyo uid es [uid] sobre el directorio [/ ruta / directorio] (recuerde sustituir estos valores por los que necesita), puede usar el siguiente comando:
$ nfs4_setfacl -a A::[uid]:RWX [/path/directory]
Note que esto daría todos los permisos (ya que usamos RWX) a [uid] solo al directorio [/ ruta / directorio], pero no a sus subdirectorios (estas son las carpetas dentro de / ruta / directorio). Tenga cuidado al otorgar todos los permisos a otro usuario, ya que tendrá la capacidad de eliminar y modificar libremente.
Si desea incluir todos los subdirectorios, este mismo comando se puede ejecutar de forma recursiva simplemente agregando -R, así:
$ nfs4_setfacl -R -a A::[uid]:RWX [/path/directory]
Por último, si desea eliminar los permisos RWX a un [uid] sobre el directorio [/ ruta / directorio], puede usar:
$ nfs4_setfacl -a D::[uid]:RWX [/path/directory]