我通常mount
用来检查挂载了哪些文件系统。我也知道mount
和之间存在某种联系,/etc/mtab
但我不确定细节。阅读如何检查 /proc/ 是否已安装后,我变得更加困惑。
我的问题是:如何获得最精确的已挂载文件系统列表?我应该只使用mount
,还是阅读 的内容/etc/mtab
,还是 的内容/proc/mounts
?什么会给出最值得信赖的结果?
现在,我知道如何:
ulimit -n
lsof | wc -l
cat /proc/sys/fs/file-max
我的问题是:为什么在 Linux 中有打开文件的限制?
AFAIKdmesg
显示有关内核和内核模块的信息,/var/log/messages
也显示内核和模块产生的信息。
那么有什么区别呢?难道/var/log/messages
?的输出dmesg
?
更多可能有用的信息:
- 有一个内核环形缓冲区,我认为这是存储内核日志数据的唯一地方。
- IBM DeveloperWorks 上的文章“内核日志记录:API 和实现”描述了 API 和鸟瞰图。
我的桌面系统是:
$ uname -a
Linux xmachine 3.0.0-13-generic #22-Ubuntu SMP Wed Nov 2 13:25:36 UTC 2011 i686 i686 i386 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
通过运行ps a | grep getty
,我得到这个输出:
900 tty4 Ss+ 0:00 /sbin/getty -8 38400 tty4
906 tty5 Ss+ 0:00 /sbin/getty -8 38400 tty5
915 tty2 Ss+ 0:00 /sbin/getty -8 38400 tty2
917 tty3 Ss+ 0:00 /sbin/getty -8 38400 tty3
923 tty6 Ss+ 0:00 /sbin/getty -8 38400 tty6
1280 tty1 Ss+ 0:00 /sbin/getty -8 38400 tty1
5412 pts/1 S+ 0:00 grep --color=auto …
Run Code Online (Sandbox Code Playgroud) 运行cat /proc/mounts
,我得到这个(简化):
rootfs / rootfs rw 0 0
proc /proc proc rw,relatime 0 0
/dev/sda1 / ext3 rw,relatime,errors=continue,barrier=1,data=ordered 0 0
io /etc/blkio cgroup rw,relatime,blkio 0 0
...
Run Code Online (Sandbox Code Playgroud)
关于内容,来自 Red Hat 的文档说:
第一列指定挂载的设备,第二列显示挂载点,第三列告诉文件系统类型...
我不认为那rootfs
是一个设备,我想在里面找到这个设备,udev(/dev)
但我找不到它。所以我不知道挂载在哪个设备/
(你可能会说我可以mount
用来获取这些信息,但如果rootfs
这里不是通过mount
命令挂载呢)。
另一个示例是在 VMware ESX 3.x 服务器上,您在mount
的结果中找不到任何“vmfs”条目,但是通过cat /proc/mounts
,我得到/vmfs /vmfs vmfs rw 0 0
. 作为rootfs
例子,我不知道哪些设备与第一个“/ VMFS”这里无论是相关的。
问题:谁能告诉我第一列的/proc/mounts
真正含义是什么?
我跑后man ls
,它显示:
男人:找到所有匹配的手册页
* ls (1)
ls (1p)
男人:你想要什么手册页?
男人:
输入“1”后,状态栏上只显示“ Manual page ls(1) line ?/? (END) ”。
我想我还没有为 安装手册页ls
,所以我运行manpath
并得到以下输出:
/usr/share/man:/usr/local/man:/usr/local/share/man
就在目录下,/usr/share/man/man1/
我找到了 gzip 文件ls.1.gz
,我认为这是ls
.
那么为什么man ls
这里什么都不显示呢?
我正在研究kdump,这是一个 Linux 内核崩溃转储机制。根据documentation/kdump/kdump.txt
内核源代码树,我需要设置内核配置选项CONFIG_CRASH_DUMP=y
。
转储捕获内核配置选项(Arch Independent)
1) 在“处理器类型和功能”下启用“内核崩溃转储”支持:
CONFIG_CRASH_DUMP=y
但是之后make menuconfig
,我找不到所说的“内核崩溃转储”,也无法CONFIG_CRASH_DUMP
通过搜索文件找到.config
,为什么?
更多信息可能会有所帮助:
- 我正在使用 SLES11。
- Arch 是 X86_64
- .config 文件最初来自 /proc/config.gz。
- 查找一个看起来类似的选项:CONFIG_CRASHER=m
我在 Linux 服务器上安装了fishfish(一个用户友好的交互式命令行 shell),后来有人卸载了它,但我不知道。我chsh -s /usr/local/bin/fish
不小心运行后,现在无法登录服务器。出现错误消息“登录:没有外壳:没有这样的文件或目录”,这显然表明贝壳鱼不再存在。
服务器只提供了一个CLI接口,所以我连登录都无法登录时如何更改登录shell?