
Acabo de instalar LibreOffice 6.0.4.2 en Ubuntu 18.04.
LibreOffice no puede abrir (ni enumerar) archivos desde el directorio /tmp.
He leído sobre perfiles de AppArmor, desarrolladores hablando sobre el caso de uso "esperado"/doméstico, etc., lo que considero otra completa tontería del equipo de LibreOffice.
Intenté deshabilitar AppArmor pero LibreOffice ni siquiera se abrió después de eso, así que lo volví a habilitar.
¿Existe alguna solución para que LibreOffice pueda acceder a los archivos de cualquier carpeta de mi sistema?
Respuesta1
No tuve este problema con 18.04 y LibreOffice anterior. Pero lo tengo ahora con Ubuntu 20.04 y LibreOffice 6.4.
Después de investigar un poco, descubrí que es un problema de permiso. En Ubuntu 20.04, las aplicaciones, incluido LibreOffice, no tienen acceso de lectura a la carpeta/tmpdonde las aplicaciones (como Firefox) colocan archivos temporales. Por cierto, obtienes el mismo problema si intentas abrir directamente cualquier archivo desde la web con su aplicación asignada, directamente en Firefox, sin descargarlo primero (por ejemplo, intenta abrir en Firefox un archivo .deb almacenado en la web con el instalador de software). .
Una forma de solucionar esto es descargar primero los archivos y, sólo después, abrirlos. Pero esto es molesto.
Otra forma es reasignar el directorio temporal en el/Usuario doméstico/directorio. Esto tiene la ventaja de reducir la necesidad de espacio en el/directorio sin comprometer la seguridad.
El directorio temporal se rige por la configuración del entorno TMPDIR. Utilicé la solución propuesta.aquíporVerdaderaDualidad.
- Compruebe dónde está su directorio temporal actual:
echo $TMPDIR
o
mktemp -u
Debería verse algo así:/tmp/tmp.zrBHbp0Yt0
- Editar el archivo/etc/perfil
sudo gedit /etc/profile
- Agregue el siguiente código:
if [[ -O /home/$USER/tmp && -d /home/$USER/tmp ]]; then
TMPDIR=/home/$USER/tmp
else
# You may wish to remove this line, it is there in case
# a user has put a file 'tmp' in there directory or a
rm -rf /home/$USER/tmp 2> /dev/null
mkdir -p /home/$USER/tmp
TMPDIR=$(mktemp -d /home/$USER/tmp/XXXX)
fi
TMP=$TMPDIR
TEMP=$TMPDIR
export TMPDIR TMP TEMP
reiniciar
compruebe si su directorio temporal ha sido reasignado a su/Usuario doméstico/directorio
echo $TMPDIR
Esta vez, la devolución debería ser algo como:/home/usuario/tmp/nrXo, mostrando que el directorio temporal ha sido reasignado.
Observaciones:
- En este punto, el problema debería estar resuelto y debería poder hacer cosas como abrir directamente un archivo desde Firefox (en lugar de descargarlo primero). El archivo se abrirá en modo de solo lectura.
- SÓLO SI el último paso (5) confirma que el directorio temporal ahora está reasignado correctamente, puede preocuparse de que el nuevo archivo /tmp crezca sin cesar. Para corregir este problema, debemos asegurarnos de que al final de la sesión, el archivo se elimine. Sin embargo, si el paso anterior no se completó correctamente, inicia sesión con las credenciales de root y continúa con el siguiente paso, esto puede crear problemas.
¡CUIDADOSO!
sudo gedit ~/.bash_logout
agregue las siguientes líneas:
if [ -O $TMPDIR && -d $TMPDIR ]; then
rm -rf $TMPDIR/*
fi
ahorrar. cerrar y reiniciar.