Tee causa problemas de formato en la consola cuando se ejecutan los comandos lxc-attach en la sesión

Tee causa problemas de formato en la consola cuando se ejecutan los comandos lxc-attach en la sesión

Utilizo tee para capturar la salida de un script de instalación en un archivo de la forma habitual. Todo está bien, excepto cuando se ejecutan comandos lxc-attach en un contenedor LXC Linux. Por ejemplo (ver captura de pantalla adjunta) en la pantalla derecha está la salida de la consola cuando se usa tee de los comandos "lxc-attach -n contenedor -- yum -y install" y en la pantalla izquierda está el "tail -f log" del registro en tee. Como puede ver, el registro de tee tiene el formato correcto, pero cuando se usa tee, la salida de la consola de los comandos que se ejecutan a través de lxc-attach obtiene saltos de línea o tabulaciones adicionales, etc. Cualquier forma de usar tee o un equivalente de tee para que tanto el registro de tee como el ¿El registro de la consola está formateado correctamente? ver captura de pantalla

Respuesta1

Toda la actividad registrada que necesito capturar son los comandos sudo. En caso de que ayude a alguien, aquí está la solución alternativa que encontré.aquíyaquíy ahora estoy usando (yo mismo escribí el siguiente código basándome en lo que aprendí sobre esta función de registro para sudo). Es muy fácil de usar y proporciona un registro muy detallado. Es una solución increíble, estoy muy contento con ella y con sudoreplay obtienes "vídeos caseros de recuerdo" de tus instalaciones que puedes compartir con tus nietos en Navidad...

Y, cuando finalice la sesión de instalación, opcionalmente puede simplemente desinstalar el archivo en /etc/sudoers.d si lo prefiere.

Debo agregar que este método no tiene NINGUNO de los problemas que tuvo tee al registrar la salida de los comandos dentro de los contenedores LXC como "lxc-attach", etc.; por supuesto que no.

¡Disfrutar!

if [ ! -d "$DistDir"/installs/logs ]
then
    sudo mkdir -p "$DistDir"/installs/logs
fi

if [ -f "$DistDir"/installs/logs/$USER.log ]
then
    sudo mv "$DistDir"/installs/logs/$USER.log "$DistDir"/installs/logs/$USER.log.$LOGEXT
fi

if [ ! -d /var/log/sudo-io ]
then
    sudo mkdir -m 750 /var/log/sudo-io
fi

if [ ! -f /etc/sudoers.d/orabuntu-lxc ]
then
    sudo sh -c "echo 'Defaults      logfile=\"/home/$USER/Downloads/orabuntu-lxc-master/installs/logs/$USER.log\"'  >> /etc/sudoers.d/orabuntu-lxc"
    sudo sh -c "echo 'Defaults      log_input,log_output'                               >> /etc/sudoers.d/orabuntu-lxc"
    sudo sh -c "echo 'Defaults      iolog_dir=/var/log/sudo-io/%{user}'                     >> /etc/sudoers.d/orabuntu-lxc"
    sudo chmod 0440 /etc/sudoers.d/orabuntu-lxc
fi

información relacionada