Unix & Linux

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


3
如何查找服务器的域名?
我在查找学校服务器的域名时遇到问题,我读到另一个与此类似的问题,但是它们的命令不起作用。 我尝试使用nslookup,然后在提示时输入server。我得到以下输出。我不了解域名的存储位置。我正在使用大学的有线局域网连接。 Default Server: 127.0.01 Address: 127.0.0.1#53 Default Server: ::1 Address: ::1#53
11 networking  dns 

5
如何不使用groff将Linux手册页转换为HTML?
我想在不使用groff的情况下将一些Linux手册页转换为HTML。我对groff的偏见是由于某些PNG渲染问题,它似乎使我本地化为Sabayon(因为这些问题似乎在我的VirtualBox VM上并未出现在其他发行版中)。我意识到这是一个错误,但是解决方案似乎不会在不久的将来出现,所以我想问一下是否还有其他方法可以将Linux手册页转换为HTML。使用http://linux.die.net/man上的HTML页面是不可接受的解决方案,因为我感兴趣的某些手册页不存在(例如,emerge(1)不存在)。
11 man  conversion  html 


4
交换tmpfs(显然是个坏主意,但是可能吗?)
这个问题源自同事之间的一个玩笑,内容是关于通过将交换文件移动到tmpfs来提高性能。显然,即使有可能,也不是一个好主意。我想知道的是,能做到吗? 我目前在Ubuntu 14.04上,但是我可以想象大多数Linux / Unix机器的过程都相似。这是我在做什么: > mkdir /mnt/tmp > mount -t tmpfs -o size=10m tmpfs /mnt/tmp > dd if=/dev/zero of=/mnt/tmp/swapfile bs=1024 count=10240 > chmod 600 /mnt/tmp/swapfile > mkswap /mnt/tmp/swapfile # So far, so good! > swapon /mnt/tmp/swapfile swapon: /mnt/tmp/swapfile: swapon failed: Invalid argument 因此,在linux或unix(我对任何解决方案都感兴趣)上,您能以某种方式在驻留在ram中的文件/分区上设置交换吗?有办法解决Invalid argument我遇到的错误吗? 再次强调一下,我不希望这是解决实际问题的解决方案。我想这只是一个有趣的实验。
11 linux  swap  tmpfs 

2
带有引号的ssh命令
我有一个奇怪的错误,就是我找不到任何东西。我想使用以下命令更改用户注释。 $ sudo usermod -c "New Comment" user 这将在登录到服务器时起作用,但我想在20多个服务器上实现自动化。通常,我能够使用列表并遍历服务器并运行命令,但在这种情况下会出现错误。 $ for i in `cat servlist` ; do echo $i ; ssh $i sudo usermod -c "New Comment" user ; done serv1 Usage: usermod [options] LOGIN Options: lists usermod options serv2 Usage: usermod [options] LOGIN Options: lists usermod options . . …
11 shell  ssh  quoting 

2
所有ALSA设备的默认音量
我想一次为所有将要连接的ALSA设备设置默认音量。 当然,我可以做amixer ...,甚至alsamixer可以修改当前可用声卡的音量。 但是我真的想修改默认音量,即使是将来要添加的声卡。 我应该在哪个配置文件中设置默认音量? 我见过,/var/lib/alsa/asound.state但内容特定于当前连接的声卡。我想要的是一种适用于将要连接的任何声卡的解决方案。 上下文:为什么要这样?我正在为我的项目SamplerBox提供一个现成的Debian图像。用户#1可能使用计算机的内置声卡,用户#2可能具有USB DAC,用户#3可能具有另一个声卡... 我想提供一个默认的-3dB音量,该音量适用于任何ALSA声卡用户可能... 注意:我重新安装了新系统,默认情况下,所有设备的音量均为-20dB:

2
替换perl和sed中不可打印的字符
我需要用文件中的空格替换一些不可打印的字符。 具体来说,所有字符0x00最多到0x1F,但0x09(TAB),0x0A(新行),0x0D(CR)除外 到目前为止,我只需要替换0x00字符即可。因为我以前的操作系统是AIX(没有GNU命令),所以我不能使用sed(虽然可以,但是有一些限制)。因此,我找到了使用的下perl一条命令,该命令按预期工作: perl -p -e 's/\x0/ /g' $FILE_IN > $FILE_OUT 现在我正在Linux上工作,因此我希望能够使用sed命令。 我的问题: 此命令是否适合替换那些字符?我尝试过,而且似乎可行,但是我想确保: perl -p -e 's/[\x00-\x08\x0B\x0C\x0E-\x1F]/ /g' $FILE_IN > $FILE_OUT 我以为perl -p工作sed。那么,为什么上一个命令起作用(至少不会失败),而下一个命令却不起作用? sed -e 's/[\x00-\x08\x0B\x0C\x0E-\x1F]/ /g' $FILE_IN > $FILE_OUT 它告诉我: sed:-e表达式#1,字符34:无效的归类字符
11 sed  perl 


1
未知的tun0地址
我已经进行了一些搜索,或多或少地了解了tun0界面的作用。我从各种来源获得以下信息: 操作系统通过tun / tap设备发送的数据包将传递到用户空间程序,该程序将自身附加到该设备。用户空间程序还可以将包传递到tun / tap设备中。在这种情况下,Tun / Tap设备将这些数据包传递(或“注入”)到操作系统网络堆栈,从而模拟它们从外部源的接收。tun / tap接口是仅软件的接口,这意味着它们仅存在于内核中,并且与常规网络接口不同,它们没有物理硬件组件(因此没有物理线连接到它们)。 您可以将tun / tap接口看作是常规的网络接口,当内核确定是“在线”发送数据的时候,而是将数据发送到连接到该接口的某些用户空间程序。 现在,如果比较eth0和的输出,则会tun0看到类似这样的内容。 ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:14:22:50:78:71 inet addr:172.16.210.32 Bcast:172.16.255.255 Mask:255.255.0.0 ... UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <snipped> ifconfig tun0 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 …

7
如何用新行替换单词
我有一个包含以下数据的文本文件,每行以结尾|END|。 T|somthing|something|END|T|something2|something2|END| 我tryig更换|END|与\n新行的sed。 sed 's/\|END\|/\n/g' test.txt 但这会产生错误的输出,如下所示: T | s o m e ... 但是我想要的是: T|somthing|something T|something2|something2 我也尝试过tr。它也不起作用。

1
避免显示“与<host>的共享连接已关闭”消息
我正在管理许多drupal网站,并尝试使用drush自动化一些操作。使用站点别名的配置中指定的选项,Drush通过ssh在远程主机上本地调用drush。我进行了大量此类调用,因此为了加快速度,我将持久性ssh连接与ssh config一起使用,如下所示: Host * # see http://www.revsys.com/writings/quicktips/ssh-faster-connections.html ControlMaster auto ControlPath ~/tmp/%r@%h:%p ControlPersist 3600 我得到了提速,但是我也收到了这样的消息: $ drush @alias drupal-directory webform /var/local/www/example.com/htdocs/sites/all/modules/contrib/webform Shared connection to 12.34.56.78 closed. 关于共享连接的消息以及我想要的输出(严重?为什么不是stderr?)在stdout上,所以当我尝试在脚本中捕获输出时,这会引起问题: directory=$(drush @$alias drupal-directory $module) 我希望主连接是我已经打开的连接,但看起来并没有关闭。那么,也许匆匆忙忙地明确地使这个新连接成为主连接并关闭它?无论如何,有没有办法抑制有关连接关闭的消息? [这个问题是在drupal / drush上下文中,但是我认为它本质上是关于ssh的。这是正确的网站吗?] 编辑: 看来问题是特定-t于ssh选项的使用位置。我之所以使用它,是因为需要在各个点输入svn密码,如果没有-t,则不会显示密码提示。也许还有另一种方法可以阻止这些提示丢失?

2
recvmsg返回“ EAGAIN(资源暂时不可用)”
在最近的服务器移动之后,我们正在解决一个奇怪的问题,即其中一台服务器无缘无故失去n / w连接,并在几秒钟或几分钟内恢复连接。在/var/log/messages dmesg或mcelog 中没有任何痕迹。在尝试调试时,我发出strace ping google.com并说= -1 EAGAIN (Resource temporarily unavailable)。 有人可以解释这个消息的含义吗?ping可以解析google.com,但不会显示任何响应,就好像在防火墙中将ping回复设置为拒绝一样。 sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("74.125.131.113")}, msg_iov(1)=[{"\10\0005\321?i\0\3v\301lT\0\0\0\0\335\331\3\0\0\0\0\0\20\21\22\23\24\25\26\27"..., 64}], msg_controllen=0, msg_flags=0}, 0) = 64 recvmsg(3, 0x7fffd48b9cc0, 0) = -1 EAGAIN (Resource temporarily unavailable) PS:这是一个VMware VM,运行RHEL 6.5
11 networking  ping 

3
使用tail时禁止显示“文件被截断”消息
我使用拖尾一个日志文件tail -f messages.log,这是输出的一部分: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce eget tellus sit amet odio porttitor rhoncus. Donec consequat diam sit amet tellus viverra pellentesque. tail: messages.log: file truncated Suspendisse at risus id neque pharetra finibus in facilisis ipsum. 它显示tail: messages.log: file truncated文件何时被自动截断并且应该发生,但是我只想tail向我显示没有此截断消息的输出。 我已经尝试过使用,tail -f messages.log | grep …
11 grep  tail  output 

2
如何以非root用户身份启动“屏幕”会话
有没有办法以非root用户身份在RHEL框上打开新的“屏幕”会话?当我尝试以非root用户身份使用“ screen”命令打开新屏幕时,它失败,并且出现以下消息: Cannot open your terminal '/dev/pts/2' - please check. 我进行了一些研究,发现有人建议更改/ dev / pts上的权限,以授予非root用户(试图打开屏幕)读取/写入权限。尽管它可能会起作用,但它看起来并不是一个很好的解决方案。是否有允许非root用户打开屏幕会话的“合法”方式? 编辑:我的RHEL 5.5、6.2和6.5计算机上存在此问题。所有这些框上的屏幕版本为“屏幕版本4.00.03(FAU)2006年10月23日”。 PS:-我知道我可以以root和'su'身份打开屏幕会话以启动命令/进程,但这不是我想要的。

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.