Только что установил LibreOffice 6.0.4.2 в Ubuntu 18.04.
LibreOffice не может открывать (или выводить список) файлы из каталога / tmp.
Я читал о профилях AppArmor, о том, что разработчики обсуждают «ожидаемый» / домашний вариант использования и т. Д., Что я просто считаю еще одной полной чепухой от команды LibreOffice.
Я попытался отключить AppArmor, но LibreOffice даже не открывался после этого, поэтому я снова включил его.
Есть ли решение, позволяющее LibreOffice получать доступ к файлам в любых папках в моей системе?
У меня не было этой проблемы с 18.04 и предыдущими версиями LibreOffice. Но у меня это сейчас с Ubuntu 20.04 и LibreOffice 6.4.
После небольшого исследования я обнаружил, что проблема связана с разрешением. В Ubuntu 20.04 приложения, включая LibreOffice, не имеют доступа для чтения к папке /tmp, куда приложения (например, Firefox) помещают временные файлы. Кстати, вы столкнетесь с той же проблемой, если попытаетесь напрямую открыть любой файл из Интернета с назначенным ему приложением, непосредственно в Firefox, без предварительной загрузки (например, попробуйте открыть в Firefox файл .deb, хранящийся в Интернете, с помощью установщика программного обеспечения) .
Один из способов сортировки — сначала загрузить файлы, а только потом открывать их. Но это раздражает.
Другой способ — переназначить временный каталог в каталоге /home/user/. Преимущество этого заключается в уменьшении требований к пространству в каталоге /, при этом не подвергая риску безопасность.
Временный каталог управляется настройкой среды TMPDIR. Я использовал решение, предложенное здесь от TrueDuality.
echo $TMPDIR
или
mktemp -u
Он должен выглядеть примерно так: /tmp/tmp.zrBHbp0Yt0
sudo gedit /etc/profile
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
перезагрузите
проверьте, не был ли ваш временный каталог переназначен вашему каталогу /home/user/
echo $TMPDIR
На этот раз возврат должен быть примерно таким: / home/user/tmp/nrXo , показывающий, что временный каталог был переназначен.
Примечания:
ОСТОРОЖНО!
sudo gedit ~/.bash_logout
добавьте следующие строки:
if [ -O $TMPDIR && -d $TMPDIR ]; then
rm -rf $TMPDIR/*
fi
сохраните. закрыть и перезагрузить.