Abr 20 2021

Iniciar una Sesión AS400 Cuando se Inicia Windows

Published by under AS400

Puede que sea necesario iniciar sesiones AS400 en el arrancar Windows por varias razones, como ejecutar scripts o incluso sesiones de impresora. Aquí hay algunos peligros que puedo haber encontrado.

TPrimero, las sesiones no comenzarían sin los parámetros adicionales de pcsws.exe /H – para Hidden – y posiblemente /Q – para ocultar la ventana del logotipo de IBM. Las opciones de pcsws.exe están disponibles en IBM como referencia.

Este método funciona para una sola sesión. Para iniciar varios, debe iniciarlos con el comando «start». Agregue el parámetro /B para ocultar la ventana de DOS seguido de «», de lo contrario se ignorarán los parámetros del comando principal.

Por lo tanto, este sencillo script funcionará:

@echo off

Set ScriptPath=C:\Scripts
Set client_Access_Home=C:\Program Files (x86)\IBM\Client Access
Set AS400=My_iSeries_Host
Set iSeries_User=myUser
Set password=myPassword

"%client_Access_Home%\cwblogon.exe" %AS400% /u %iSeries_User% /p "%password%"

start /B "" "%client_Access_Home%\Emulator\pcsws.exe" %ScriptPath%\session.ws /Q /H
start /B "" "%client_Access_Home%\Emulator\pcsws.exe" %ScriptPath%\other_session.ws /Q /H

pause


Cree una nueva entrada en el programador de tareas para que se ejecute al iniciar del servidor.
Seleccione el usuario bajo el cual se debe iniciar la tarea y marque «Ejecutar incluso si ningún usuario ha iniciado sesión» y agregue el archivo por lotes anterior en Acciones.

El comando «pause» debe permanecer. Sin, la tarea finalizará, así como el proceso cmd dejando los procesos pcsws.exe activos pero huérfanos. La impresora permanecerá en estado Detenido en IBM i !
Si alguien tiene una explicación, no dude en dejar un comentario.
cwblogon.exe está lejos de ser ideal desde el punto de vista de la seguridad. ¡Establezca un perfil restringido! Especifique el mismo usuario en iSeries Navigator o en la configuración de la sesión.

Probé esto en Windows 2012 Server. Para ver si funciona en otro sistema operativo, pero no hay ninguna razón por la que no funcione.
Ahora puede programar reinicios cuando lo desee sin tener que lidiar con la administración manual de inicios de sesión.

Para las sesiones de impresora, es mejor imprimir en una impresora compartida de Windows. Este método es mucho más eficiente.
Si desea ejecutar comandos CL, existen soluciones como:
SSH con clave privada y el comando system.
– IBM ahora admite Ansible, que puede ejecutar comandos CL si está familiarizado con Ansible.

 

No responses yet

Abr 19 2021

SSH, Shell Predeterminado e Historial de Commandos en AS400

Published by under AS400,SSH

QSHELL y PASE en IBM i son herramientas interesantes, pero siguen estando limitadas por la ventana 5250 de tamaño fijo sin elevación. Veamos cómo hacerlos más agradables con una conexión SSH segura y algunos consejos.

Inicie el demonio SSH

Tenga en cuenta que SSH ya está instalado en su AS400, es decir, tiene 5733SC1 (OpenSSH, OpenSSL, zlib) dans LICPGM, puede iniciar el demonio SSH con este comando:

STRTCPSVR SERVER(*SSHD)


No parece haber una opción de inicio automático para el servidor TCP SSH.
Terminé agregando el comando al programa de inicio QSTRUP para que el servidor SSH se inicie automáticamente al IPL. Puede conectarse a su AS400 con Putty que puedes descargar gratis.

Shell Predeterminado en SSH

El shell predeterminado es bsh, que es bastante limitado y poco común en otros sistemas operativos. Se puede cambiar en el archivo sshd_config (situado en /QOpenSys/QIBM/UserData/SC1/OpenSSH/openssh-4.7p1/etc) agregándo

#ibm pase for IBM i shell
ibmpaseforishell /QOpenSys/usr/bin/ksh

como se menciona en el sitio web IBM.

También se requiere ksh para que tenga el historial de comandos en la terminal.

Historial de Commandos

Una vez que ksh es el shell predeterminado, puede configurar las teclas de flecha para navegar por el historial de comandos. ¡No es necesario escribir los comandos una y otra vez!

En el directorio de inicio, cree un archivo .profile, el cual será cargado cada vez que conectase con ssh al AS400:

if [[ $SHELL = "/QOpenSys/usr/bin/ksh" ]]; then
  set -o emacs
  alias __A=`echo "\020"`     # up arrow = ^p = back a command
  alias __B=`echo "\016"`     # down arrow = ^n = down a command
  alias __C=`echo "\006"`     # right arrow = ^f = forward a character
  alias __D=`echo "\002"`     # left arrow = ^b = back a character
  alias __H=`echo "\001"`     # home = ^a = start of line
  alias __Y=`echo "\005"`     # end = ^e = end of line
fi


Reinicie el demonio SSH y vuelva a conectarse.
En la 1ª línea, comprobamos que el shell es realmente ksh ya que los cambios realizados solo se aplican a las conexiones SSH pero no a QSH o PASE (QP2TERM).

¡Connectar con Putty es más conveniente que llamar a QP2TERM en una ventana 5250 de tamaño fijo!
Puede hacer lo mismo con bash si se ha instalado en su sistema. Indicación: Instale 5733OPS Opción 3, gcc viene con bash, perl o rpm después de la instalación.

 

No responses yet

Abr 19 2021

Cómo Cambiar el Programa de Inicio de AS400 QSTRUP

Published by under AS400

QSTRUP de un IBM i / AS400 es el programa de inicio en CL que se carga cuando el sistema arranca y puede ser útil cambiarlo. Es posible que desee agregar la línea de comando MKDIR, por ejemplo, para tener un recurso compartido permanente montado.
Digo programa porque QSTRUP es un programa compilado y no un simple archivo de texto.
 
Puede obtener el nombre de QSTRUP y la biblioteca del valor del sistema QSTRUPPGM:

DSPSYSVAL QSTRUPPGM

El resultado devuelto es QGPL / QSTRUP en mi caso.
 
Si no tiene el código fuente, puede extraerlo:

RTVCLSRC QGPL/QSTRUP mylib/QCLSRC

Reemplace mylib con QGPL ya que la mayoría de la gente lo almacena allí, pero primero haga una copia del código fuente para no sobrescribirlo. 
 
Para editar el código fuente, inicie el administrador de desarrollo:

STRPDM

Ingrese la opción 3: Gestión de membresía, archivo QCLSRC y biblioteca QGPL
Ingrese la opción 2: EDITAR
Realizar cambios y guardar
Puis option 14: COMPILAR

El nuevo programa QSTRUP se tendrá en cuenta en el próximo IPL (initial program load o boot en otros sistemas).
 
Es posible analizar los registros generados al inicio para comprobar qué sucede después de cambiar el programa QSTRUP.

 

No responses yet

Abr 15 2021

Sincronizar Archivos Remotos desde un NAS o un Servidor Windows

Published by under Respaldo,Windows

robocopy es una herramienta que le permite copiar e incluso sincronizar datos de un servidor (o un NAS) a otro servidor de Windows. Se proporciona en el kit de ressources de Windows 2003 Server o de forma nativa en Windows 2008 Server.
La sincronización requiere poco ancho de banda y se puede utilizar para realizar copias de seguridad de los datos a través de un enlace de red lento.
 
Aquí hay un script de DOS que sincroniza datos de carpetas compartidas en un servidor remoto a un servidor local. Podríamos hacerlo al revés, por supuesto. El software de copia de seguridad convencional puede ocuparse de los archivos presentes localmente y guardarlos en cinta si lo desea.
El software de respaldo no proporciona un agente que se pueda instalar en un NAS la mayor parte del tiempo. Por lo tanto, utilizo este script de sincronización para sitios remotos pequeños con archivos alojados en servidores Windows o NAS que no están equipados con software de respaldo.
 

@echo off
CLS

SETLOCAL ENABLEDELAYEDEXPANSION
set REMOTE_NAS=192.168.1.250
set LOCAL_DIRECTORY=C:\Copy
set EXCLUDE_DIR="Recursos compartidos que no deben respaldarse"

rem Pasar por los recursos compartidos del servidor / NAS
for /F "tokens=1 delims=" %%K in ^
  ('net view %REMOTE_NAS%^|findstr Disk^|findstr /V %EXCLUDE_DIR%') do (
  set SHARELINE=%%K
  set SHARELINE=!SHARELINE:Disk=#!
  
  rem Sincronizar archivos en el recurso compartido
  for /F "tokens=1 delims=#" %%S in ("!SHARELINE!") do (
    set SHARE=%%S
    echo Procesando \\%REMOTE_NAS%\!SHARE!...
    robocopy "\\%REMOTE_NAS%\!SHARE!" "%LOCAL_DIRECTORY%\!SHARE!" ^
    /XF *.avi Thumbs.db /XD Temp* /E /COPY:DAT /R:0 /W:1 /NP
  )
)


Ahorre con una extensión BAT, adapte los diferentes parámetros y cree una tarea programada para que se ejecute todas las noches.

 

No responses yet

Abr 07 2021

Restablecer la Contraseña de SST sin Reiniciar

Published by under AS400

La contraseña de SST es fundamental para acceder al mantenimiento de hardware del iSeries e IBM la necesita sistemáticamente. Sin embargo, a menudo sucede que la contraseña se pierde accidentalmente.
La mayoría de los procedimientos para restablecer la contraseña de SST requieren un IPL (o reinicio) en modo degradado. No es necesario con la HMC:
 
Abra una sesión 5250 en el IBM i e iníciela con el usuario QSECOFR

CHGDSTPWD PASSWORD(*DEFAULT)


Conéctese también a la HMC en 5250
ID: Q#hmc, Puerto: 2300
Y deja la sesión abierta

Sesion 5250 HMC


Ahora conéctese a la HMC con el WEB-based System Manager. En este ejemplo se utiliza la versión 6, pero el método sigue siendo el mismo para versiones posteriores.
Navegar en «Aplicaciones de servicio»
-> «Punto focal de servicio»
-> «Utilidades de mantenimiento»

Seleccionar el systema
En el menú, haga clic en «Seleccionado», «Funciones de mantenimiento del panel de control»
luego seleccione la partición en cuestión
En el menú, haga clic en «Funciones de partición» -> «Activación de herramientas de mantenimiento dedicadas»
Haga clic en OK
 
En la sesión 5250 de la HMC, aparece un nuevo menú:
Herramientas de mantenimiento en modo dedicado (DST) – Apertura
Inicie sesión en QSECOFR/QSECOFR
Cambia la contraseña
 
Ahora se puede acceder al menú SST con el restablecimiento de la contraseña.
EN QSECOFR en la sesión AS400:

STRSST
 

No responses yet

« Prev - Next »