Mostrando entradas con la etiqueta qdls. Mostrar todas las entradas
Mostrando entradas con la etiqueta qdls. Mostrar todas las entradas

martes, 15 de abril de 2014

QSHELL para recuperar e importar a un fichero la lista de archivos de una carpeta del IFS.

   Recientemente me encontré con una situación en la que necesitaba recuperar en un fichero la relación de archivos que contenía una carpeta del IFS, por lo que decidí hacerlo usando comandos del interprete de comandos QSHELL que tiene el AS400, así que comparto aquí la forma en la que lo hice por si a alguien le es de utilidad. Es muy fácil.

   A continuación vemos las poquitas sentencias CL necesarias para éste ejemplo:

CRTPF      FILE(LIBRERIA/ARCHIVO) RCDLEN(1024)
MONMSG     MSGID(CPF0000)                        
CHGVAR     VAR(&CMD) VALUE('ls -R /FTP/*.cbs > /qsys.lib/libreria.lib/archivo.file/archivo.mbr')
STRQSH     CMD(&CMD)                              
MONMSG     MSGID(CPF0000 QSH0006 QSH0007) EXEC(DO)
(TRATAMIENTO DE ERRORES)
ENDDO

   Si todo ha ido bien, el interprete QSHELL nos habrá dejado en LIBRERIA/ARCHIVO una relación de todos los archivos tipo *.cbs (por ejemplo) y ya podremos tratar cada registro.

     Lógicamente el comando acepta múltiples parámetros, esto es sólo un ejemplo de la aplicación de QSH o QSHELL para acometer una solución puntual, pero tanto el comando ls como QSH en general tiene muchos más comandos y posibilidades.

   Qshell is un conjunto de utilidades basadas en estándares POSIX and X/Open que forman parte del entorno QSHELL i5/OS PASE (Portable Application Solutions Environment) el cual proporciona muchas soluciones y utilidades que se ejecutan como programas de i5/OS PASE y que incluyen comandos estándar.

    Si queremos informarnos bien de las posibilidades de QSHELL aquí tenemos un enlace en el IBM Knowledge Center (el enlace es para la versión 6.1), busca tu versión si no es ésta:


Saludos.
Carlos Bartolomé.

martes, 3 de mayo de 2011

Más soluciones para problemas de acceso al IFS y QDLS del AS400 / iSeries

En un post del 31 de marzo comentabamos como intentar solucionar los problemas de credenciales que pueden surgir con Windows 7 para acceder a la QDLS o IFS del AS400 modificando un par de directivas.

Si a pesar de seguir las instrucciones o cualquier otro intento no puedes entrar a la QDLS o al IFS desde el PC, te aconsejo que compruebes si tu PC mantiene abierta una conexión al puerto CIFS (Common Internet File System) y si la tiene, finalizarla. Para ello debes ejecutar lo siguiente en la línea de mandatos del AS400 con un usuario con la autoridad suficiente.

NETSTAT OPTION(*CNN)
o bien
NETSTAT y seleccionar posteriormente la opción 3.

Te saldrá una pantalla con todas las conexiones, busca la IP correspondiente y con la opción 4, finaliza la conexión CIFS que tenga.

A continuación ya podrás entrar desde el PC a la QDLS o al IFS.

El puerto 445/TCP se usa para el Sistema de archivos de Internet común (CIFS) y es necesario para el uso compartido de archivos y algunas aplicaciones.

¡¡¡ Suerte !!!

jueves, 31 de marzo de 2011

¿No puedes acceder al AS400 / iSeries desde Windows 7? Revisa estas 2 directivas.

Ahora que Windows 7 se extiende como la espuma, es muy habitual encontrarse con usuarios que no pueden entrar al IFS del AS400 / iSeries o tienen problemas de credenciales al acceder desde el explorador al IFS y a la QDLS a pesar de usar el mismo usuario y contraseña en ambas plataformas.

La mayoría de las veces he solucionado estos problemas ajustando dos directivas de grupo local:

- Seguridad de red: nivel de autenticación de LAN Manager
- Cliente de redes de Microsoft: enviar contraseña sin cifrar para conectar con servidores SMB de terceros.

Para acceder a las directivas teclearemos en la línea de mandatos gpedit.msc y seguiremos la siguiente ruta: Configuración del equipo / Configuración de Windows / Configuración de Seguridad / Directivas Locales / Opciones de Seguridad.

Buscaremos los valores comentados y los ajustamos. Posteriormente es recomendable reiniciar aunque existen comandos para forzar la aplicación de las directivas.

Nivel de autenticación de LAN Manager.

Esta configuración de seguridad determina el protocolo de autenticación desafío/respuesta que se usa para inicios de sesión de red.


Esta opción afecta al nivel de protocolo de autenticación usado por los clientes, el nivel de seguridad de sesión negociado y el nivel de autenticación aceptado por los servidores. Windows 7 usa por defecto el nivel de autenticación NTLMv2, por lo que hay que “estandarizar” la autentificación y usar sólo NTLMv2 en las comunicaciones donde sea posible. El valor a establecer es: Enviar LM y NTLM: usar la seguridad de sesión NTLMv2 si se negocia.

Cliente de redes de Microsoft: enviar contraseña sin cifrar para conectar con servidores SMB de terceros.


Este es el caso del AS400 / iSeries. Esta configuración de seguridad debe estar habilitada, para permitir que tu Windows 7 envíe contraseñas de texto sin formato a servidores SMB que no sean de Microsoft y que no admitan el cifrado de contraseñas durante la autenticación.


Si aún sigues teniendo problemas, comprueba que el usuario que estás usando no está deshabilitado para el acceso al servidor Netserver AS/400. Asegurate de tenerlo habilitado ejecutando la siguiente sentencia: CHGUSRPRF USRPRF(NOMBRE DEL USUARIO). Al actualizar el perfil, si está deshabilitado para acceso al servidor Netserver se habilitará automáticamente.

En otra entrada de mi blog tienes más posibles soluciones: http://archivoinformatico.blogspot.com/2011/05/mas-soluciones-para-problemas-de-acceso.html


Prueba y si a pesar de todo sigues teniendo problemas puedes mirar la documentación de IBM.
El enlace que te pongo es el de la versión 6.1:

¡¡¡ Saludos y suerte !!!