Как предотвратить создание файла 'недавно использованный.xbel'?

11

Я хочу навсегда запретить Ubuntu 12.10 создавать «недавно использованный» список файлов. Этот список, кажется, хранится в файле:

/home/user/.local/share/recently-used.xbel

Я попытался удалить этот файл, но он продолжает создаваться каждый раз, когда я начинаю новый сеанс входа в систему. Мне нужно знать, как предотвратить воссоздание этого файла.

Джейсон
источник
Я бы тоже хотел, чтобы это было решено.
инвертировать
Может кто-нибудь подать ошибку на bugzilla.gnome.org?
int_ua

Ответы:

12

Чтобы отключить список для приложений на основе GTK 3, выполните следующие действия:

rm ~/.local/share/recently-used.xbel

Если ЭТО НЕ "~ / .config / gtk-3.0 / settings.ini", то

mkdir -p ~/.config/gtk-3.0
    echo -e "[Settings]\ngtk-recent-files-max-age=0\ngtk-recent-files-limit=0" > ~/.config/gtk-3.0/settings.ini

Если ЕСТЬ "~ / .config / gtk-3.0 / settings.ini", то

echo -e "\ngtk-recent-files-max-age=0\ngtk-recent-files-limit=0" >> ~/.config/gtk-3.0/settings.ini

(обратите внимание, что «>>» против разницы «>»; «>>» добавляет к файлу, в то время как один «>» полностью перезаписывает его, без резервного копирования, если он уже существует)

И в любом случае:

rm ~/.local/share/recently-used.xbel

Чтобы отключить список для приложений на базе GTK 2, выполните следующие действия:

echo gtk-recent-files-max-age=0 >> ~/.gtkrc-2.0

Эти шаги лучше, чем изменение разрешений для файла, поскольку они предотвращают отображение сообщений об ошибках при запуске приложений на основе GTK, которые полагаются на файл.

Подробную информацию можно найти здесь - https://alexcabal.com/disabling-gnomes-recently-used-file-list-the-better-way/

kingmilo
источник
Будет хорошо, если вы включите фактические коды для gtk2и gtk3в своем ответе. Люди могут тогда посмотреть на ссылку для фона, если они хотят. Было бы полезно, если ссылка недоступна
@ vasa1 Хорошая идея сделает это в ближайшее время.
kingmilo
1
Хорошо, я внес изменения, удалил все закладки из недавно использованного .xbel и снова вошел в систему. Я создал несколько файлов. Выглядит хорошо до сих пор. Хотя это выглядит как некоторые программы могут иметь свои собственные внутренние «недавно использовавшиеся» списки. LibreOffice Calc кажется одним из них.
1
Последнее замечание :) Кто-то еще может узнать, к чему обращались. Смотрите этот код, например: find ~/{Documents,Desktop,Downloads,Music} -ctime -1 -type f -exec bash -c 'select f;do [[ -n $f ]]&&xdg-open "$f"||exit;done' _ '{}' +. Он основан на предложениях Schragge в этой теме и не полагается на recently-used.xbel. Итог: если кто-то еще имеет доступ к ПК, «обычных» мер будет недостаточно.
1
Примечание: эти настройки не предотвращают некоторые дополнительные записи на диск:(meld:3588): Gtk-WARNING **: Attempting to store changes into '/home/user/.local/share/recently-used.xbel', but failed: Failed to rename file '/home/user/.local/share/recently-used.xbel.ZT44NX' to '/home/user/.local/share/recently-used.xbel': g_rename() failed
int_ua
1

Я обнаружил, что игра с недавно использованным файлом .xbe l не имеет никакого эффекта (по крайней мере, в Ubuntu 17.04+). Вы можете удалить его, очистить его, / dev / null, установить его неизменным, снимать любым способом, и он не будет работать. Например, в Nautilus есть раздел «Недавно использованные», встроенный в боковую панель, и он не может быть удален каким-либо образом и сохраняется после удаления файла .xbel.

В GNOME / Ubuntu сделайте это (что сработало для меня):

  1. Откройте терминал и запустите gnome
$ gnome-control-center
  1. Перейдите в «Группу конфиденциальности» и нажмите «Конфиденциальность». введите описание изображения здесь

  2. Нажмите «Использование и история» и в следующем диалоговом окне установите переключатель «Недавно использованный» в положение « ВЫКЛ» .

Как только вы это сделаете, вы увидите, что список «Недавно использованные» в Nautilus стал пустым. (Это также стирает файл .xbel - проверьте его.) Готово.

ISYNC
источник
1

Как и раньше, что бы вы ни делали, оно всегда здесь. Но вы можете сделать его неизменным, чтобы он не регистрировался и оставался пустым. Команда: sudo chattr + i ~ / .local / share / недавно использованный. Xbel. Система и вы тоже не сможете ничего с ней сделать, пока вы не измените + i (неизменяемый). Это обратная команда для возобновления повторного входа в систему: sudo chattr -i ~ / .local / share / недавно-used.xbel. (Только если вы хотите, чтобы недавно использовавшийся функционал снова по какой-то причине). Я успешно очистил журналы, переместив папку в / dev / shm и выключив компьютер. Папка возвращается, пустая.

CANDU
источник
0

Пока что этот файл воссоздается, даже если вы добавили его в root или сделали его неизменным. Даже если вы установите для параметра max-age значение 0, он все равно запоминает каталоги.

Я реализовал обходной путь, который очищает этот файл каждые 5 минут. Это очень неприятный обходной путь: создайте запись cron, которая часто очищает файл:

crontab -e

# clear gtk recently used list every 5 minutes
*/5 *   *   *   *   echo "" > .local/share/recently-used.xbel

Некоторые приложения по умолчанию все еще используют недавно использованный список, но это удовлетворит ваш вопрос, чтобы навсегда запретить Ubuntu 12.10 создавать список «недавно использованных» файлов.

инвертировать
источник
-1

Предполагая, что вы хотите запретить запись только этого файла, вы можете попытаться изменить его разрешения, чтобы к нему нельзя было получить доступ.

Сначала удалите файл. Затем создайте новый, пустой. Затем настройте его разрешения.

cd ~/.local/share
rm recently-used.xbel
touch recently-used.xbel
chmod 000 recently-used.xbel

Если вы хотите, вы можете даже поменять владельца, чтобы ни одна из программ, запущенных вашим пользователем, не смогла изменить свои права и записать в нее:

sudo chown root:root recently-used.xbel

Некоторые программы могут выдавать ошибки (с или без этой окончательной настройки).

Элия ​​Каган
источник
Есть идеи, какую программу (ы) записать в этот файл?
Я вижу этот файл (XML) в Lubuntu, который не имеет Zeitgeist, AFAIK.
Я получаю только приглашение. Да, моя чистая установка Lubuntu.
1
@ vasa1 GTK-приложения пишут в этот файл.
kingmilo
Программы GTK выдают ошибку в stderr, если этот файл является chmod для root, замечательно, что файл воссоздается как пользователь как владелец. Как таинственно! Это решение не похоже на работу.
инвертировать