Tag Archives: Linux

解析Linux特殊文件

序言
 
  如果您有Dos和Windows经验,就大概知道系统存在若干类型的文件,如系统文件、只读文件、隐含文件等。在Linux/Unix下,文件类型远比Dos/Windows系统多样和复杂。本文以RedHat Linux为例,旨在使读者对Linux下的文件类型有更多的了解。文中的多数内容,对其他发行版的Linux以及Aix、Solaris、Freebsd等操作系统也同样正确。
 
Linux下可以用ls �l 命令来判断文件类型,如上 图所示。可以依据第一列中的10个字符来判断。
 
  • -rw-r—r—指明了1.txt文件是一个普通文件,1.txt和myprog04文件都是普通文件。以”-“开头的都是普通文件,而以”d”开头的是目录文件。
  • brw-rw—- 指明了/dev/sda1是一个块设备(Block Device)文件。以”b”开头的文件都是块设备文件。•
  • crw-rw—-指明了/dev/lp0是一个字符设备(Chartacter Device)文件,以”c”开头的文件都是字符设备文件。
  • srwxrwxrwx 指明了/var/lib/mysql/mysql.sock是一个socket文件。以””开头的文件都是socket文件。
  • prwxr—r–指明了了mypipe 是一个管道文件。管道文件的一个属性是”p”。
  • lrwxrwxrwx 指明了softlinkof1.txt 是一个软链接文件(或称符号链接文件),该文件指向了1.txt。以”l”开头的文件是软链接文件。
  • -rw-r—r—开头的hard_link_of_1.txt看上去是个普通文件,但它实际上是一个硬链接文件。
  • -rwsr-xr-x指明了myprog01是一个setUid的可执行文件,这是根据第四个字符”s”判断的。
  • -rwxr-sr-x指明了myprog03是一个setGid的可执行文件,这是根据第七个字符中的”s”判断的。
  • -rwsr-sr-x指明了myprog02是一个setUid加setGid的可执行文件,这是根据第四个和第七个字符中的”s”判断的。
  • drwxrwxrwt 中的第一个”d”字指明了tmp文件是一个目录,最后一个字符”t”指明了该目录被设置了粘着位。

Continue reading

smp的内核

对于p3、p4的smp,安装的内核应该为

apt-get installkernel-image-2.4.27-2-686-smp

不推荐安装2.6的。。。。可恶的ipv6。。。
 
然后卸载386内核

apt-get remove kernel-image-2.4.27-2-386

重建linux中的用户邮件箱

这里所说的邮件箱,就是当你ssh登录后。系统提示你有mail。就是这个东西。
今天用logwatch查看日志时,系统提示我的用户的mail邮件箱过大。已经有83m了。
登录后看看,原来已经有了800多封。。。因为我用cron设置了定时任务。所以,每天会收到nnnn封。而我又从来不查看和删除,导致越来越大。
准备正常方式删除,发现邮件损坏,正常方法还不能删除。只能全部干掉了。。
#cd /var/mail
#rm syxin (这个就是以我的用户命名的邮件文件)
#touch syxin(删除肯定会出错,所以要touch一个)
#chown syxin.mail syxin(给与正确的权限)
然后输入mailx。提示nomail,一切正常

进程管理及作业控制

 
Linux是一个多任务的操作系统,系统上同时运行着多个进程,正在执行的一个或多个相关进程称为一个作业。使用作业控制,用户可以同时运行多个作业,并在需要时在作业之间进行切换。本章详细介绍进程管理及作业控制的命令,包括启动进程、查看进程、调度作业的命令。

Continue reading

用 Logwatch 工具监控 Linux 系统 Log 日志

如果要想迅速的得到 Linux 环境中的日志报告信息, Logwatch 是一个很好的工具.
在debian上安装非常简单,只需要
#sudo apt-get install logwatch
查看昨天的信息,使用下面的命令就可以了。结果包括启动信息,登陆信息,磁盘使用状况等。
#logwatch –print
单独查看某项服务的信息,比如ssh,使用
#logwatch –service  sshd –print
具体使用可以
#logwatch –help
Usage: /usr/sbin/logwatch [–detail <level>] [–logfile <name>]
   [–print] [–mailto <addr>] [–archives] [–range <range>] [–debug <level>]
   [–save <filename>] [–help] [–version] [–service <name>]
   [–numeric] [–output <output_type>]
   [–splithosts] [–multiemail]
 
–detail <level>: Report Detail Level – High, Med, Low or any #.
–logfile <name>: *Name of a logfile definition to report on.
–service <name>: *Name of a service definition to report on.
–print: Display report to stdout.
–mailto <addr>: Mail report to <addr>.
–archives: Use archived log files too.
–save <filename>: Save to <filename>.
–range <range>: Date range: Yesterday, Today, All, Help
                             where help will describe additional options
–numeric: Display ddresses numerically rather than symbolically and numerically
           (saves  a  nameserver address-to-name lookup).
–debug <level>: Debug Level – High, Med, Low or any #.
–splithosts: Create a report for each host in syslog.
–multiemail: Send each host report in a separate email.  Ignored if
              not using –splithosts.
–output <output type>: Report Format – mail, html-embed, html or unformatted#.
–version: Displays current version.
–help: This message.
* = Switch can be specified multiple times…

但是每天ssh到服务器上使用太不方便,还好logwatch提供了mail功能
#nano /etc/logwatch/conf/logwatch.conf
修改下面的root为你自己的邮件地址
MailTo = root
同时,因为我们需要了解服务器的详细信息,所以,修改下面的
Detail = 是细节度,推荐 10 ,即最高