Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答


3
使用ad hoc命令列出主机或组的所有Ansible变量?
Ansible变量来自多种来源。例如,可以通过分别在包含库存文件的文件夹的名为host_vars和的子文件夹中创建YAML文件来提供host_vars和group_vars group_vars。 我如何列出Ansible 会了解的一本剧本中的组或主机的所有变量?注意:我尝试了,但无济于事。ansible -m debug -e 'var=hostvars' hostansible -m debug -e '- debug: var=hostvars' 提示:ansible <group|host> -m setup是不是正确的答案,因为它并没有包括所有来自其他来源的变量(只包含{ "ansible_facts" : { ... } }在事实上,它甚至不包括通过由动态库存脚本(提供变量。_meta等)。 Ansible版本:1.9.1。
25 ansible 

6
chrome浏览器(pepperflashplugin)在0.0.0.0:5353上打开侦听端口
我使用chromium browser(铬)用pepperflashplugin在Debian。我注意到,chrome / pepperflashplugin在我的公共接口上打开了一个侦听端口,0.0.0.0:5353如netstat: netstat -lptun Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 0.0.0.0:5353 0.0.0.0:* 13971/libpepflashpl 我以前使用过Firefox(Iceweasel),但从未见过浏览器/ Flash插件打开端口。实际上,我从未见过任何客户端应用程序打开上的监听端口0.0.0.0。 铬为什么要这样做? 这有必要吗? 我可以禁用它吗? 我可以在禁用Pepperflashplugin的情况下开始使用铬吗?

2
函数,别名和可执行文件中的连字符是否存在问题?
在我的测试中(在Bash和Z Shell中),我发现定义函数或别名或名称中带有连字符的可执行Shell脚本没有问题,但是我不确定在所有Shell和所有用例中都可以做到这一点。 我想这样做的原因是连字符比下划线更容易键入,因此更快捷,更流畅。 我不敢相信这不是问题的一个原因是,在某些语言(例如Ruby)中,即使连字符之间没有空格,连字符也会被解释为减号。如果在某些shell中可能会发生类似的事情,这也不会令我感到惊讶,在连字符中连字符被解释为即使没有空格也会发出信号。 我有点怀疑的另一个原因是我的文本编辑器搞砸了带有连字符的函数的语法高亮显示。(但是,当然,这很可能只是shell脚本的语法高亮显示配置中的一个错误。) 有什么理由避免连字符吗?
25 bash  shell  zsh  ksh  csh 

4
以更少的-S以较小的增量进行水平滚动
我less用来解析HTTP访问日志。我想在一行上整齐地查看所有内容,因此我正在使用-S。 我的问题是终端窗口的前三分之一占用了我不在乎的元数据。当我使用箭头键向右滚动时,我发现它滚动超过了我关心的信息的开头! 我可以删除每一行的开头,但是我不知道将来是否需要该数据,因此我不想每次查看一些日志时都必须维护单独的文件或运行脚本。 例 这行: access.log00002:10.0.0.0-USER_X [07 / Nov / 2013:16:50:50 +0000]“ GET / some / long / URL” 将滚动到: ng/URL" 题 有没有一种方法可以按字符或单词以较小的增量滚动?
25 less  scrolling 

3
在屏幕上运行脚本
我想在分离的屏幕上运行bash脚本。该脚本会多次调用一个程序,每次等待都花费很长时间。我的第一个想法是只打开一个屏幕,然后调用该脚本,但是似乎无法ctrl-a d在脚本运行时分离(by )。因此,我进行了一些研究,发现此指令将shebang替换为以下内容: #!/usr/bin/screen -d -m -S screenName /bin/bash 但这也不起作用(选项无法识别)。有什么建议么? PS这只是我现在想到的screen -dmS name ./script.sh,可能可以满足我的目的,但是我仍然很好奇如何将其合并到脚本中。谢谢。

4
带路径包含空格和通配符的字符串的Bash脚本错误
我无法了解Bash脚本编写的基础知识。这是我到目前为止的内容: #!/bin/bash FILES="/home/john/my directory/*.txt" for f in "${FILES}" do echo "${f}" done 我要做的就是.txt在for循环中列出所有文件,以便我可以对它们进行处理。但是中的my directory星号和中的空格*.txt不能很好地播放。我试过使用带双引号和不带双引号,带或不带大括号的变量名,但仍然无法打印所有.txt文件。 这是非常基本的事情,但是我仍然在努力,因为我累了并且无法直截了当。 我究竟做错了什么? 如果我的文件没有空格或星号,我已经能够成功应用上面的脚本...我不得不尝试使用或不使用双引号和花括号来使其正常工作。但是,当我同时拥有空格和星号时,一切都变得混乱了。

6
为什么X Window系统使用服务器?
我从未真正理解为什么窗口系统必须具有服务器。为什么桌面环境,显示管理器和窗口管理器需要xorg-server?显卡顶部是否只有抽象层?为什么窗口系统采用客户端-服务器模型?通过命名管道进行进程间通信会不会更简单?
25 xorg  x11  x-server 

3
如何自动化Linux服务器配置?
有什么方法可以自动化Linux服务器配置?我正在设置几个新的构建服务器以及一个FTP服务器,并且希望尽可能多地实现自动化。 原因是这些服务器的设置和配置需要以易于重复的方式进行。我们认为,尽可能多地自动执行此过程将使将来根据需要最容易重复。 本质上,所有服务器所需的就是安装操作系统以及少量软件包。设置没有太复杂的问题。 因此,是否有一种方法可以自动执行此过程(或至少是其中的一部分)? 编辑:另外,说我使用Kickstart,有没有一种方法可以删除默认的Ubuntu存储库,而只从本地拥有的.deb文件集合中安装软件包(最好通过apt而不是dpkg)?

1
管道如何在Linux中工作
我一直在阅读有关如何在Linux内核中实现管道的信息,并希望验证我的理解。如果我不正确,将选择带有正确解释的答案。 Linux有一个称为pipefs的VFS,它安装在内核中(而不是在用户空间中) pipefs有一个超级块,并安装在它自己的根目录(pipe:)旁边/ 与大多数文件系统不同,无法直接查看pipefs pipefs的条目是通过pipe(2)syscall进行的 pipe(2)外壳程序使用的syscall与|操作员进行管道传输(或从任何其他进程手动进行管道传输)在pipefs中创建一个新文件,其行为与普通文件非常相似 管道运算符左侧的文件已stdout重定向到pipefs中创建的临时文件 管道运算符右侧的文件已stdin设置为pipefs上的文件 pipefs存储在内存中,并且通过一些内核魔术,不应进行分页 这种关于管道(例如ls -la | less)功能如何的解释是否正确? 我不明白的一件事是,诸如bash之类的东西将如何设置进程stdin或stdout由返回的文件描述符pipe(2)。我还没有找到任何关于此的信息。
25 kernel  pipe 

2
从“ grub救援>”崩溃中恢复[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Unix&Linux Stack Exchange 的主题。 4年前关闭。 最初发布到AskUbuntu.com ... AskUbuntu采取了关闭有关EOL(停产)版本的问题的政策。也有一个声音要删除它们。为避免可能丢失此热门问题(迄今为止有342335次观看),请在此处放置修订版。--- docsalvager “经典”系统... 基于Ubuntu 10.04(Lucid Lynx)的Puppy Linux 5.2.8(Lucid) GRUB 2引导程序 GRUB 2在中放入了许多*.mod文件(内核模块)/boot/grub。删除这些文件(认为它们是放错位置的声音文件)会导致重新引导和提示失败grub rescue>。 在这种情况下如何恢复?

7
使用Gnome时如何截屏?
有一组非常详细的说明,说明如何在debian在线下拍摄屏幕截图。第一段建议debian支持内置的屏幕截图功能: "Print Screen" key to take a screenshot of the whole screen. Alt+"Print Screen" key to take a screenshot of the current active window. 说明表明,当我按时,PrtScn我应该看到此弹出窗口。但是,我正在运行Debian Jessie,当我按该按钮时,PrtScn我只会听到相机快门声,而看不到弹出窗口。我尝试粘贴到GIMP(edit-> paste)中,但是剪贴板上没有任何内容。 我听到快门声的事实表明正在发生某些事情,但是如何获得图像的副本?
25 gnome  screenshot 

1
只读根文件系统
不知何故,我的Debian只能在根文件系统中进行读取。我不知道这怎么可能发生。 例如,当我在/root文件夹中并键入command nano,然后按Tab列出该文件夹中可能的文件时,我得到消息: root@debian:~# nano -bash: cannot create temp file for here-document: Read-only file system cd当我键入cd /home并按下Tab以列出路径时,该命令也是如此: root@debian:~# cd /home -bash: cannot create temp file for here-document: Read-only file system 我也有像apt其他软件一样的问题。甚至无法获得更新。我有很多这样的错误: Err http ://ftp.de.debian.org wheezy-updates/main Sources 406 Not Acceptable W: Not using locking for read only lock file /var/lib/apt/lists/lock W: …

4
可以在bash中定义命令吗?
例如,我可以设置: gb = cd /media/Dan/evolution ...以便每次我gb在bash中执行时,都可以cd访问该特定目录? 我在网上找到了一些东西:alias命令。但似乎无法完成以上工作。 有可能做到吗?怎么样?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.