Unix & Linux

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

2
我应该与哪个用户一起运行Web服务器,redis和mongodb?
在此VPS上,有三个用户:root,another_one,none。所有网络服务器文件,配置和&c。由拥有root。但是,我对运行事物有什么怀疑。如果我将root用户用于Web服务器,则可能会使系统暴露在安全漏洞中,而如果我尝试登录到nobody该服务器,则会询问我从未设置且不知道的密码。我应该再创建一个用户吗? 现在,我仅对nginx感到确定:我以root身份运行它,并且以没有人的身份生成进程。但是,Web服务器和其他服务(如db和redis)又如何呢? 注意:我应该提到another_user可以sudo,所以它与root没什么不同。


3
可以将AIX上的ksh配置为使用Tab键完成文件名吗?
我有一些AIX 7服务器,这些服务器仅限于我可以安装的软件,并且想知道是否可以ksh使用tab键在shell promot上完成文件名。 手册页中的ksh很少,我看不到这里涉及到任何相关问题。由于大多数用户都使用ksh,因此我不愿意将shell转换为bash,但是我想这很容易。 最初,我使用腻子/ ssh从PC登录,一旦X11转发将流量带回PC上的Hummingbird Exceed,大部分工作就从xterm进行。 是否可以通过按TAB键bos.rte.shell将AIX 7.1 附带的/ usr / bin / ksh 配置为触发文件名完成(通常是通过按ESC + \来触发)?
8 ksh  aix 


3
优化`while`循环
我创建了一个迷你脚本,只需按一下按钮即可重新启动Raspberry Pi。该脚本仅使用wireingPi(gpio命令)将引脚0(Raspberry Pi标准编号顺序中的引脚17)设置为输入,然后读取该值直至为1(即按下或按住按钮时)。 这是我的脚本: gpio mode 0 in while (true) do if [ `gpio read 0` -eq 1 ] then echo password | sudo -S reboot break fi done & 该脚本工作正常,一切正常。 但是,对于那些不熟悉Pi的人来说,它具有非常有限的硬件资源(包括512 MB的内存),可以像我正在使用的那样轻松地被循环使用。 我要在这里实现的目标是找到另一种方法让bash找出值何时从更改为0,1而不必为此专门指定一个无条件循环。这可行吗?请分享您的想法。

6
如何在不要求覆盖的情况下复制或移动文件?
我尝试过的 root@host [/home1]# cp -f hello /home3 cp: omitting directory `hello' root@host [/home1]# cp -rf hello /home3 cp: overwrite `/home3/hello/.buildpath'? y cp: overwrite `/home3/hello/.bash_logout'? y cp: overwrite `/home3/hello/.project'? ^C 他们总是问我是否要覆盖。使用mv也不起作用。所以我该怎么做? 我尝试过的其他方法: root@host [/home1]# cp -rf hello /home3 cp: overwrite `/home3/hello/.buildpath'? y cp: overwrite `/home3/hello/.bash_logout'? y cp: overwrite `/home3/hello/.project'? ^C root@host …
8 shell  alias  cp 

2
显示服务器与窗口管理器与图形驱动程序?
我试图对Linux上图形的不同部分进行理解,并且对以下每个概念所扮演的角色感到困惑。 显示服务器 窗口管理器 图形驱动 我的问题: 图形驱动程序是在Linux内核内部还是外部实现的?如果内核,网络,磁盘,文件系统都在内核内部时,为什么将它们排除在内核之外呢? X Windows,Gnome,Ubuntu Unity,KDE,Mir,Wayland谁在显示服务器,窗口管理器和图形驱动程序方面做了什么? 我的目标是了解哪些项目在Linux Graphics体验的哪些方面做出了贡献? 更新 http://blog.mecheye.net/2012/06/the-linux-graphics-stack/ 有很多我想要的细节。

1
在kubuntu中打开浏览器外部的链接仅从本地kde缓存中打开html
我有一个奇怪的问题,无论何时从外壳打开链接时,缓存的html都是在本地打开的,而不是通过浏览器打开的。 说明: 如果我xdg-open http://www.google.com在bash提示符下运行命令,则该URL在浏览器栏中打开:file:///var/tmp/kdecache-seldon/krun/13954_0_。 这是它如何加载铬的图像(当前已将其设置为我的默认浏览器)。 。 当调用从(大多数)应用程序打开链接时,也会发生此问题,例如,单击Gwenview帮助文档中的外部链接。 是否有人对为什么会发生有任何见解?我有什么办法可以阻止这种情况发生? 更新了我尝试过的一些步骤: 使用应用程序路径启动url可以正常工作(即chromium-browser http://www.google.com,firefox http://www.google.com 我检查~/.local/share/applications/mimeapps.list并认为自己text/html确实发现了该问题,因为它指向的是一个不存在的旧.desktop文件。但是将条目chromium-browser.desktop修复为并不能解决问题 我仍然不知所措,这个问题可能是什么
8 kde  kubuntu 


1
如何防止系统信息在终端上显示?
我正在使用curses GUI,该GUI应该在默认linux终端(我没有安装X服务器)启动时自动启动。我的工作很好,但是我遇到了一个问题,即在我的curses应用程序启动后不久,操作系统会将一些信息转储到终端,这会弄乱我的GUI。每次都会弹出有关“预读缓存”的信息。插入USB闪存驱动器或其他设备时,我还看到显示的消息。 有没有办法防止这些消息发送到/ dev / tty1?

1
使用终端的自动完成路径功能输入到Shell脚本
我想编写一个脚本,该脚本是:(1)获取一个路径,使用户能够使用制表符自动完成,然后(2)从用户获取文件名,然后(3)在该路径下创建一个扩展名为的文件。文本文件。 我的问题是:我该怎么办1.?我如何告诉bash要求输入“自动完成”路径,最好是部分路径(例如〜/ x /)已默认填充? 注意:路径几乎总是包含空格。

1
如何在全局模式(zsh)中使用参数替换
我想处理一堆以某些后缀结尾的文件,因此我编写了以下zsh脚本,但是它不起作用。 EXT=(.jpg .png .gif) EXT=${(j.|.)EXT} # EXT becomes '.jpg|.png|.gif' for f in *($EXT); do # should become '*(.jpg|.png|.gif)' but failed process-one-file $f done 为什么不起作用?如何混合参数替换和glob模式?
8 zsh  glob 

3
ifconfig中的接口前缀是什么意思?
我不确定它们是否具有名称,但是在大多数计算机上,我使用的接口前缀通常是: eth-:以太网/有线 wlan-:无线/ WiFi 但是,在我的ASUS RT-N56U上,我具有以下功能: br0:“以太网”-网桥? eth2:“以太网”,IPv6(0和1在哪里?) eth3:“以太网”,IPv4(具有我的WAN IP的那个) lo:“本地环回”-这是做什么用的? ra0:“以太网”-吗? rai0:“以太网”-? 还有其他吗?他们的意思是什么?

2
读取-a数组-d'\ n'<foo,退出代码1
如果我尝试执行 read -a fooArr -d '\n' &lt; bar 退出代码为1-即使它完成了我想要的操作;将每行放入bar数组的元素中fooArr(使用bash 4.2.37)。 有人可以解释为什么会这样吗 我发现了其他解决方法,例如下面的方法,所以这不是我要的。 for ((i=1;; i++)); do read "fooArr$i" || break; done &lt; bar 要么 mapfile -t fooArr &lt; bar
8 bash  newlines  read 

3
将现有的提示命令行分成几行
我知道我可以\ enter在bash命令行末尾键入以在另一行中继续该命令。但是,如何将一个已经完全键入的提示命令行分成两个? 例如,如何才能在then不切掉其余部分并重新键入之前立即中断此行? $ if true; then ls; fi

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.