小编Naf*_*Kay的帖子

如何通过shell脚本注入击键?

我正在尝试将击键注入输入守护程序,以模拟从 Bash 脚本输入。这可能吗,如果可以,我该如何实现?

linux keyboard input shell-script

27
推荐指数
4
解决办法
7万
查看次数

确定 Linux 内核恐慌的原因

我正在运行 Ubuntu 12.04 衍生版 (amd64),最近我遇到了非常奇怪的问题。出乎意料的是,X 似乎会完全冻结一段时间(1-3 分钟?),然后系统将重新启动。该系统已超频,但在 Windows 中经过验证非常稳定,这让我相信我遇到了内核恐慌或我的模块之一出现问题。即使在 Linux 中,我也可以运行 LINPACK 并且不会看到崩溃,尽管在 CPU 上施加了可笑的负载。崩溃似乎是随机发生的,即使机器闲置时也是如此。

如何调试导致系统崩溃的原因?

我预感它可能是专有的 NVIDIA 驱动程序,我一直还原到驱动程序的稳定版本 304 版本,但我仍然遇到崩溃。

任何人都可以引导我完成崩溃后的良好调试过程吗?我很乐意启动拇指驱动器并发布我所有的崩溃后配置文件,我只是不确定它们会是什么。我怎样才能找出是什么导致了我的系统崩溃?

这是一堆日志,通常是罪魁祸首。

.xsession 错误http : //pastebin.com/EEDtVkVm

/var/log/Xorg.0.loghttp://pastebin.com/ftsG5VAn

/var/log/kern.loghttp://pastebin.com/Hsy7jcHZ

在/ var / log / syslog的http://pastebin.com/9Fkp3FMz

我什至似乎根本找不到坠机记录。

触发崩溃并不是那么简单,当 GPU 试图一次绘制多个东西时,它似乎会发生。如果我全屏播放 YouTube 视频并让它重复一段时间或滚动浏览大量 GIF 并弹出 Skype 通知,有时它会崩溃。在这个问题上完全摸不着头脑。

CPU 超频到 4.8GHz,但它完全稳定,并且在昨天的 LINPACK 运行和 9 小时的 Prime95 中幸存下来,没有发生一次崩溃。

更新

我已经为我的内核版本 3.2.0-35安装了kdumpcrashlinux-crashdump,以及内核调试符号。当我apport-unpack在崩溃的内核文件上运行,然后crashVmCore故障转储上运行时,我看到的是:

      KERNEL: /usr/lib/debug/boot/vmlinux-3.2.0-35-generic
    DUMPFILE: …
Run Code Online (Sandbox Code Playgroud)

kernel kernel-panic kernel-modules crash

27
推荐指数
2
解决办法
14万
查看次数

LXC 容器内外的用户权限?

我在我的服务器上的 Docker LXC 容器内运行一些服务,我开始真正用它们做一些严肃的事情。

我不清楚的一件事是用户权限在容器内部和外部如何工作。例如,如果我在容器中运行 MySQL 并将其数据目录设置为/dataDocker 卷,那么容器内外的权限如何影响访问策略?

显然,这个想法是在容器中以自己的用户身份运行 MySQL(即mysql:mysql),并赋予它对该目录的读写权限。我认为这将是相当简单的,只是chmoding 目录等。但这如何在容器之外工作?现在我有了这个名为“数据”的 Docker 共享卷,我该如何管理对它的访问控制?

我特别希望能够在 Docker 容器之外运行一个非特权用户,该用户将定期访问 MySQL 共享卷并备份数据。

如何设置权限、用户和组,以便主机上的特定用户可以读/写 Docker 共享卷中的文件和文件夹?

users permissions lxc docker

27
推荐指数
1
解决办法
1万
查看次数

如何在 PulseAudio 中创建虚拟输出?

我需要在 PulseAudio 中创建一个虚拟输出,以便能够从特定源捕获和流式传输音频。

我知道可以像这样将特定应用程序的输出重新路由到给定的输出设备,使用pavucontrol

我正在寻找向“输出设备”添加另一个虚拟输出:

这可能吗,如果可以,我该怎么做?

pulseaudio

27
推荐指数
5
解决办法
6万
查看次数

如何更改登录 shell 中显示的内容?

我越来越熟悉通过提示 ( .bashrc)调整 shell 中的内容,但我现在正在尝试更改我第一次登录时显示的初始内容。在我的 EC2 实例上,这就是我看到的我登录:

         __|  __|_  )  Fedora 8
         _|  (     /    32-bit
        ___|\___|___|


  Welcome to: 

    Wowza Media Server 2 for Amazon EC2

      Version: 2.0.0.08
Run Code Online (Sandbox Code Playgroud)

在我的家用 Mint 计算机上,这是我登录时看到的内容:

Welcome to Linux Mint 11 Katya (GNU/Linux 2.6.38-8-generic x86_64)

Welcome to Linux Mint
* Documentation:  http://www.linuxmint.com

Last login: Tue Jun 21 17:44:05 2011
Run Code Online (Sandbox Code Playgroud)

这是在哪里定义的?我怎样才能为一些疯狂的 ASCII 艺术ACTION调整它?

bash login prompt profile

26
推荐指数
3
解决办法
6万
查看次数

管道 STDERR 与 STDOUT

根据“ Linux: The Complete Reference 6th Edition ”(第 44 页),您只能使用|&重定向符号通过管道传输 STDERR 。

我写了一个非常简单的脚本来测试这个:

#!/bin/bash
echo "Normal Text."
echo "Error Text." >&2
Run Code Online (Sandbox Code Playgroud)

我像这样运行这个脚本:

./script.sh |& sed 's:^:\t:'
Run Code Online (Sandbox Code Playgroud)

据推测,只有打印到 STDERR 的行才会缩进。但是,正如我所见,它实际上并不是这样工作的:

    Normal Text.
    Error Text. 
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?

bash pipe io-redirection

26
推荐指数
2
解决办法
3万
查看次数

通过中间主机安全地隧道端口

我希望将 VNC 的端口路由回我的家。我必须跳过单个主机才能跳转到我的实际工作机器。

  • sittinghere 将是我本地的家用机器
  • hopper 将通过我需要做的中间跳跃
  • overthere 将是远程工作机器

我可以这样做以通过 SSH 连接到我的工作机器:

ssh -t hopper "ssh -t overthere"
Run Code Online (Sandbox Code Playgroud)

我想使用端口转发将远程端口 5900 转发overthere到本地端口 5900 上sittinghere。但是,我希望能够在不公开绑定到端口的情况下执行此操作,hopper因为该机器上的任何人都可以连接到我的 VNC 连接。

有什么方法可以让我安全地将该端口转发到我的本地机器,而没有人能够访问它hopper

ssh port-forwarding

25
推荐指数
2
解决办法
5万
查看次数

使用特定的密钥加密和签名

我有一个 OpenPGP 智能卡密钥 (YubiKey NEO) 以及安装在我的 GnuPG 密钥环中的本地密钥。

我想用卡的密钥加密和签署文件,而不是密钥环中的密钥。如何指定我想用什么密钥签名?

如果我的文件系统密钥 id 是DEADBEEF并且我的智能卡密钥是DEADBEE5,我该如何使用该密钥进行签名?

gpg

25
推荐指数
2
解决办法
3万
查看次数

sudo 打算如何使用?

我之前尝试过配置sudo,但我没有太多运气。它与 有什么不同su -l -c "x"?似乎通过配置文件,可以使用户只能访问某些命令等。我一直认为sudo这是将命令作为另一个用户或组的一种方式。由于像 Ubuntu 和 Mint 这样的发行版本质上通过密码让主用户轻松访问 root 来简化它,因此我不确定它的预期用途是什么。

如何将用户添加到 sudo 文件,授予他们仅在 root 下运行某些命令的权限?我也不想打开任何安全漏洞。

root sudo

24
推荐指数
2
解决办法
1万
查看次数

在 shell 提示中缩写当前目录?

vim 有一个非常好的功能,当它们有点长时,它会在其路径中使用:

在此处输入图片说明

它缩写了顶部选项卡中文档的路径。有没有办法做类似的事情,所以我的 bash 提示看起来不像这样:

rfkrocktk@work-laptop ~/Documents/Projects/Work/maventest/src/main/java/com/tkassembled/ $ 
Run Code Online (Sandbox Code Playgroud)

bash prompt

24
推荐指数
4
解决办法
1万
查看次数