小编Mar*_*ter的帖子

bash 命令行编辑(Emacs 快捷键)

在 bash 命令行上编写命令时,我可以使用CTRL+w向后ALT+d删除单词,或向前删除单词。

问题是,这两个快捷方式并不完全互补:CTRL+w删除最多一个空格的所有内容,而ALT+d最多删除任何非字母字符(即停在/

是否有充当ALT+d,但向后的快捷方式?

这样当我在最后/etc/hostname 按下快捷方式时,我最终会得到/etc/.

command-line bash emacs

3
推荐指数
1
解决办法
445
查看次数

在给定时间提取git存储库的快照

我已经克隆了一个 xorg git 存储库:

git clone git://anonscm.debian.org/pkg-xorg/driver/xserver-xorg-video-intel
Run Code Online (Sandbox Code Playgroud)

我需要在提交 45c09bfe58c37bbf7965af25bdd4fa5c37c0908f 后提取所有文件

我知道如何提取指定版本的一个文件,即

git show 45c09bfe58c37bbf7965af25bdd4fa5c37c0908f:src/intel_driver.h > intel_driver.h
Run Code Online (Sandbox Code Playgroud)

但是如何提取整个结构(所有文件)?

git

3
推荐指数
1
解决办法
2281
查看次数

为什么 colordiff 不适用于标准输入?

我有一个文件和一个来自管道的输入。它们是相同的。那么为什么colordiff报告差异?:

echo "123" | colordiff <(echo "123") -
1d0
< 123
Run Code Online (Sandbox Code Playgroud)

看起来这是导致问题的颜色差异。使用纯差异,一切正常。

pipe colordiff

3
推荐指数
1
解决办法
436
查看次数

将拆分文件映射到 /dev/loop0

我有一个iscsi2TB 大的磁盘。我每周都会备份那个磁盘。备份脚本将整个 iSCSI 磁盘的映像复制到我的 NFS 上的文件中。不幸的是,它不会将图像一并复制,而是将其拆分为大小为 1TB 的块。所以就我而言,我有两个 1TB 文件(加上一个配置文件):

-r--r----- 1 root root 1099511627776 May 10 02:12 Backup-LUN-itmp-lun-0.000
-r--r----- 1 root root 1099500093440 May 10 03:50 Backup-LUN-itmp-lun-0.001
-rw-r--r-- 1 root root           251 May 10 03:50 Backup-LUN-itmp-lun-0.conf
Run Code Online (Sandbox Code Playgroud)

现在我需要访问我的备份。通常,如果它是一个文件,我会将其映射到/dev/loop0然后作为普通磁盘挂载。但就我而言,我无法将两个文件映射到/dev/loop0. 一种选择是对这两个文件进行分类以创建一个大文件,但我没有额外的 2TB 空间,而且无论如何这都不是一个好的解决方案。

有人可以提出解决方案吗?

更新

我曾按照 Andreas Wiese 的建议尝试将 dmsetup 与线性目标一起使用,但出现以下错误。

dmsetup create my-backup << EOF
> 0 2147483648 linear Backup-LUN-itmp-lun-0.000 0
> 2147483648 2147461120 linear Backup-LUN-itmp-lun-0.001 0
> EOF
device-mapper: reload ioctl on my-backup failed: …
Run Code Online (Sandbox Code Playgroud)

mount filenames files loop-device

3
推荐指数
1
解决办法
1547
查看次数

xscreensaver 记录不存在的登录尝试

我正在使用 xscreensaver 来锁定我的屏幕。当屏幕锁定时,任何鼠标移动都会弹出登录对话框。超时后,登录失败并显示消息“通过 PAM 进行身份验证超时”

问题是,由于没有人尝试登录(即没有人输入密码并用回车确认),这不应被视为登录尝试。因此不应如此记录(根本不应记录)

我经常移动鼠标只是为了确保我的屏幕被锁定。然后,我的身份验证日志中充斥着无用的日志,这使得其他重要信息更难以查看。

有没有什么办法解决这一问题 ?

我正在使用从 Debian Wheezy 中的软件包安装的 xscreensaver 5.15-3。如果这个问题可以解决,我很乐意重新编译我的包。

更新:

我注意到,xscreensaver正在使用它自己的pam配置文件:/etc/pam.d/xscreensaver. 有没有办法修改pam文件来解决这个问题?也许在密码为空时忽略“登录尝试”?

login logs xscreensaver

3
推荐指数
1
解决办法
2019
查看次数

在管道中使用“ifne”——运行多个命令

在我的脚本中,我使用的ifnemoreutils包中的实用程序。该行可以简化为以下内容:

printf "asdf\n" | ifne cat - && echo "stream not empty"
Run Code Online (Sandbox Code Playgroud)

ifne仅当流非空时才执行。但是如何使第二个命令 ( echo "stream not empty") 也仅在流非空时执行?例如,如何更改以下命令以使其不打印“stream not empty”?

printf "" | ifne cat - && echo "stream not empty"
Run Code Online (Sandbox Code Playgroud)

周围catecho用括号生成语法错误:

printf "" | ifne (cat - && echo "stream not empty")
Run Code Online (Sandbox Code Playgroud)

仅当流非空时如何执行最后一个命令?

bash pipe shell-script

3
推荐指数
1
解决办法
2151
查看次数

Postfix错误:尚未授权发送邮件

我正在为我的域专用后缀的服务器mydomain.com,在服务器111.111.111.111(IP和域名消毒隐私的原因)

我已经向info@example.com服务器发送了一封电子邮件222.222.222.222。该消息被推迟,在我的 postfix 日志中,我可以看到以下错误:

postfix/smtp  9D055EA: host mail1.example.com[222.222.222.222] said: 
451-111.111.111.111 is not yet authorized to deliver mail from 451 
<martin@mydomain.com> to <info@example.com>. Please try later. (in 
reply to RCPT TO command)
Run Code Online (Sandbox Code Playgroud)

我的域设置了反向 DNS 记录,并且我正在使用 SPF 记录。两者都配置正确,我可以正常发送电子邮件,这是我看到这些错误的第一种情况。

这让我相信,这个错误是由目标服务器上的错误配置引起的。但由于我不确定这些错误是什么意思,我希望有人能解释一下。

smtp email postfix

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

每次重启后系统时钟关闭一小时

每次我启动我的笔记本电脑时,时钟都会差一个小时。我必须跑去ntpdate修理它。下次我重新启动笔记本电脑时,它将再次关闭。

我的时区设置正确。

我正在使用 Debian Wheezy

知道可能是什么原因吗?

time timezone clock

3
推荐指数
1
解决办法
4765
查看次数

在控制台中显示电源管理

在控制台(即不在 Gnome 或 KDE 中)时,显示器将在不活动的情况下自动关闭。在我看来,设置为大约 30 分钟。这种电源管理完全独立于 X 服务器,并且在没有安装 X 服务器时确实有效。它似乎完全独立于用户空间工作。

它可能是由内核完成的吗?

有人可以解释一下这个电源管理来自哪里以及如何配置它(即更改超时等)。

我正在使用 Debian Wheezy

linux power-management console linux-kernel

3
推荐指数
1
解决办法
1853
查看次数

rlwrap -z pipeto:通过寻呼机管道输出

我正在使用rlwrap星号为提示着色CLI

rlwrap -s 99999 -a -pRED /usr/sbin/asterisk -r
Run Code Online (Sandbox Code Playgroud)

我读到man rlwrap我也可以使用

rlwrap -z pipeto
Run Code Online (Sandbox Code Playgroud)

通过着色器管道输出。我有grc像这样工作的着色器:

cat foo | grcat <conf_file>
Run Code Online (Sandbox Code Playgroud)

上面的示例foo使用来自 的规则着色<conf_file>

我怎样才能使用rlwrap -z pipeto颜色从rlwrapthrough输出grcat

command-line colors pipe grc

3
推荐指数
1
解决办法
572
查看次数