Чи є спосіб зберегти поточний сеанс (програми + організація вікон на робочих столах) в Unity та завантажити його за потреби?
Чи є спосіб зберегти поточний сеанс (програми + організація вікон на робочих столах) в Unity та завантажити його за потреби?
Відповіді:
Ні - як ви описали, наразі це не можливо для версій Ubuntu 11.04 і новіших версій.
Ви можете прочитати цей звіт про помилки, зокрема прокоментувати 24
https://bugs.launchpad.net/ubuntu/+source/gnome-session/+bug/771896
або ось більш повне пояснення (занадто довго, щоб копіювати тут)?
https://lists.ubuntu.com/archives/ubuntu-desktop/2011-January/002734.html
Я зробив вирішення цього сценарію, який допомагає налаштувати ваш сеанс.
Завантажте його тут .
Зробіть його виконуваним і запустіть з терміналу./session.config
Ви можете переглянути код сценарію ( https://www.dropbox.com/s/w1btmead93q6hze/session.config?dl=0 ), у кожній частині є пояснення. Він створить сценарій запуску, який переміститься до кожного вікна перегляду та відкриє вказану програму.
Крім того, ви можете запускати його, коли хочете, просто натисніть Alt+ F2і вставте ~/.sessionconf
.
Видалення
Щоб видалити будь-які зміни, внесені моїм сценарієм, просто видаліть ці файли:
Або запустіть це у терміналі:
rm ~/session.config ; rm ~/sessionconf ; rm ~/sessionconf.bak ; rm ~/.config/autostart/sessionconf.desktop
Ви можете зробити це: killall gnome-session
. Як ми знаємо, що введення команди sudo gnome-session-save --logout
вийде з системи. Це збереже поточний сеанс на Unity. Я спробував це.
Або ви можете прочитати про те, як зробити автоматичний запуск програми під час кожного входу .
Або ви можете спробувати цей ключ -редактор gconf :
/apps/gnome-session/options/auto_save_session = true
gnome-session-save
? Я отримую "команду не знайдено". І я не можу знайти його в сховищі. "Неможливо знайти пакет gnome-session-save".
Цей сценарій чудово працює для мене на Xubuntu. Це більш-менш настільно-агностичний і теоретично також повинен підтримувати Unity. З оригінальної публікації в блозі Арнона Вайнберга :
Зберегти та відновити сеанс GNOME
Цей скрипт використовується для збереження та відновлення сеансу на робочому столі.
Чому саме цей сценарій?
Деякі менеджери настільних ПК пропонують деякі функції управління сеансами. У розділі GNOME можливо запустити властивості gnome-session-вручну та ввімкнути "Автоматично запам'ятовувати запущені програми під час виходу". Однак, деякі реалізації GNOME (особливо Ubuntu), схоже, деэффазують або знецінюють цю функцію на користь функції Suspend або Hibernate.
Функція автоматичного зберігання та призупинення сеансу як автоматизована, але обмежена збереженням / відновленням сеансів лише при чистому виході / вході.
Я використовую цей сценарій, тому що іноді мені просто потрібно перезавантажити, а іноді мені подобається відновити сеанс до попереднього стану.
Як користуватись:
Завантажте скрипт , помістіть його на свій PATH та не забудьте дати йому виконуючі права.
Щоб зберегти поточний сеанс:
session save
Щоб відновити збережений сеанс:
session restore
Установка на Ubuntu
Інструкції з установки, наведені в публікації блогу, дійсні для Fedora. На Ubuntu вам доведеться встановити такі залежності:
sudo apt-get install perl wmctrl xdotool x11-utils
Перевірте розділ "Подробиці" оригінальної публікації блогу, щоб дізнатися більше про різні рівні відновлення сеансу.
Оновлення: інший користувач повідомив, що сценарій працює тільки з першим рядком #!/usr/bin/perl
замість #!/bin/perl
.
dconf write /org/gnome/gnome-session/auto-save-session true
Потрібно включити це для вас.
Я написав невеликий інструмент бібліотеки / командного рядка, який дозволяє зберігати та відновлювати сеанси та підтримує різні налаштування моніторів, а також віртуальний робочий стіл.
npm install -g linux-window-session-manager
Збережіть поточний сеанс у ~ / .lwsm / sessionData / DEFAULT.json
lwsm save
Збережіть поточний сеанс у ~ / .lwsm / sessionData / my-session.json
lwsm save my-session
Відновіть сеанс з ~ / .lwsm / sessionData / DEFAULT.json
lwsm restore
Відновити сеанс з ~ / .lwsm / sessionData / my-session.json
lwsm restore my-session
Граціозно закрийте всі запущені програми перед початком сеансу
lwsm restore --closeAllOpenWindows
Перевірте це: https://github.com/johannesjo/linux-window-session-manager