http://www.teknodatips.com.ar Teknoda - Notas técnicas – Tips de AS400 – iseries – System i Tip en detalle Nro. 24 (Lo nuevo, lo escondido, o simplemente lo de siempre pero bien explicado) "Tips en breve/Tips en detalle" se envía con frecuencia variable y absolutamente sin cargo como un servicio a nuestros clientes AS/400. Contiene principalmente notas técnicas y no contiene mensajes publicitarios. Este mensaje se envía en concordancia con la nueva legislación sobre correo electrónico: Por sección 301,párrafo (a) (2) (c) de S.1618 bajo el decreto s.1618 titulo 3º aprobado por el 105 congreso base de las normativas internacionales sobre SPAM, este e-mail no podrá ser considerado SPAM mientras incluya una forma de ser removido Conteste este mail con asunto “REMOVER” si no desea recibir más esta publicación. Si desea suscribir otra dirección de e-mail para que comience a recibir los “Tips”, envíe un mensaje desde esa dirección a [email protected], aclarando nombre, empresa y cargo del suscriptor. Qué es el IFS y cómo accederlo Tema: Almacenamiento, comunicaciones. Utilidad: Almacenar archivos de tipo “ASCII stream files”. Nivel: Intermedio. Versión: Desde Versión 3.X con mejoras en versiones posteriores. Lista de Tips publicados hasta la fecha: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Modificación de los parámetros por default que rigen en los comandos del OS/400 Restricción de comandos pesados a modalidad batch Cómo generar un entorno de prueba para año 2000 Cómo salvar y restaurar spool Cómo agregar pantallas de confirmación/validación para comandos delicados Defragmentación del espacio en disco no utilizado : STRDSKRGZ, ENDDSKRGZ Manipulación de bases de datos desde programas CL, a través de Query/400 Generación de spool AS/400 en formato PDF (Adobe Acrobat Reader) para almacenar en CD´s Cómo proteger columnas de un archivo físico o lógico Cómo cambiar la pantalla de signon Cómo automatizar transferencias de archivos con TCP/IP desde AS/400 Control de accesos sobre archivos de spool Aproveche lo que ya tiene: FILE SERVING con NETSERVER/400 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. EMULACION 5250 vía Internet con lo que ya tiene instalado Editor alternativo: Comando EDTF (Edit File) Auditoría sobre objetos en AS/400 Cómo personalizar los comandos del menú de petición del sistema Acceso a archivos multimiembros en un entorno cliente/servidor o SQL Cómo agregar opciones de usuario al producto PDM Auditoría sobre usuarios en AS/400 Cómo obtener línea de comandos en pantallas que no la tienen. Cómo enviar por e-mail objetos de QSYS.LIB Cómo transferir archivos de spool a la PC usando Operations Navigator Temas de próximos tips: • • • Consideraciones sobre el menú SECTOOLS. Curiosidades en la programación CL. Cómo rutear usuarios a subsistemas según el nombre y no el dispositivo. Resumen ejecutivo e Introducción El Integrated File System es el modelo de almacenamiento en disco que utiliza el AS/400 desde la versión 3.1., reemplazando el viejo y restrictivo esquema de biblioteca, objeto, miembro. El IFS permite albergar la información tradicional (biblioteca, objeto, miembro, en EBCDIC) como así también cualquier tipo de “ASCII stream files” (sin formato de registro), típico de los entornos Unix y PC. Dentro del IFS la información se organiza con una estructura jerárquica de directorios tipo DOS o Unix, a partir de un directorio raíz (root), donde conviven diferentes sistemas de acceso, diferentes códigos (ASCII, EBCDIC) y formatos de archivo, en las distintas ramas de directorios. El esquema EBCDIC tradicional de AS/400 se mantiene como un directorio del IFS llamado QSYS.LIB, donde las bibliotecas del sistema, sus objetos y miembros se representan como niveles de anidación de directorios. El IFS incluye directorios base para contener sistemas de archivos Unix (QOpenSys), Netware (QNetware), QNTC, entre otros, y pueden crearse directorios adicionales, como en cualquier otro ambiente DOS/Unix para usos específicos (Web Serving, File Serving, etc.). En ellos pueden almacenarse, por ejemplo, archivos de imágenes (.jpg o .gif), planillas de cálculo (.xls), documentos (.doc), páginas HTML (.html), etc. El acceso a las áreas del IFS ubicadas bajo QSYS.LIB continúa siendo la interfaz tradicional de una sesión 5250 a través de QCMD. Los directorios ASCII, en cambio, pueden accederse y manipularse desde otras arquitecturas que acceden al AS/400 como Server con comandos Unix o Windows, desde Web Browsers, FTP, Explorador de Windows vía Netserver, Operations Navigator, etc. Existen además algunos comandos OS/400 que permiten manipular directorios ASCII desde pantalla verde, tales como CHGCURDIR o su alias CD, CRTDIR o MD, WRKLNK y muchos más. Además se pueden manipular directorios y archivos ASCII usando comandos UNIX desde la interfaz QSHELL. Todas estas facilidades implican una redefinición total de las posibilidades del AS/400 como servidor. Hacen posible que dentro de una instalación, además de correr aplicaciones nativas, AS/400 por ejemplo, pueda jugar tanto el rol de un servidor de disco como también de un servidor web o de correo. Por otro lado, el IFS propone una centralización del almacenamiento, con todo lo que esto implica en términos de seguridad e integridad, (por ejemplo, resguardar todo con un único backup). En las siguientes secciones profundizaremos la organización del IFS y también las distintas formas de manejar y acceder la información contenida. Estructura del Integrated File System (IFS) El IFS utiliza una estructura de organización jerárquica estándar a través de directorios. Existen una serie de directorios ya creados para los sistemas de archivo más comunes y también es posible generar nuevos directorios. Utilizando los directorios del IFS es posible almacenar elementos tradicionales de AS/400 como también imágenes, audio, video, páginas web, planillas de cálculo o documentos generados por un editor de texto. Es importante aclarar que el IFS no es un sistema operativo ni un programa bajo licencia (tampoco se lo encontrará como opción separada de ningún producto) simplemente forma parte del sistema operativo. El siguiente esquema es un ejemplo de estructura de IFS: Las principales características de algunos de los directorios o file system provistos por el sistema son las siguientes: • • • • • • • QOpenSys: es el sistema de archivos de los sistemas abiertos. Es compatible con los estándares de sistemas abiertos basados en UNIX. Dispone de soporte para nombres de objeto sensibles a mayúsculas y minúsculas. QDLS: es el sistema de archivos de servicios de biblioteca de documentos. Este sistema de archivos soporta la estructura de carpetas. Proporciona acceso a documentos y carpetas. QOPT: permite acceder a los datos almacenados en un CD (soportes ópticos). QNTC: es el sistema de archivos de Windows NT Server. Este sistema de archivos proporciona acceso a los datos y objetos que se encuentran almacenados en un servidor con Windows NT 4.0 o una versión superior. Posibilita que las aplicaciones del AS/400 utilicen los mismos datos que los clientes de Windows NT. En este caso se incluye el acceso a los datos que se encuentren en un Windows NT Server que se ejecute en un Servidor PC integrado (placa IPCS). QNetWare: permite acceder a los datos y objetos locales o remotos almacenados en un servidor en el que se ejecuta Novell NetWare 3.12 ó 4.10. NFS: es el Sistema de Archivos de Red (NFS). Permite al usuario acceder a los datos y objetos almacenados en un servidor NFS remoto. Un servidor NFS puede exportar un sistema de archivos de red que los clientes NFS montarán a continuación dinámicamente. QSYS.LIB: es el sistema de archivos de biblioteca donde la información se almacena de manera tradicional siguiendo la estructura de biblioteca, objeto, miembro. Dependiendo de la interfaz, es posible referirse a los objetos almacenados en QSYS.LIB con la notación IFS. Ej: /QSYS.LIB/TAP01.DEVD Para referirse a los objetos almacenados en directorios, se necesita especificar un camino de acceso o “path name” de la manera utilizada en Unix o en PC. El path name se expresa como una secuencia de nombres de directorio seguidos del nombre del objeto. Los directorios individuales y el nombre de objeto se separan con el carácter barra inclinada (/); por ejemplo directorio1/directorio2/archivo. Existen comandos del OS/400 que utilizan path names para referirse a los objetos del IFS. Formas de acceder al IFS Existen distintas maneras de manipular directorios del IFS: • • Desde Windows a través de: o NetServer o Operations Navigator Desde “pantalla verde” de AS/400: o QSHELL Interpreter o Comandos específicos del OS/400 1 - Entorno de red y NetServer Para poder acceder al IFS desde el Entorno de Red, NetServer debe estar configurado y activo. NetServer es un servidor más de TCP/IP y no es un programa bajo licencia. Los directorios que aparecen al clickear sobre el servidor NetServer son aquellos que se hayan elegido para compartir, no el IFS completo (para ampliar información sobre configuración y definición de compartimientos del NetServer, referirse a Tip nro. 13: “Aproveche lo que ya tiene: FILE SERVING con NETSERVER/400”). 2 – Operations Navigator Operations Navigator es una potente interfaz gráfica para los clientes Windows que permite gestionar y administrar uno o varios sistemas AS/400 fácilmente. Con cada nuevo release, la interfaz gráfica con el AS/400 sigue ampliándose. Es un componente del producto Client Access, instalable por separado y posee a su vez un gran número de subcomponentes para gestionar distintos aspectos del sistema, entre ellos, el Sistema de archivos integrado. En AS/400 debe instalarse el producto bajo licencia Client Access (5769XW1es necesario para emular y para hacer transferencias de datos) y el Client Access Express (5769XE1 – es necesario para hacer instalaciones selectivas de algunas componentes del Operations Navigator) . Para poder acceder al IFS desde Windows el producto Client Access Express y el componente Operations Navigator necesitan instalarse en la PC. 3 – QSHELL Interpreter “QShell Interpreter” forma parte del sistema operativo como opción 30 del programa bajo licencia 5769SS1 (verificar que esté instalada esta opción). Es una interfaz de comandos y un lenguaje de scripting al estilo UNIX. Para arrancar el intérprete de comandos Qshell se debe utilizar el comando STRQSH. Ofrece una línea de comandos que soporta la ejecución de algunos comandos UNIX, por ejemplo: pwd, cd, cat, find, ls entre otros. Especificando el path name adecuado se puede acceder al IFS para ejecutar el comando solicitado sobre el directorio o archivo destino. En el ejemplo siguiente, el comando ls se usa para listar el contenido del directorio “/ndtest”. En este caso se está especificando un path name absoluto. Si no se especifica “/” antes del nombre del directorio, el path name es relativo al directorio corriente. Línea de comandos del Shell 4 – Comandos específicos del OS/400 El menú FILESYS proporciona la forma más directa para llegar a todos los comandos que permiten gestionar el IFS. Los objetos almacenados en el IFS se manejan a través de un grupo de comandos similares a los que se utilizan para trabajar con objetos en bibliotecas, por ejemplo, se pueden crear directorios (CRTDIR), cambiar directorio actual (CHGCURDIR), modificar autorizaciones (CHGAUT) o trabajar con enlaces de directorios (WRKLNK) entre otros. Algunos ejemplos son: • • CHGCURDIR DIR('/tekweb') cambia el directorio corriente a “/tekweb”. CHGAUT OBJ('/pruebaweb/prufp/tekweb1/index.htm') USER(TEKM5) DTAAUT(*RWX) incorpora al usuario TEKM5 con autorización “read, write y execute” a la página html de nombre index.htm ubicada en el directorio “/pruebaweb/prufp/tekweb1”. En los dos casos anteriores se hace referencia a directorios del IFS creados con el comando CRTDIR o con alguna otra facilidad para crear directorios desde Windows. La opción 3 del menú FILESYS proporciona el grupo de Mandatos de seguridad aplicables a objetos de directorios. Consideraciones sobre backups del IFS Los objetos de directorios se salvan con el comando SAV. Algunos programas bajo licencia instalan tanto objetos en bibliotecas como también en el IFS, por lo tanto, la estrategia de backup a utilizar en la instalación debería incluir este mandato para que la operación de salvar sea completa. Tener en cuenta que si se decide utilizar el AS/400 como servidor de archivos, la información almacenada en los directorios del IFS también debería salvarse regularmente. Las siguientes sentencias comprenden un ejemplo de backup completo de todos los elementos del sistema, incluyendo objetos de directorios del IFS (son las ejecutadas por la opción 21 –Todo el sistema- del menú SAVE): SAVSYS SAVLIB LIB(*NONSYS) ACCPTH(*YES) SAVDLO DLO(*ALL) FLR(*ANY) SAV DEV(‘/QSYS.LIB/TAP01.DEVD’) ('/QDLS' *OMIT) ) UPDHST(*YES) OBJ( ('/*’) ('/QSYS.LIB' *OMIT) La sentencia SAV se utiliza para salvar los objetos en directorios. El parámetro OBJ se usa para especificar cuáles directorios o file systems se van a salvar. El primer valor de este parámetro “/*” indica que se salvará todo el sistema de archivos. El segundo valor tiene como objetivo omitir de la operación de backup el sistema de archivo “/QSYS.LIB”, debido a que ya fue salvado con el comando SAVSYS. De la misma forma, el tercer valor del parámetro OBJ también está especificando una omisión, en este caso para el file system “/QDLS” de las carpetas compartidas porque ya fue incluido en el comando SAVDLO. Otro detalle a observar, es la forma de referirse al dispositivo de backup. En el parámetro DEV usado para especificar la unidad de destino debe utilizarse la notación “path name” para que el comando se ejecute exitosamente. ‘/QSYS.LIB/TAP01.DEVD’ determina que se utilizará el dispositivo TAP01 ubicado en la biblioteca QSYS. Para tener en cuenta... • Si la instalación del Client Access Express en la PC es la “Típica”, sólo se instalará el componente Operations Navigator con las “Operaciones Básicas”, y de esa manera no se podrá ver el subcomponente Sistemas de Archivos Integrado. En ese caso se necesitará luego Instalación Selectiva para incluir esta componente al Operations Navigator. hacer una • También es posible que el subcomponente Sistemas de Archivos Integrado del Operations Navigator no aparezca en el puesto cliente desde el cual se quiera acceder (aunque haya sido instalado) debido a restricciones de seguridad impuestas para el usuario. • En las ocasiones que AS/400 no “aparece” como servidor en el Entorno de Red, está siempre la posibilidad de acceder al IFS desde el entorno Windows a través de Inicio > Buscar > PC y especificar el Nombre del servidor NetServer. Una vez localizado, las posibilidades de uso son las mismas que en Entorno de Red. • Existen ciertos directorios que son creados automáticamente cuando se realizan determinadas tareas sobre el sistema. Por ejemplo: cuando se ejecuta el mandato RCLSTG, se genera el directorio QReclaim donde se almacenan los elementos recuperados por el comando. A su vez, cuando se crean servidores web a través del HTTP Server Apache, se utiliza el directorio /www el cual se genera la primera vez que se crea un HTTP Server Apache. http://www.teknodatips.com.ar - Copyright Junio 2001 Teknoda S.A. - AS/400 y OS/400 son marcas registradas de IBM. Dudas o consultas a [email protected].