Unix & Linux

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


3
如何从SSHD的“匹配组”中排除?
SSHD配置中有一个“匹配”组: cat /etc/ssh/sshd_config ... Match Group FOOGROUP ForceCommand /bin/customshell ... 机器上的“ FOOGROUP”中有许多用户。 我的问题:如何从“匹配组”中排除“ FOOGROUP”中的给定用户?
14 openssh  sshd 

5
如何在shell脚本中放弃root特权?
OpenVPN中的“ --up”选项通常用于路由等。因此,在OpenVPN放弃root特权以无人运行的情况下进行处理。但是,我正在调用需要以非特权用户身份运行的shell脚本。 我怎么做?我研究了Drop Process Privileges,特别是多项式和tylerl的答案,但是我不知道如何实现。我在Centos 6.5中工作,并且suid被阻止为“ chmod u + s”和“ setuid()”。 有一个OpenVPN插件(“ openvpn-down-root.so”),该插件使“ --down”选项调用的脚本能够以root用户身份运行。可能存在等效项,例如“ openvpn-up-user.so”,但我没有找到它。 编辑0 根据Nikola Kotur的回答,我已经安装了Ian Meyer的runit-rpm。尽管chpst命令在终端中有效,但在up脚本中,它失败并显示“找不到命令”。起作用的是“ sudo chpst”以及设置适当的显示和语言。请参阅为什么我的终端无法正确输出unicode字符?鉴于此,up脚本需要以下四行: LANG="en_US.UTF-8"; export LANG GDM_LANG="en_US.UTF-8"; export GDM_LANG DISPLAY=:0; export DISPLAY sudo chpst -u user -U user /home/user/unprivileged.sh & 编辑1 根据0xC0000022L的评论,我发现“ sudo -u用户”和“ sudo chpst -u用户-U用户”一样有效: LANG="en_US.UTF-8"; export LANG GDM_LANG="en_US.UTF-8"; export …

3
一台Linux计算机上的SSH连接数
我陷入了不得不通过puTTY访问Linux机器的情况。我尝试了各种SSH尝试,但无法连接到该机器。然后我意识到我的同事正在以root用户身份访问同一台Linux计算机,我也想以root用户身份进行访问。我请他注销以便以root用户身份登录。有没有一种方法可以限制Linux操作系统上的SSH登录数量?这是某种安全功能,可以区分基于Windows的操作系统和基于Linux的操作系统。
14 ssh  limit 

5
从终端复制不需要的换行符的长单行文本
locate ... | less 输出一条长路径,虽然实际上是一条线,但在终端中显示为多条线。 我通过使用鼠标选择文本并单击Ctrl+ Shift+ 从终端复制路径C。当我将其粘贴到文本文件中时,在文本中会出现不需要的更改行,与在终端中显示的完全相同。 但是我记得有时可以复制的长路径输出locate ... | less,而不会引入不必要的换行,有时则不能。我不知道我是否做不同的事情。 因此,我想知道如何确保该问题不会发生?谢谢! 我的操作系统:Ubuntu 12.04。 我的终端机:Gnome终端机3.4.1.1
14 ubuntu  terminal  text 

3
bash添加了额外的单引号
我在执行脚本时遇到问题。 当以调试模式(bash -x)执行它时,我可以看到bash添加了额外的引号。因此,我的脚本失败了。 这在我的脚本中: testvar="\"sudo /home/pi/shared/blink.sh 27 off\"" ssh -n -q -q -o BatchMode=yes -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=5 $1 ${testvar} 这是输出: ssh -n -q -q -o BatchMode=yes -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=5 192.168.42.105 '"sudo' /home/pi/shared/blink.sh 27 'off"'
14 shell  ssh  quoting 

2
我可以使用自己的ld.so.cache吗?
ldconfig 有两个有趣的选项: -f conf Use conf instead of /etc/ld.so.conf. -C cache Use cache instead of /etc/ld.so.cache. 我尝试复制/etc/ld.so.conf到自己的主目录,并对其进行了编辑,以包括本地库/home/syockit/local/usr/lib等的路径,然后运行 ldconfig -f /home/syockit/ld.so.conf -C /home/syockit/ld.so.cache 然后,为了确认库是否已缓存,我运行了 ldconfig -f /home/syockit/ld.so.conf -C /home/syockit/ld.so.cache -p | less 它不仅包括我的所有库,还包括系统库。 现在,我想让默认链接器使用这两个。但是在man ld.so我看来,没有提到能够使用custom .conf或.cache。那么,以上两种选择的意义ldconfig何在?

3
/ etc / hosts中的主机名和IP地址映射
在我的linux机器上,当我运行时hostname,它显示mongodb,但是当我运行时host mongodb,它显示: mongodb@mongodb:/var/hadoop/hadoop-1.2.1/bin$ host mongodb Host mongodb not found: 2(SERVFAIL) 我的/etc/hosts档案: 192.168.10.10 mongodb 192.168.10.10 localhost 127.0.0.1 localhost #127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 我的第一个问题是:既然/etc/hosts是从IP映射到主机名,为什么这台机器不能将主机名解析mongodb为IP 192.168.10.10?相反,当我运行时host localhost,它可以解决并显示: localhost has address 127.0.0.1 我的另一个问题:根据/etc/hosts文件,主机名localhost应该已经解析为192.168.10.10而不是回送IP地址127.0.0.1。有人可以向我解释吗?
14 ip  hostname 

2
如何在bash变量中存储图像文件?
使用以下命令后, pngString="$(cat example.png)" echo -n "$pngString" > tmp.png 我无法将tmp.png作为PNG文件打开。当我$pngString用来存储图像文件时,某些信息可能会丢失。 所以问题是:如何在bash脚本中使用变量存储完整的图像信息?
14 bash  cat  images  binary  variable 

2
PAM-必需和足够的控制标志
我正在学习PAM,对于控制标志的某种组合的含义我一无所知。从Red Hat文档中,我们可以得到: 这种PAM的必要失败最终将导致PAM-API返回失败,但是仅在调用了其余的堆叠模块(针对该服务和类型)之后 必需 等所需,然而,在这样的模块返回失败的情况下,控制被直接返回到应用程序。 这种模块的足够成功足以满足模块堆栈的认证要求(如果先前的必需模块失败,则忽略该模块的成功)。此模块的故障不认为是满足该类型成功的应用程序的致命危险。如果模块成功,则PAM框架会立即将成功返回给应用程序,而无需尝试任何其他模块。 因此,据我所知,如果一个模块requisite发生故障,则不会解析整个模块堆栈,并且控件将立即返回给应用程序。如果模块sufficient成功,则不会解析其余的模块堆栈,并且控件将立即返回到应用程序。如果模块required发生故障,则将解析整个堆栈。 现在,我无法理解某个模块required失败而另一个模块sufficient成功时的行为。

2
Grep多个模式否定匹配
因此,我有一堆使用标准日志格式的Apache日志。我想获取并非来自网络搜寻器的所有日志行。 所以可以说我有一个文件robot_patterns,其条目如下 Googlebot msnbot-media YandexBot bingbot 如果运行命令,grep -f robot_patterns *.log我将通过与上述模式匹配的机器人获得所有条目。我的实际列表中有约30个我希望忽略的漫游器和代理条目。 但是我想找到所有不是来自bot的条目。因此,我尝试grep -v -f robot_patterns *.log了grep没有返回任何结果。这不是我期望或想要的,并且我没有找到一种明显的方式来获得我想要的东西。将-v选项与文件中的多个模式组合使用时,grep仅在匹配每个模式时才返回匹配行。
14 grep 

5
为什么在smbfs挂载的共享中的文件创建了可执行位?
我使用smbmount命令安装了一个samba共享: $ sudo smbmount \\\\foo\\bar /mnt/bar -o user=tom 当我创建新文件时,将使用为所有者,组和世界设置的可执行位来创建它们。例如 $ touch hello.txt $ ls -la hello.txt -rwxr-xr-x 1 root root 0 Dec 2 12:28 hello.txt 在NFS安装的共享上创建同一文件时,无需设置任何可执行位就可以设置正确的权限。 为什么会这样呢?如何解决?
14 permissions  cifs 

1
在哪里可以找到有关xkb_symbols的信息(即dead_acute,KP_1,删除,关闭)[关闭]
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加细节并通过编辑此帖子来澄清问题。 6年前关闭。 在哪里可以找到xkb_symbols及其含义的列表? 为了澄清起见,让我举一些xkb_symbols的例子: dead_acute dollar Down Delete adiaeresis Adiaeresis dead_circumflex KP_0 (KP_可能是“数字键盘”符号的前缀) KP_divide .... (还有很多) 阅读此Arch Wiki,我了解xkb_symbols实际上是数字。这些xkb_symbols的数字将分配给某个地方的某些字符串表示形式(这主要是问题:where?)。例如,可以看一下/usr/include/X11/keysymdef.h其中有哪些#defines持有以下一项: #define XK_KP_0 0xffb0 虽然至少有我能找到XK_KP_0,这似乎重新取样KP_0(即简单又前缀),我仍然没有关于类似(即所有其他符号信息dead_circumflex,dollar等...)。 我将需要一个这样的已定义字符串表示形式的列表,例如,以创建,调整或修改键盘布局。当然,我可以通过查看预先存在的键盘布局文件来获得一些见识,但是需要对其进行引用。因此,我在这里要求有人指出这一点。 更多背景 在文件中,其中用于定义,调整和修改设在这里的键盘布局/usr/share/X11/xkb/symbols/,如例如de(德国)的键盘布局/usr/share/X11/xkb/symbols/de的xkb_symbols被大量使用。 原则上,这是这样的文件的样子(作为文件的一部分de): //基于'xkb / symbols / de'文件中的键盘映射 默认 xkb_symbols“基本” { 包括“拉丁语(类型4)” name [Group1] =“德语”; 键{[2,quotedbl,twosuperior,oneeighth]}; 键{[[3,section,threesuperior,sterling]}; 密钥{[4,美元,四分之一货币,货币}}; .... .... }; 我想知道像xkb_symbols清单quotedbl,twosuperior在上面的代码片段中使用。


4
troff / groff是否有意义?
我听说troff / groff已被TeX取代。这是真的? 我现在知道的唯一真正使用过的troff是联机帮助页。这是真的吗?如果没有,还有什么其他用途?
14 latex  groff 

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.