Unix & Linux

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

1
RPM事务在中间中断时会发生什么?
假设我要安装RPM软件包A,B和C。它们以相同的顺序安装。在安装B的过程中突然突然断电。 1)关于开启后的状态:该交易会发生什么?会恢复吗?也许RPM将从该事务中删除所有软件包和文件? 2)关于用户操作:RPM是否要求用户执行上述操作,还是在计算机启动时自动对其进行检查? RPM转换主要根据依赖性错误或计算机仍在运行时的错误进行描述...
13 linux  rpm 

1
xdg-open默认应用程序行为
当我没有defaults.list和mimeapps.list,xdg-open打开text/plain用gvim。但是,当我创建defaults.list的/usr/share/applications/,并添加以下几行: [Default Applications] text/plain=emacs.desktop 它使用Firefox打开文本文件。 但是,如果我移动/usr/share/applications/defaults.list到~/.local/share/applications/mimeapps.list,它会打开文本文件与emacs预期。 我的问题: 如何xdg-open确定哪些应用程序启动时,有没有defaults.list和mimeapps.list? 为什么xdg-open我只写时就使用firefox /usr/share/applications/defaults.list? 我正在使用Arch Linux。

1
可执行文件上没有“这样的文件或目录”,但文件存在并且ldd报告存在的所有库
因此,通过任何其他命令,可执行文件都存在,但是当我尝试执行该文件时,它声称它不存在。 它不是名称中的特殊字符,因为我将其重命名为“猫”。它似乎是正确体系结构的二进制文件……“似乎”,我想问题是,还有什么抛出tat错误消息BESIDES……文件不存在,因为它显然是IS! ldd xls linux-gate.so.1 => (0xb77bc000) libQtGui.so.4 => /usr/lib/i386-linux-gnu/libQtGui.so.4 (0xb6cc2000) libpng12.so.0 => /lib/i386-linux-gnu/libpng12.so.0 (0xb6c98000) libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xb6c8f000) libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xb6c76000) libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xb6c6d000) libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xb6bd1000) libfontconfig.so.1 => /usr/lib/i386-linux-gnu/libfontconfig.so.1 (0xb6b9b000) libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xb6b88000) libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb6a50000) libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb6a2a000) libQtSql.so.4 => /usr/lib/i386-linux-gnu/libQtSql.so.4 …
13 linux  executable 

2
如何找到WLAN接口的速度?
我正在尝试使用文件描述符查找网络接口的速度。为此很容易ethX,只需致电即可cat /sys/class/net/eth0/speed。不幸的是,这种方法不适用于无线接口。当我打电话给/sys/class/net/wlan0/speed我时报错:参数无效。 那么,您知道/sys/class/net/eth0/speed无线接口的类似模拟吗?

1
如果可以在一个屏幕上显示整个文件,则减少输出到标准输出
当more传递的文件的内容可以显示在一个屏幕上时,它只是将文件的内容写到stdout而不进行分页。如果文件无法在一个屏幕上显示,请对其进行more分页。 less如果正在使用的文件可以显示在一个屏幕(-F)上,则有一个选项可以退出,并且它具有- more仿真功能,其行为类似于该-F标志,但是这些选项似乎都不会导致less写入文件的内容确定内容是否可以在一个屏幕上显示。 less如果文件的内容可以放在一个屏幕上并像往常一样对页面进行分页,如何将文件的内容写入stdout?
13 less  more 

3
仅允许特定用户通过ssh在一个端口登录,而其他用户则通过另一端口登录
我有以下用例: 需要允许用户从安全,可信任的网络登录 然后允许几个(只有两个)移动用户在Linux Centos计算机上远程登录。 我可以使sshd在不同的端口上运行,例如: 从内部可以在22上运行是可以的,因为我不想让它们在其他端口上连接(使脚本混乱)。 对于外部移动用户,我将在另一个端口(例如端口X)上运行sshd(提高了安全性-这是一种小型办公室设置)。 为了提高安全性,我希望将sshd配置为仅允许访问端口X上的特定用户(然后配置一些警报,以便我们可以知道用户何时通过端口X登录)。 但是,我无法在sshd文档中找到这样的任何配置。如果没有这样的解决方案,那么只要有人在端口X上完成sshd登录,是否至少有可能触发shell脚本运行?我正在查看iptables文档,以查看当sshd登录存在时是否可以触发警报,但无法解决任何问题。 赞赏输入
13 centos  sshd 

8
使用xdg-open使用新进程打开URL
我开始尝试将Crunchbang(基于Debian,并使用terminator)作为Web开发环境,而我苦苦挣扎的事情之一就是的行为xdg-open。我来自OSX背景,因此,如果这个问题过于复杂,请原谅我。 我希望能够使用打开一个URL,xdg-open http://www.google.com然后继续使用相同的终端窗口来工作(这是openOSX中的功能)。现在,使用会xdg-open占据当前选项卡/会话,直到我关闭浏览器窗口,或手动结束ctrl + c。我非常希望它启动一个新过程,这样我可以打开一个URL,引用页面上的数据,然后在同一选项卡/窗口中使用它,而无需打开其他窗口。

3
将文件拆分为多个小文件,以换行符分隔
是否有按换行符分割文件的实用程序?例如,如果文件包含以下几行, aa bbb cccc 如果我要将其拆分为3个文件,则所需的输出将是: aa,bbb和cccc(在3个不同的文件中) 我已经检查了split命令,它仅按文件大小剪切文件,而不是我想要的文件。 如果我自己没有编写实用程序,是否有任何标准工具可以使用?


1
可以防止程序启动时的熵消耗吗?
我将Knoppix(或其他Live CD / DVD)用作创建有价值的加密密钥的安全环境。不幸的是,在这样的环境中,熵是有限的资源。我只是注意到,每个程序启动都消耗一些熵。这似乎是由于某些堆栈保护功能需要地址随机化所致。 不错的功能,但在我的情况下完全没用,而且更糟。是否有可能禁用此功能?我希望有一个允许我继续使用原始的Knoppix(或任何其他形式)图像,并且只需要在运行时进行一些配置的图像。 我读到这是glibc引起的。我很惊讶,strace -p $PID -f -e trace=open当我启动程序时,反对bash不会显示对/ dev / random的任何访问。但是我不熟悉execve()和链接程序的交互。
13 linux  kernel  security 

2
对单词边界感到困惑
我已经对此进行了很多研究,但仍不清楚。这是什么字边界是什么意思?它有什么作用? 因此,例如,有人可以向我解释此命令吗? egrep '\b[A-Z]+\b' filename.sh

1
在当前bash命令行中删除整个参数
使用^W(unix-word-rubout),我可以轻松地从bash shell中的当前命令中删除单个“单词”。 但是,当处理包含空格的带引号的引数(或包含反斜杠转义的空格的无引号的引数)时,这样做效果不佳,因为它只会删除一个单词而不是整个参数。 因此,我正在寻找一种删除整个参数的方法。 示例(光标始终在末尾): $ foo --bar "foo bar" meow [black magic] $ foo --bar "foo bar" [black magic] $ foo --bar [black magic] $ foo
13 bash  readline  inputrc 

2
关闭SSH连接后完成rsync作业
我正在使用将大量文件从一台计算机传输到另一台计算机rsync。我这样做是通过SSH进入源计算机并执行如下命令: sudo rsync ssh --rsync-path="sudo rsync" source_dir user@host.com:dest_dir。 即使nohup在此命令之前添加,只要关闭SSH所从的终端窗口,连接都会关闭。 如何获得它,以便在关闭SSH连接时仍能继续进行文件传输?
13 rsync  nohup 

7
每次都获得相同的cpu使用率。
当我执行以下命令获取cpu用法时,我得到了+用户cpu用法。 top -b -n1 | grep "Cpu(s)" | awk '{print $2 + $4}' 输出: 14.5 在这里,我遇到的问题是输出取决于top命令,因此它不会像top命令那样立即更改。因此,我无法立即获得正确的CPU。它给出相同的输出,并且没有变化。 我想在输出中获取实时cpuusage。请帮助我改善命令。
13 command-line  cpu 

4
$ {!FOO}和zsh
${!FOO}在中执行双重替换bash,这意味着它接受FOO的(字符串)值并将其用作变量名。 zsh不支持此功能。 有没有一种方法,使这项工作同样在bash和zsh? 背景: 我有一个环境变量列表,例如 PATH MAIL EDITOR 并想先打印变量名,然后再打印它们的值。 这适用于bash但不适用zsh: for VAR in LIST do echo $VAR echo ${!VAR} done 应该可以通过某种方式实现“旧方法” eval,但是我无法使其正常工作: for VAR in LIST do echo $VAR echo `eval \$$VAR` done 我永远也不会理解为什么我不能简单地进行像${${VAR}}或什至${${${VAR}}}需要这样的任意深度替换,因此对此做一个解释也很好。

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.