进程管理:
自动执行进程的命令,at和batch。其中at制定进程执行的时间,batch在系统空闲时自动执行。crontab可以周期性的执行进程,比如让某脚本周期性的执行,常用于系统监测。它的命令格式如下:
时程表的格式如下 :
f1 f2 f3 f4 f5 program
其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程式。
具体可参见:http://baike.baidu.com/view/1229061.htm
ps和top命令都是用来查看进程状态的,不同点在于ps是静态显示,top是动态显示。top还能显示cpu,内存,虚拟内存的使用情况。
pstree:树状显示进程。
nice:程序的优先级设置。
kill+进程号 结束进程,但是ps命令如果不加-e选项,不会显示打开的进程,加了-e显示了很多,又不知道谁代表谁
查看当前使用的Shell:echo $SHELL
更改Shell:chsh 不知道参数怎么设,有时间再试试。
网络管理:
ifconfig:用于配置并查看网络接口的配置情况.ifconfig eth0 192.168.0.254 netmask 255.255.255.0 //配置eth0的IP地址,并激活
netstat:显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运作。netstat -na 可以查看MySQL等服务是否开启,以及端口号。 netstat -i 显示网卡运行情况 netstat -r 查看主机的路由列表
route:这个命令可以为ifconfig命令配置的网卡设置静态路由。
我们通过几个例子来说明如何使用route命令:
route add -net 127.0.0.0
这个命令将向路由表中添加一个指定地址或者网络的路由。注意此时网络为A类地址,掩码被设置为255.0.0.0,这个新添加的条目被连接到lo设备上。
route add -net xxx.xxx.xxx.xxx netmask 255.255.255.0 dev eth0
这个命令为IP地址为xxx.xxx.xxx.xxx的主机增加一个路由,它的网络掩码被设置为255.255.255.0。
route del -net xxx.xxx.xxx.xxx
此命令将删除xxx.xxx.xxx.xxx这个网络的路由。
使用route命令还可以很方便地对整个网络的路由信息进行管理,其输出结果是网络的路由表。
traceroute:用于显示数据包到达目的主机所经过的路由。
tcpdump:用于监视TCP/IP连接并直接读取数据链路层的数据包头。tcpdump -i eth0 src host hostname 可以读取主机hostname发送的所有数据;tcpdump -i eth0 src host hostname 可以监视所有送到主机hostname的数据包。
nslookup:查询域名对应的IP地址
sleep+n秒 表示执行后面的进程之前先暂停n秒
查看内存、磁盘使用情况:
free 监控内存使用情况
vmstat 监控虚拟内存的使用情况
df检查文件系统磁盘使用情况。即/,/boot还有挂载子盘的使用情况,用了多少空间,还有多少可用空间等。
du检查磁盘空间使用情况,统计目录或文件所占磁盘空间的大小。
fdisk -l: 列出磁盘分区情况
普通命令:
grep 用于文件内容查找。 如:grep -l “asiainfo” *.cc ,-l表示列出文件名
find 查找文件,对目录进行递归搜索,搜索后可以有相对应的操作(比如删除)。find /home -name "*.c"
sort 对文件中各行进行排序
uniq 对与排序后的文件,删除相邻重复的行
wc 统计文件字数。-c:统计字节数,-l:统计行数,-w:统计字数
comm 对两个已经排好序的文件进行比较。
diff 逐行比较两个文件之间,列出其不同之处。选项a,d,c分别表示附加,删除和修改。
ln 在文件之间建立链接,分为硬链接和软链接。
rm -r用来删除文件及递归删除目录,而rmdir -p来递归删除目录。
finger:让使用者查询其他使用者的信息。
用户及用户组管理:
id 显示用户名和组信息。
setuid/setgid也属于chmod的一种模式。一个目录被设定为setgid后,词目录下的创建的文件都具有和该目录相同的组。setuid使文件在执行过程中具有所有者的权限。chmod u+s filename,chmod g+s dirname。
/etc/passwd,/etc/group是linux下两个重要的账户,组管理文件,他们对应的影子文件分别是shadow和gshadow
useradd 添加用户
usermod 修改用户信息
userdel 删除用户
groupadd 创建用户组
groupmod 修改用户组属性
groupdel 删除用户组
系统变量:
env 是 environment (环境) 的简写,列出来所有的环境变量。
export 执行后跟env是一样的内容。不过,export 还能将变量转变成环境变量。想要让该变量内容继续的在子程序中使用,那么就请执行:
export 变量
这个东西用在『引用他人的档案或者其它程序』时,相当的重要的。基本上,环境变量可以让子程序继续引用的原因,是因为:
1. 当启动一个 shell ,操作系统分配一记忆区块给 shell 使用,此区域之变量可以让子程序存取;
2. 利用 export 功能,可以让变量的内容写到上述的记忆区块当中(环境变量);
当加载另一个 shell 时 (亦即启动子程序,而离开原本的父程序了),子 shell 3. 可以将父 shell 的环境变量所在的记忆区块导入自己的环境变量区块当中。
set 这个指令除了会将环境变量列出来之外,其它我们的自订变量,都会被列出来。因此,想要观察目前 shell 环境下的所有变量,就用 set 即可!
系统信息
uname 显示系统信息,包括主机名,系统版本,等信息。
软件管理:
查询系统中是否安装了vsftpd,可以用命令:rpm -qa | grep vsftpd