我试图找到check_dns在nagios'commands.cfg文件中定义的位置,尽管有很多文件。
我知道我可以运行类似find / -name "command.cfg" -exec grep check_dns {} \;搜索匹配的东西,但如果可能的话,我想使用locate它,因为它是一个索引副本,而且速度要快得多。
当我运行时,locate commands.cfg我得到以下结果:
/etc/nagios3/commands.cfg
/etc/nagiosgrapher/nagios3/commands.cfg
/usr/share/doc/nagios3-common/examples/commands.cfg
/usr/share/doc/nagios3-common/examples/template-object/commands.cfg
/usr/share/nagiosgrapher/debian/cfg/nagios3/commands.cfg
/var/lib/ucf/cache/:etc:nagiosgrapher:nagios3:commands.cfg
Run Code Online (Sandbox Code Playgroud)
是否可以运行 locate 并将其通过管道传递给内联命令之类的xargs,以便我可以获得grep每个结果?我意识到这可以通过 for 循环来完成,但我希望在这里找到一些 bash-fu / shell-fu,而不是如何针对这种特定情况进行操作。
我正在查看名为 DSpace 的 Tomcat 6 web 应用程序的文档,特别是关于在标准端口上运行运行 DSpace(http:// 为 80,https:// 为 443)
我正在尝试使用“方法 1”,它使用 iptables 将流量从端口 80 和 443 重定向到 8080 和 8443,以便摆脱:8080url 中的 。
这些是文档给出的命令:
/sbin/iptables -t nat -I PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-ports 8080
/sbin/iptables -t nat -A OUTPUT -p tcp -d _[server_ip_address|server_ip_address]_ --dport 80 -j REDIRECT --to-port 8080
/sbin/iptables -t nat -I PREROUTING -p tcp --destination-port 443 -j REDIRECT --to-ports 8443
Run Code Online (Sandbox Code Playgroud)
我认为第二行需要更改一些内容,特别是该部分-d _[server_ip_address|server_ip_address]_- 但我不确定是什么。我已经阅读了该man页面,iptables …
我有第二个监视器,我想将其用于基于文本的调试日志和/或控制台。我不想把它作为我的 GUI/“桌面”/主系统的一部分。
我将这个显示器连接到一个没有太多处理能力的旧 linux 机器上。当它启动时,它会在login:提示下准备就绪。
它已连接到 LAN,因此我可以通过 SSH 连接到它。我知道我可以通过运行类似的东西来写到屏幕上ssh root@ancient echo test \> /dev/tty0
我喜欢使用命名管道进行调试,基本上是创建一个命名管道,mkfifo然后tail -f在从其他命令/脚本/等向其写入数据的同时使用它。
我知道我可以通过诸如此类的东西访问ssh, tail, netcat ( nc) 和重定向/dev/tty0- 但我无法完全弄清楚如何雄辩地将它们组合在一起。我确实看到了这个:我可以通过 netcat 管道/重定向控制台应用程序,以便它可以远程使用吗?
使用类似的东西ssh root@ancient echo test \> /dev/tty0并为每个发送的日志项目创建一个新连接似乎很hackish 。
如果数据不是作为纯文本通过网络发送的,一个奖励是,但我认为如果它使事情变得非常缓慢或造成过多的开销或复杂性,则该标准不是强制性的。
我过去曾这样做过,但在我看来,即使在115,200发送几百行代码的最大波特率下,与通过网络发送数据相比,它似乎也“滞后”。我知道115k是旧的“调制解调器技术”,所以我只是想知道这种直接(尽管是串行)连接的这种比预期慢的体验是否正常。
我看到 David Braben 创建了一个 25 美元的 U 盘,可以运行 linux。查看网站http://www.raspberrypi.org/
raspberry-pi-stock-pcb-480.jpg http://img526.imageshack.us/img526/2531/raspberrypistockpcb480.jpg
那还不可用 - 那么我可以连接到网络和以太网端口的低功耗 *nix 设备是什么?不必是安全的或任何东西。最好没有风扇的东西也很好
在 bash 中,如果我运行此命令:
echo aaaaaaa
Run Code Online (Sandbox Code Playgroud)
我明白了aaaaaaa(废话)
但是如果我输入
^a^b
Run Code Online (Sandbox Code Playgroud)
我结束了 baaaaaa
我会输入什么来结束bbbbbbb?
我正在使用厨师刀 ec2 工具,它需要加载的 SSH 密钥的名称(在 Amazon EC2 控制面板中创建)
它使用名称来引用密钥对对我来说似乎很奇怪- 因为该名称是在 ec2 控制面板中创建的:
图片.png http://img843.imageshack.us/img843/4236/pictureiy.png
当我下载文件时,我只是在获取mykey.pem文件。这是否以某种方式包含编码的密钥对名称?此密钥对的名称在命令行中似乎不可见:
$ ssh-add -L
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQE69PeuHFtO[truncated]== /Users/me/mykey.pem
$ ssh-add -l
2048 b4:45:70:23:b1:f3:3b:01:11:23:45:67:89:0a:bc:de /Users/me/mykey.pem (RSA)
Run Code Online (Sandbox Code Playgroud)
我希望这些问题是有道理的 - 我很乐意详细说明任何灰色区域。
我已经设置了一个新的 ec2 ubuntu 框并安装了 apache 和 php5。默认情况下,您使用ubuntu具有sudo权限的用户登录到该框。
我相信 apache 运行为rootphp5 运行为www-data.
我想我希望所有文件/var/www都被 chown'ed www-data:www-data,文件夹设置为 755,文件设置为 644 - 除非有问题。
事情像这样运行良好,但我的问题是,当我rsync从笔记本电脑文件到服务器时,它会更改它们的所有权(并添加新文件)为ubuntu:admin
我已经阅读了rsync手册并搜索了谷歌,我看到了这样的语法:
rsync -avzcO (source) (destination) --owner=www-data --group=www-data
Run Code Online (Sandbox Code Playgroud)
但是,如果 rsync 以超级用户身份执行,则似乎--ownerand--group不接受参数,而是用于强制远程文件与本地文件系统具有相同的所有者。
因此,我还没有找到使用 rsync 的解决方案来在 rsync 期间设置远程用户和文件组。
我究竟做错了什么?
想法:
ubuntu:admin?www-data用户rsync但这似乎不是一个好主意不久前,我看到了一篇关于使用fifo?
我以前没有使用过,也找不到我的文章链接。我该如何设置?
我想打开两个控制台进行日志记录,并让一个显示从另一个控制台发送的日志消息(实时)。
我正在使用此命令来获取我最后输入的命令:
history | cut -c 8- | tail -n 2 | head -n 1
Run Code Online (Sandbox Code Playgroud)
它在 bash 中运行得很好,删除了行号,但是我遇到了一个问题,(呃,烦恼,因为我只想要命令),我正在将它传递给xsel剪贴板管理器:
它还抓住了尾随的新行/回车...
我知道在一些 shell 中你可以使用:
echo "text \c"
Run Code Online (Sandbox Code Playgroud)
我不确定如何将其纳入其中bash。
最容易即时输入的解决方案的额外积分:)
在某些网络上,我可以用来nslookup解析指向私有 IP 地址的域名:
@work> nslookup my192.ddns.net
Server: 10.1.2.3
Address: 10.1.2.3#53
Non-authoritative answer:
Name: my192.ddns.net
Address: 192.168.20.20
Run Code Online (Sandbox Code Playgroud)
但是,在我的家庭网络上,同样的查询失败了:
@home> nslookup my192.ddns.net
Server: 192.168.0.1
Address: 192.168.0.1#53
Non-authoritative answer:
*** Can't find my192.ddns.net: No answer
Run Code Online (Sandbox Code Playgroud)
我发现如果我更改 A 记录以my192.ddns.net使其指向公共 IP 范围,它将正常工作:
@home> nslookup my192.ddns.net
Server: 192.168.0.1
Address: 192.168.0.1#53
Non-authoritative answer:
Name: my192.ddns.net
Address: 172.217.12.238
Run Code Online (Sandbox Code Playgroud)
在家里,如果我为 nslookup 指定 DNS 服务器,或者nslookup按预期将我的笔记本电脑的 DNS 服务器设置为 Google 的工作:
@home> nslookup my192.ddns.net 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: my192.ddns.net
Address: …Run Code Online (Sandbox Code Playgroud) 我正在使用 ssmtp 包通过 g-mail 发送电子邮件。一切都工作正常 - 唯一奇怪的是,如果我通过命令行发送邮件,“收件人字段”很时髦。
ssmtp me@domain.com < message.txt
Run Code Online (Sandbox Code Playgroud)
基本上,“收件人”字段只会显示“未公开的收件人”
我读到您可以设置包含“收件人:”字段的标头,但是当我mail在其他系统上使用该命令时,这似乎过于复杂,它会自动执行此操作。
有没有一种更简单的方法可以通过命令行使用ssmtp- 发送邮件,但无需更改上述语法或指定其他参数?(可能是一个配置文件,用于将“收件人”地址设置为指定的任何地址。
linux ×5
bash ×3
ubuntu ×3
pipe ×2
chown ×1
command-line ×1
dns ×1
dnsmasq ×1
echo ×1
email ×1
grep ×1
hardware ×1
iptables ×1
locate ×1
logs ×1
netcat ×1
nslookup ×1
openwrt ×1
permissions ×1
resolution ×1
rsync ×1
scripting ×1
security ×1
shell-script ×1
ssh ×1
ssh-agent ×1
ssmtp ×1
terminal ×1
tomcat ×1
zsh ×1