在root模式下: # #delete files in trash # #date:2010-3-5 # #maker:tootwo # dir=/root/.Trash [ -d $dir ] x=$? y=0 if test $x -eq $y then (for i in $dir/* do rm $i echo "$i has been delete!" done) fi echo "Trash has been empty!" ......
我们一般使用“date -s”命令来修改系统时间。比如将系统时间设定成2010年3月5日的命令如下。
#date -s 03/05/10
将系统时间设定成中午8点52分0秒的命令如下。
#date -s 08:52:00
注意,这里说的是系统时间,是linux由操作系统维护的。
在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。如果要确保修改生效可以执行如下命令。
#clock -w
这个命令强制把系统时间写入CMOS。
......
来源:http://www.y768.com/content/view/5755/109/
Steve Best(sbest@us.ibm.com)
JFS 核心小组成员,IBM
2002 年 8 月
您可以用各种方法来监控运行着的用户空间程序:可以为其运行调试器并单步调试该程序,添加打印语句,或者添加工具来分析程序。本文描述了几种可以用来调试在 Linux 上运行的程序的方法。我们将回顾四种调试问题的情况,这些问题包括段错误,内存溢出和泄漏,还有挂起。
本文讨论了四种调试 Linux 程序的情况。在第 1 种情况中,我们使用了两个有内存分配问题的样本程序,使用 MEMWATCH 和 Yet Another Malloc Debugger(YAMD)工具来调试它们。在第 2 种情况中,我们使用了 Linux 中的 strace 实用程序,它能够跟踪系统调用和信号,从而找出程序发生错误的地方。在第 3 种情况中,我们使用 Linux 内核的 Oops 功能来解决程序的段错误,并向您展示如何设置内核源代码级调试器(kernel source level debugger,kgdb),以使用 GNU 调试器(GNU debugger,gdb)来解决相同的问题;kgdb 程序是使用串行连接的 Linux 内核远程 gdb。在第 4 种情况中,我们使用 Linux 上提供的魔术键控顺序(magic key sequence)来显示引发挂起问题的组件的信息。
常见 ......
ifconfig eth0 新IP
然后编辑/etc/sysconfig/network-scrIPts/ifcfg- eth0,修改IP
一、修改IP地址
[aeolus@db1 network-scrIPts]$ vi ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=219.136.241.211
NETMASK=255.255.255.128
GATEWAY=219.136.241.254
二、修改网关
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Aaron
GATEWAY=192.168.1.1
三、修改DNS
[aeolus@db1 etc]$ vi resolv.conf
nameserver 202.96.128.68
nameserver 219.136.241.206
四、重新启动网络配置
/etc/init.d/network restart
修改IP地址
即时生效:
# ifconfig eth0 192.168.0.20 netmask 255.255.255.0
启动生效:
修改/etc/sysconfig/network-scrIPts/ifcfg-eth0
修改default gateway
即时生效:
# route add default gw 192.168.0.254
启动生效:
修改/etc/sysconfig/network-scrIPts/ifcfg-eth0
修改DNS
修改/etc/resolv.conf
修改后可即时生效,启动同样有效
修改host name
即时生效:
# hostname fc2
启动生效:
修改/etc/sysconfig/network ......
void __init mem_init(void)
{
unsigned int codepages, datapages, initpages;
int i, node;
codepages = &_etext - &_text;//内核代码段的大小。
datapages = &_end - &__data_start;//内核数据段的大小。
initpages = &__init_end - &__init_begin;//内核初始化相关函数指针空间段的大小。
#ifndef CONFIG_DISCONTIGMEM//如果系统内存空间连续的话。
max_mapnr = virt_to_page(high_memory) - mem_map;//max_mapnr保存着最大低端内存页数。
#endif
if (meminfo.nr_banks != 1)//如果bank不止一个,说明可能存在内存孔洞。
create_memmap_holes(&meminfo);//对每个node的bank进行检查,只要发现前后属于这个node的相邻bank的收尾页号不一
  ......
什么是Socket
Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。
网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。常用的Socket类型有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。Socket建立为了建立Socket,程序可以调用Socket函数,该函数返回一个类似于文件描述符的句柄。socket函数原型为:
int socket(int domain, int type, int protocol);
domain指明所使用的协议族,通常为PF_INET,表示互联网协议族(TCP/IP协议族);
type参数指定socket ......