Unix & Linux

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

5
如何根据主机名更改GNU屏幕状态行?
我有一个共享的主目录,该目录通过NFS在我登录的所有UNIX服务器上自动挂载。我希望有一个.screenrc(例如),将主机名以不同的颜色置于hardstatus行中,以指示何时登录生产和开发。我们的主机名可以通过使用模式匹配轻松完成。 有什么办法可以将条件语句放入.screenrc中?手册页的快速grep似乎没有发现任何明显的内容。 编辑: 为了澄清,我已经有一个自定义的硬状态行;我想根据调用屏幕的主机名来更改显示的某些颜色/字段。我的PS1已经有了类似的东西,但是当我从这些主机跳到路由器/交换机时,我宁愿在屏幕状态行中这样做,这不允许我进行任何即时的着色。这样,我可以有一个用于生产的窗口,一个用于开发的窗口,屏幕状态行的颜色告诉我我正在浏览哪个窗口。

3
在Debian Wheezy中安装python pip
如何pip在Debian Wheezy中安装? 我发现很多建议,apt-get install python-pip但结果是 “无法找到软件包python-pip” 是pip在Debian喘息?我正在使用7.8
31 debian  pip 

1
如何从PFX以PEM格式导出CA证书链而没有包属性
我有一个包含完整证书链和私钥的PKCS12文件。我需要将其分解为3个文件用于一个应用程序。我需要的3个文件如下(PEM格式): 未加密的密钥文件 客户端证书文件 CA证书文件(根目录和所有中间文件) 这是我必须执行的常见任务,因此我正在寻找一种无需手动编辑输出即可执行此操作的方法。 我尝试了以下方法: openssl pkcs12 -in <filename.pfx> -nocerts -nodes -out <clientcert.key> openssl pkcs12 -in <filename.pfx> -clcerts -nokeys -out <clientcert.cer> openssl pkcs12 -in <filename.pfx> -cacerts -nokeys -chain -out <cacerts.cer> 这很好用,但是输出包含bag属性,应用程序不知道该属性。 经过一番搜索,我找到了一种建议的解决方案,将结果通过x509传递以剥离bag属性。 openssl x509 -in <clientcert.cer> -out <clientcert.cer> 这可行,但是我在cacert文件上遇到了问题。输出文件仅包含链中3个证书之一。 有没有办法避免在pkcs12命令的输出中包含bag属性,还是有办法使x509命令的输出包含所有证书?另外,如果通过x509运行它是最简单的解决方案,是否有办法将pkcs12的输出通过管道传递到x509,而不是两次写入文件?

4
错误消息“ X不在sudoers文件中。这起事件将得到报告。”从哲学/逻辑上讲?
除了问题“ 用户名不在sudoers文件中。将报告此事件 ”,该问题解释了错误的程序方面,并建议了一些解决方法,我想知道:此错误是什么意思? X is not in the sudoers file. This incident will be reported. 错误的前一部分清楚地解释了错误。但是第二部分说“将报告此错误”?!但为什么?为什么会报告错误,在哪里?给谁?我既是用户又是管理员,没有收到任何报告:)!

2
ntpd vs. systemd-timesyncd-如何实现可靠的NTP同步?
当我查询NTP守护程序的状态时,ntpdc -c sysinfo得到以下输出: system peer: 0.0.0.0 system peer mode: unspec leap indicator: 11 stratum: 16 precision: -20 root distance: 0.00000 s root dispersion: 12.77106 s reference ID: [73.78.73.84] reference time: 00000000.00000000 Thu, Feb 7 2036 7:28:16.000 system flags: auth monitor ntp kernel stats jitter: 0.000000 s stability: 0.000 ppm broadcastdelay: …
31 ntp  ntpd 


5
如何在Linux中跟踪新创建的进程?
我知道ps可以看到系统中正在运行的当前进程的列表或树。但是我要实现的是“遵循”使用计算机时创建的新过程。 打个比方,当您tail -f用来跟踪附加到文件或任何输入的新内容时,我想保留当前正在创建的进程的跟踪列表。 这甚至可能吗?
31 linux  process 


4
在其他tty上启动进程
经过大约一个小时的谷歌搜索,我无法相信之前没有人真正问过这个问题... 因此,我在TTY1上运行了一个脚本。如何使该脚本在TTY2上启动任意程序? 我发现tty,它告诉您当前正在使用哪个TTY。 我发现writevt,它将单行文本写入不同的TTY。 我发现chvt,它更改了当前显示的TTY。 我不想显示 TTY2。我只希望主脚本继续正常执行,但是如果我手动切换到TTY2,则可以与第二个程序进行交互。
31 bash  tty 

1
systemd不断卸载可移动驱动器
我在/ etc / fstab中有以下一行: UUID=E0FD-F7F5 /mnt/zeno vfat noauto,utf8,user,rw,uid=1000,gid=1000,fmask=0113,dmask=0002 0 0 分区是由gnome-disks相应用户重新创建的,并且横跨整个卡。 现在:mount /mnt/zeno以用户(1000)的身份运行成功,但是之后我发现它实际上并未挂载:跟随umount /mnt/zeno失败umount: /mnt/zeno: not mounted。观看时journalctl -f,我看到安装时出现以下消息: [...] kernel: SELinux: initialized (dev mmcblk0p1, type vfat), uses genfs_contexts [...] systemd[1]: Unit mnt-zeno.mount is bound to inactive service. Stopping, too. [...] systemd[1]: Unmounting /mnt/zeno... [...] systemd[1]: Unmounted /mnt/zeno. 因此,似乎systemd确实一直在卸下驱动器,但我不知道为什么。我不记得创建任何自定义的“ .mount”文件。我试图在/ etc …
31 mount  systemd  vfat 

7
从bash命令输出绘制直方图
我有以下输出: 2015/1/7 8 2015/1/8 49 2015/1/9 40 2015/1/10 337 2015/1/11 11 2015/1/12 3 2015/1/13 9 2015/1/14 102 2015/1/15 62 2015/1/16 10 2015/1/17 30 2015/1/18 30 2015/1/19 1 2015/1/20 3 2015/1/21 23 2015/1/22 12 2015/1/24 6 2015/1/25 3 2015/1/27 2 2015/1/28 16 2015/1/29 1 2015/2/1 12 2015/2/2 2 2015/2/3 1 2015/2/4 …
31 bash 

4
将grep上下文限制为N个字符
我必须遍历某些JSON文件,其中行长超过几千个字符。如何限制grep在匹配的左右两侧最多显示N个字符的上下文?只要grep可以在常见的Linux软件包中使用,除grep以外的任何其他工具都可以。 这将是虚拟grep开关Ф的示例输出: $ grep -r foo * hello.txt: Once upon a time a big foo came out of the woods. $ grep -Ф 10 -r foo * hello.txt: ime a big foo came of t
31 grep  search  json 

4
文件名中是否不允许有空格?
据说在一般的Unix和Linux上,应该避免文件名(普通文件,dir,链接,设备文件等)中包含空格。 但是我一直都这样做。对于内部带有空格的文件名, 在Nautilus中,空格字符显示为空格。 在Bash终端中,我要么\ 用来表示一个空格,要么将文件名括在一对双引号中。 在某些应用程序的文件中(Nautilus,不确定操作系统是否也会这样做),文件名用空格代替%20。 文件名中确实不允许有空格吗? 如何正确使用或处理文件名中的空格?
31 filenames 

8
如何更改用于qmake的Qt版本?
我觉得应该有一个简单的方法来做,但是我的googlefu失败了,所以我非常感谢一些有关如何在进行qmake时切换(甚至永久更改)哪个版本的Qt的信息。如果我问哪个版本,我会得到以下信息: ~ $ qmake --version QMake version 3.0 Using Qt version 5.0.1 in /usr/lib/x86_64-linux-gnu 我已经安装了QtCreator,但是我不确定从这里去哪里。
31 make  qt  qtcreator 

3
设置环境变量的最好的发行版/与外壳无关的方法是什么?
问题说明了一切。我目前使用Arch Linux和zsh,但是我想要一个(至少)可以在VT和xterm上运行的解决方案,并且(希望,最好是)如果我切换发行版或shell,它也可以继续工作。 我已经在不同发行版的文档中听到了对该问题的截然不同的答案。Ubuntu说“使用.pam_environment”。我认为在Arch中,他们的建议取决于您的外壳。当前,我将所有内容都放在.profile中,如果外壳由于某种原因(例如bash如果存在.bash_profile存在)不提供该资源,则可以通过手动采购来覆盖它。但是似乎必须有一个更好的方法。

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.