有没有一种方法可以在Unity中保存当前会话(应用程序+ 桌面中的Windows组织)并在需要时加载它?
有没有一种方法可以在Unity中保存当前会话(应用程序+ 桌面中的Windows组织)并在需要时加载它?
Answers:
否-如您所描述,当前在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-editor键:
/apps/gnome-session/options/auto_save_session = true
gnome-session-save
啊 我收到“找不到命令”。而且我在存储库中找不到它。“无法找到软件包gnome-session-save”。
这个脚本对我在Xubuntu上非常有用。它或多或少与桌面无关,并且理论上也应该支持Unity。来自Arnon Weinberg的原始博客文章:
GNOME会话保存和还原
该脚本用于保存和还原桌面会话。
为什么使用此脚本?
一些桌面管理器确实提供了一些会话管理功能。在GNOME下,可以手动运行gnome-session-properties并打开“注销时自动记住正在运行的应用程序”。但是,某些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