Unix & Linux

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

4
多行Shell脚本注释-这是如何工作的?
最近,我偶然发现了以前从未见过的多行注释类型-这是一个脚本示例: echo a # : aaa : ddd # echo b 这似乎是可行的,甚至在vim语法方面也很突出。这种评论方式叫什么,如何找到有关它的更多信息?

6
混淆&&和||的使用 经营者
我浏览了一个/etc/rc.d/init.d/sendmail文件(我知道这几乎没用过,但是我正在学习考试),并且对&&和||操作符有些困惑。我已经阅读了可以在诸如以下语句中使用它们的地方: if [ test1 ] && [ test2 ]; then echo "both tests are true" elif [ test1 ] || [ test2 ]; then echo "one test is true" fi 但是,此脚本显示单行语句,例如: [ -z "$SMQUEUE" ] && SMQUEUE="QUEUE" [ -f /usr/sbin/sendmail ] || exit 0 这些似乎正在使用&&and ||运算符基于测试得出响应,但是我无法从这些运算符的这种特殊用法中提取文档。谁能解释在特定情况下这些工具的作用?


1
OOM杀手如何决定首先杀死哪个进程?
该答案根据的值解释了内核在遇到OOM情况时采取的措施sysctl vm.overcommit_memory。 当overcommit_memory设置为0或1时,将overcommit被启用,并且允许程序分配比实际可用更多的内存。 现在,当我们在这种情况下用尽内存时会发生什么?OOM杀手如何决定首先杀死哪个进程?

3
什么是伪终端(pty / tty)?
这可能是真正的基本问题,但我想彻底理解。 什么是伪终端?(tty / pty) 我们为什么需要它们?他们是如何引入的,有什么需要? 他们过时了吗?我们不再需要它们了吗?有什么替代它们的吗? 有有用的用例吗? 我做了什么: 阅读手册页-获得了一些信息,但没有确切的图片。 试图从Richard Stevens的Unix Network Programming中阅读它们。有一些信息,但没有why?一部分。
92 linux  terminal  pty 

2
如何在CentOS上安装dig?
我dig在新安装的CentOS上找不到该命令。我已经尝试过了,yum install dig但是它说找不到包。 如何在CentOS上安装dig?
91 yum  centos 

3
Linux如何“杀死”进程?
尽管我一直从事计算机工作数十年,从事Linux已有十年,但实际上,我实际上将大多数OS功能视为黑匣子,这与魔术无异。 今天,我考虑了该kill命令,尽管我每天多次使用它(无论是“正常”还是“ -9味道”),但我必须承认我完全不知道它在后台如何工作。 从我的角度来看,如果正在运行的进程是“挂起”的,我会调用kill它的PID,然后突然不再运行。魔法! 那里到底发生了什么?联机帮助页谈论“信号”,但可以肯定,这只是一个抽象。发送kill -9到流程不需要流程的合作(例如处理信号),只是杀死了它。 Linux如何阻止进程继续占用CPU时间? 是否已将其从计划中删除? 它会断开进程与打开文件句柄的连接吗? 进程的虚拟内存如何释放? 内存中是否有类似全局表的内容,Linux保留对进程占用的所有资源的引用,而当我“杀死”进程时,Linux只是遍历该表并逐个释放资源? 我真的很想知道所有这些!

3
为什么rm可以删除只读文件?
如果我创建了一个文件,然后将其权限更改为444(只读),怎么rm能删除它? 如果我这样做: echo test > test.txt chmod 444 test.txt rm test.txt ... rm将询问我是否要删除写保护的文件test.txt。我本以为rm无法删除这样的文件,所以我必须先做chmod +w test.txt。如果我这样做rm -f test.txt,然后rm将删除文件,甚至没有要求,即使它是只读的。 谁能澄清?我正在使用Ubuntu 12.04 / bash。

13
如果我有足够多的RAM,是否需要交换空间?
据我了解,Linux 交换分区的目的是从RAM中释放一些“不那么频繁访问”的信息,并将其移至硬盘驱动器上的特定分区(以使其读取或写入速度较慢为代价) ),从本质上允许活动应用程序使用更多的“高速内存”。 当您在具有少量RAM的计算机上并且如果用完时不希望遇到问题时,这非常有用。但是,如果您的系统具有16 GB或32 GB的RAM,并且假设您没有在StackExchange上运行MySQL数据库或在Linux中编辑1080p全长电影,那么是否应该使用交换分区?
91 memory  swap 



12
从命令行列出分区标签
是否有一条命令将列出所有分区及其标签?sudo fdisk -l并且sudo parted -l默认情况下不显示标签。 编辑:(根据下面的评论)我正在谈论ext2标签-您可以在gparted分区上设置的标签。 EDIT2:目的是列出未安装的分区(所以我知道要安装哪个分区)。

8
如果存在会话,如何使用附件启动tmux
如果我用 tmux attach 我可以附加到正在运行的会话,但是如果没有正在运行的会话,则只会收到错误 no sessions 如果没有任何会话在运行,如何自动启动新会话?就像是 tmux attach-or-create-new-session
91 tmux 

3
使用wget下载到与当前目录不同的目录
我需要使用wget将文件下载到目录/var/cache/foobar/(例如,如果我下载stackexchange-site-list.txt,则将其下载到/var/cache/foobar/stackexchange-site-list.txt) 这可能吗?curl也将是一个选项,但我宁愿不使用curl,因为默认情况下未安装它。
91 wget 


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.