出于某种原因,我的 Ubuntu 10.04 PC 上的鼠标指针在计算机从挂起状态唤醒后消失了。那台 PC 缺少键盘,因此我可以通过 ssh 登录并发出以下命令来解决此问题:
sudo service gdm restart
Run Code Online (Sandbox Code Playgroud)
...然而,这基本上会重新启动 gnome,并会关闭所有可能正在运行的应用程序。
解决这个问题的另一种方法是将那台PC设置为synergy从机——然后将鼠标从synergy主桌面移动到从桌面;这会带回鼠标指针。
是否可以运行一些命令,这样我就不需要重新启动 X(或 gdm),但我会有效地重新启动鼠标指针代码?然后我可以把它放到桌面上的脚本中,并且能够在挂起后恢复鼠标指针而无需第二台机器(即使鼠标指针不可见,图标上的鼠标悬停仍然呈现,所以我可以定位这个图标)。
本质上,我正在寻找一个 GNU/Linux 工具,它可以递归地遍历两个目录,找到文件更改/添加/删除;对于所有更改的文件,输出差异。这已经可以通过diff有效地用于文本文件来完成,但不能用于大型二进制文件 - 我还希望包含在最终补丁中的二进制文件之间有效的“差异”(我收集,这被称为二进制增量压缩 - 维基百科作为子集的增量编码-维基百科)。或者,换句话说,执行此“愿望清单”评论中描述的操作(来自CommandLineSyntax - xdelta - Google Project Hosting):
如果 xdelta 支持多个文件修补,那就太好了。就像是:
Run Code Online (Sandbox Code Playgroud)xdelta3 -r /path/folder1 /path/folder2 >allfilesrecursivepatch.xdelta用于递归比较文件夹 1 和文件夹 2 上的所有文件并为所有文件创建单个补丁文件。和:
Run Code Online (Sandbox Code Playgroud)xdelta3 -r -d /path/folder1 <allfilesrecursivepatch.xdelta用于在文件夹 1 中包含的所有文件上应用补丁
这个工具不存在,从Issue 21 - xdelta - Recursive directory diff support - Google Project Hosting判断),虽然有解决办法:问题页面有几个关于脚本包装器的建议,但我宁愿保持独立一个工具。
对我来说最重要的是修补“实时”文件系统目录部分,如上所示,由于我的预期用例 - 下面更详细地描述,并用bash使用git.
我希望能够在廉价的 Linux 主机/webfarm 上更新静态网站,它只允许rsync传输速度相当低的FTP 传输(所以没有等等),并且只允许 PHP 脚本执行。通常我需要从本地/客户端/主页同步到服务器/网络主机,但当然我不想每次更新页面时都上传 200 MB:)
我在看/usr/share/icons/DMZ-White/cursors,有:
$ tree -s /usr/share/icons/DMZ-White/
/usr/share/icons/DMZ-White/
??? [ 4096] cursors
? ??? [ 14] 00008160000006810000408080010102 -> v_double_arrow
...
? ??? [ 5] 9d800788f1b08800ae810202380a0822 -> hand2
? ??? [ 8] arrow -> left_ptr
? ??? [ 15776] bd_double_arrow
? ??? [ 15776] bottom_left_corner
? ??? [ 15776] bottom_right_corner
? ??? [ 15776] bottom_side
...
Run Code Online (Sandbox Code Playgroud)
...一堆没有扩展名的文件,GIMP无法打开。
是否有可以打开这些文件的编辑器 - 或者至少是类似的转换器.png?我可以注意到 ImageMagickdisplay也无法打开这些文件。
好吧 - 只是因为我在网络上的其他任何地方都找不到这个问题 - 是否有类似 Unity 界面的“磁盘安装程序”小程序,或者有其他选择吗?
(“替代方案”我的意思是:我不介意双击一个图标,并将曾经是工具栏小程序的东西作为一个单独的窗口启动;只要不必处理mount命令行、文件系统参数和这样的。)
我想这是一个相关的问题,我可以在 Unity 中使用 GNOME 小程序吗?(由@Jorge Castro的建议感动)
我想stickynotes_applet在 Unity 中使用.. 现在在 Gnome 中,这个小程序被添加到一个栏中,然后我必须点击它来创建一个新笔记,我可以调用首选项让笔记粘在桌面上 - 这是我所需要的。
显然,正如这里提到的,在 Unity 中直接使用这个小程序是不可能的;但基本上,我需要做的就是打开“首选项”窗口(以便使笔记保持不变),并以某种方式发出新笔记的命令(否则将通过单击中的小程序图标来执行)侏儒酒吧)。
我试过运行 ' /usr/lib/gnome-applets/stickynotes_applet' 并且看起来它运行了,虽然没有显示小程序图标(这是预期的),也没有任何其他窗口(我希望它会显示 :) )。
所以我在徘徊 - 考虑到这个小程序(似乎)没有任何与桌面相关的特殊内容 - 是否有一种命令行方式来基本上运行这个小程序,向它发出“显示首选项”命令,并发出一个新的注释在 Unity 环境中命令它(目前我可以tomboy从命令行调用它并且它可以工作 - 但它的窗口对于我的口味来说太笨重了)?
(和额外的问题 - 在经典 Gnome 中,您将如何仅从命令行启动与小程序相关的窗口?)
桌面集成对我来说并不重要 - 我很乐意从命令行手动运行它,只要我得到留在桌面上的小型紧凑笔记(只要进程处于活动状态)..
感谢您的任何评论,
干杯!
我想这个问题与如何配置 dbus 以允许 ssh-user 挂起服务器几乎相同?; 除了我想更好地制定它。
假设我有一个不间断运行的 Ubuntu 服务器,我们称之为MyServer. 假设然后,我在与 相同的本地网络上有另一台 PC MyServer,我们称之为MyLocalPC。
MyLocalPC然后保持挂起状态,除非通过wakeonlanby打开它MyServer。这部分过程对我来说非常适合:我可以通过sshto登录MyServer,在MyServerssh 提示下我可以发出wakeonlan,然后MyLocalPC醒来 - 很棒。
但是,一旦我完成了MyLocalPC,我想再次将其置于暂停状态。问题如下 - 如果我MyLocalPC首先通过ssh以下方式ssh 进入,我可以轻松地将机器挂起:
[MyServer]$ ssh MyLocalPC
[MyLocalPC]$ dbus-send --session --dest=org.freedesktop.PowerManagement --type=method_call --print-reply --reply-timeout=2000 /org/freedesktop/PowerManagement org.freedesktop.PowerManagement.Suspend
Run Code Online (Sandbox Code Playgroud)
这将暂停MyLocalPC- 但也会ssh正确阻止退出,最终sshto最终被MyServer冻结。我试图变得棘手并发出这样的问题:
[MyServer]$ ssh MyLocalPC "dbus-send --session --dest=org.freedesktop.PowerManagement --type=method_call …Run Code Online (Sandbox Code Playgroud) 我经常需要截取比当前显示的桌面大的窗口。我在 Ubuntu 11.04 上,gnome-about说版本:2.32.1;compiz --versionCompiz 0.9.4.0 说——我有四个虚拟桌面/工作区,它们是这样安排的:


上面的图像是通过移动到每个单独的工作区,并通过 PrintScreen 键(即gnome-screenshot. (我知道有更好的获取firefox镜头的方法,例如“页面保护程序”插件 - 以上只是作为通用超大窗口的示例)。
编辑:我显然在这里使用了错误的命名法(通过xorg找到- 获取当前虚拟桌面 - 号码/名称/标签/id? - Unix 和 Linux) - 事实证明,在上面的例子中,我仍然只有一个工作区; 相反,改变的是视口 - 这是wmctrl -d每个“虚拟桌面”上显示的内容:
$ wmctrl -d 0 * DG:2048x1200 VP:0,0 WA:0,1 1024x598 工作区 1 $ wmctrl -d 0 * DG:2048x1200 VP:0,600 WA:0,1 1024x598 工作区 1 $ wmctrl -d 0 * DG:2048x1200 VP:1024,0 WA:0,1 1024x598 工作区 1 $ wmctrl -d …
我在 Ubuntu 18.04 上,这里的默认 VLC 是:
$ vlc --version
VLC media player 3.0.4 Vetinari (revision 3.0.4-0-gf615db6332)
...
$ which vlc
/usr/bin/vlc
Run Code Online (Sandbox Code Playgroud)
我想保留这个版本,然后每晚通过snap. 所以我试过:
$ sudo snap install --channel=edge vlc
vlc (edge) 4.0.0-dev-5939-gee31d91 from VideoLAN? installed
$ snap list
Name Version Rev Tracking Publisher Notes
core 16-2.36.3 6130 stable canonical? core
...
vlc 4.0.0-dev-5939-gee31d91 767 edge videolan? -
Run Code Online (Sandbox Code Playgroud)
现在我知道我安装了这个开发版本vlc,它在我的系统中:
$ ls -la /snap/bin/
total 8
drwxr-xr-x 2 root root 4096 Jan 4 09:25 .
drwxr-xr-x 13 root …Run Code Online (Sandbox Code Playgroud) 我真的很想恢复旧的 Gnome 行为,您可以右键单击,将鼠标悬停在“打开方式”上,然后会打开一个包含应用程序列表的子菜单 - 如下所示:
上下文菜单中有多个“打开方式”应用程序意味着可以使用 来完成nautilus-actions,这些应用程序现在已重命名,并且我按照18.04 中的 Nautilus-actions中的方式安装了;现在我可以跑了fma-config-tool。
我找到了一些关于 nautilus-actions 如何工作的通用解释,例如:
...但我无法真正弄清楚,我需要做什么,所以我可以添加额外的条目,例如“打开方式...”,当鼠标悬停时,会给我一个子菜单,其中包含与屏幕截图中相同的应用程序上面 - 取决于所选的文件类型和右键单击的类型。有谁知道如何做到这一点?
我知道 Ubuntu 18.04/Gnome 3 中有这个功能:
基本上,当您按下左 Ctrl 键时,您可以获得如下所示的视觉指示:
有没有办法在每次鼠标左键单击时执行类似的操作(并且可能使用不同的动画,对于鼠标右键单击)?
我想尝试rsh(或rshell?) - 旧的,不安全的远程登录方式。
在我的 Ubuntu 11.04 上,事实证明rsh存在一个命令:
$ which rsh
/usr/bin/rsh
Run Code Online (Sandbox Code Playgroud)
...然而,事实证明它只是一个符号链接ssh:
$ ls -la `which rsh`
lrwxrwxrwx 1 root root 21 2011-03-25 16:07 /usr/bin/rsh -> /etc/alternatives/rsh
$ ls -la $(readlink -f `which rsh`)
-rwxr-xr-x 1 root root 391580 2011-04-02 12:16 /usr/bin/ssh
Run Code Online (Sandbox Code Playgroud)
这个“旧”是否rsh存在于 Ubuntu 存储库中 - 如果是,我该如何安装它?此外,rsh还分为客户端和服务器包 - 如果是,那是哪些包?