文件系统之/proc
linux系统中,/proc目录用来存放进程的状态信息的。除此之外,内核产生的所有状态信息和统计数据也在这个录下,因此,用户可以通过修改/proc下适当的文件地方法来改变系统的运行。但由于内核随时都在创建/proc下文件的内容,所以大多数文件ls查看时都为空。
/proc目录下有大量的子目录和文件。我们需要了解一些常用的
文件如:
/apm                            电源管理相关信息
/buddyinfo             内存分段信息
/cmdline                进程的完整命令(以null分隔)
/cpuinfo                探测cpu信息。
/crypto                  功能/加密模块等信息,使用(sha1加密)
/devices                 块、字符设备信息
/fb                        控制显示功能的方式
/filesystems            文件系统信息(内核支持的所有文件系统)
                            其中nodev的是没有使用的文件系统类型
/interrupts              中断信息
/iomen                  物理设备映射的内存信息,包过内存范围,内存位置等。
/kcore                   以核心文件系统存储的文件系统格式
/meminfo                     内存信息
/modules               模块信息ls mode命令就是调用此文件来显示模块信息的
/mount                  挂载信息
/partitions              分区信息
/pci                       设备pci信息
/proc目录子目录:
/sys         存放与系统运行相关的信息的。
/sys/kernel/     显然与内核有关
/sys/net           与网络有关的信息
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

一般情况下,使用strings命令查看/proc目录下的文件要比使用cat命令好一些。因为这些文档一般没有经过排版,使用cat非常难以看懂。下面说一下怎样通过修改/proc/sys目录下的文件来改变系统信息。
先看一个修改主机名的实例:
       echo “station11.example.com” > /proc/sys/kernel/hostname
其中station11.example.com是主机名,通过修改/proc/sys/kernel/目录下的hostname文件,把当前主机名修改为station11.example.com
再比如要关闭路由功能:
       echo “<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1” > /proc/sys/net/ipv4/ip_forward     1表示关闭0 表示开放。
这样修改的文件只对当前有效,重启后会失效的,如果想要重启服务后仍然有效,可以修改/etc/sysctl.conf   文件来配置所需的服务。但需要重启才能生效,可见这两种修改方法是相辅相成的。
                                          系统服务
访问控制台:
       访问控制台分为:
        物理控制台physical console     
        虚拟控制台virtual console
        串行控制台serial console
        系统控制台 system console
        伪控制台 pseudoterminal       
                    
linux系统中这五种控制台的表示方式分别为
物理控制台  /dev/tty0 或者 /dev/fb0
虚拟控制台    /dev/tty[1-6]
串行控制台    /dev/ttyS[1-2-3…]
系统控制台    /dev/ console
伪控制台       /dev/pts/[0-1-2-3…]
除了这些还有图形界面的控制台如x-window。x仅仅是一种协议,只规定了如何显示的规范,并没有具体的说显示内容。而x-window则是一个软件,有c/s模式之分。目前的xorgx-window的官方实现。有选x386xfree86两种版本。前者是商业服务软件,功能服务比较多,后者是开源软件,相对功能较少。
系统日志:
syslogd,当前系统之上的系统级别的常规日志信息。
klogd 记录内核活动信息。
auditd 审核日志进程。
日志进程syslogd的配置文件是/etc/syslog.conf。在这个日志配置文件中定义了系统日志记录那些内容、采用什么动作等。
日志文件类型:
       Regular File 记入普通文件 “-” 可以异步写入。
       Named Pipes 记入命名管道
       Terminal and Console 记录到终端和系统控制台
       Remote machine 记录到其它主机上(中心日志服务器)
              例:mail.=err  @192.168.0.23  记录到192.168.0.23主机上。注意这只是一厢情愿,要真存入192.168.0.23主机上还需要到对应主机上执行syslogd –h命令
       list of user  传递给用户列表
       everyone logged on 每一个登陆的用户。

 

/etc/syslog.conf配置文件中有个需要注意的内容:facility log_level(9)
facility 定义由谁产生日志信息。后边跟日志级别。
日志级别有9种:
debug 调试程序时的信息
info  通报信息。
notice 注意
warning  警告级别
warn   warning类似
err   其它错误
error  err类似错误
crit  紧急
alert  告警,当前必须立即纠正的状态
emergpanicl类似 通知所有用户的错误。

 

mail.=err        只记录某一个级别的信息精确匹配。

mail.!=err       记录所有不等于err级别的信息。

mail.err          所有大于等于err级别的信息

 

日常corn作业的几个命令:

tmpwatch  清除特定目录中的老文件。

logrotate  用于日志滚动

       weekly 每周日志滚动一次

rotate 4 每次滚动4个段。

       include 指定范围

logwatch  根据条件查看日志信息。

 

Mounting NFS Filesystems
#shoumount  -e  192.168.0.222      查看主机上的所有共享NFS文件
如果你想要挂载服务器192.168.0.222上的/var/ftp/public目录到你自己的/net目录下可以使用命令

#mount –t nfs 192.168.0.222 :/var/ftp/public   /net

这时在你的/net目录下就会有public目录的所有文件。你可以把它们当做本地文件一样使用,很放便。但是如果你重启了服务就需要重新执行上边的命令。为了避免这种情况,可以使用修改文件的方式。

1

编辑/etc/auto.master文件

#vim  /etc/auto.master

添加如下内容:

 /mnt  /etc/auto.server     

上边的文件auto.server是需要自己创建的文件,必须放在/etc下且以auto. 开头

保存退出

2

打开auto.server文件并添加如下内容:

#vim /etc/auto.server

       ftp -ro,init,hard   192.168.0.222:/var/ftp/public

保存退出即可

ftp  是你想要挂载到的那个目录,可以不存在,在你重启autofs服务后会自动生成,位置在你上个文件中配置的/mnt目录下。

-ro  只读挂载

init,hard  这两个是允许中断,在你被挂载的目录不存在时自动中断,不至于死机。

192.168.0.222:/var/ftp/public  被挂载的目录

3

重启服务

#service autofs  restart

这样你就可以在你的/mnt/ftp目录下看到192.168.0.222:/var/ftp/public的内容了。

 

如果你嫌这样看到的内容过多,只想看到所需的内容,方法和上边基本一样,只需要在第二步把/etc/auto.server文件内容ftp -ro,init,hard   192.168.0.222:/var/ftp/public

 修改为

* -ro,init,hard   192.168.0.254:/var/ftp/public &  即可

这样你只需输入/mnt/file-you-need  即可

注意file-you-need192.168.0.222:/var/ftp/public目录下的你需要的文件。

这样就可以自动挂载了。