shell脚本,Linux命令shell usage怎么写写,开机中检查config,若里面flag=1,从备份分区

nonelse 的BLOG
用户名:nonelse
文章数:44
访问量:34455
注册日期:
阅读量:5863
阅读量:12276
阅读量:419837
阅读量:1108186
[匿名]shhsc:
51CTO推荐博文
前言:整理中....先更新一部分...
一、查看网络设置
查看本机的IP(查看本机网卡、MAC、IP等信息)#ifconfig -a其中eth0是第一块网卡,lo是默认的设备查看eth0网卡信息#ifconfig eth0 查看本机默认网关#netstat -rn或者#route -n以0.0.0.0开头的一行的Gateway即为默认网关 也可以查看/etc/sysconfig/network文件,里面有指定的地址!查看DNS servermore /etc/resolv.conf文件内容如下nameserver 202.206.32.1
二、更改网络设置
临时更改ip (重启会丢失)#ifconfig eth0 &新ip& 临时更改网关(重启会丢失)#route add default gw &网关的IP& 更改网关编辑 /etc/sysconfig/network添加或者更改GATEWAY=&ip_addr& 该文件格式NETWORKING=yesHOSTNAME=&hostname&GATEWAY=192.168.10.1 更改eth0网络接口的IP编辑 /etc/sysconfig/network-scripts/ifcfg-eth0添加或修改IPADDR=&ip_addr&NETMASK=255.255.255.0该文件格式如下DEVICE=eth0BOOTPROTO=staticBROADCAST=192.168.10.255IPADDR=192.168.10.22NETMASK=255.255.255.0NETWORK=192.168.10.0ONBOOT=yes 更改HOST名编辑以下2个文件/etc/sysconfig/network/etc/hosts重启network#/etc/init.d/network restart编辑完配置文件后不会应用,记得要重启网络后才会生效
博主前言:先转帖了再说,日后有空再整理下......注:关于网络部分已经删除,序号可能不连续============================================UNIX 技术交流的前提是: 了解,懂得UNIX ,要提高 UNIX 技术,就让我们我 学习UNIX 的一些基本知识吧!! 特此 总结这个帖子, 希望对大家有 一个 抛砖引玉的 作用@@@ 谢谢!
2、从Linux上远程显示Windows桌面 安装rdesktop包
4、 查出22端口现在运行什么程序 lsof -i :22
6、RH8.0命令行下轻松改变ping 的TTL值
#sysctl -w net.ipv4.ip_default_ttl=N (N=0~255),若N&255,则ttl=0
7、RH8.0命令行下轻松改变系统配置默认值
编辑/etc/sysctl.conf, 例如,将 net.ipv4.ip_forward = 0 变为 net.ipv4.ip_forward = 1 重启后生效,用sysctl -a查看可知
8、mount局域网上其他windows机器共享出的目录
mount -t smbfs -o username=guest,password=guest //machine/path /mnt/cdrom
9、允许|禁止root通过SSH登陆
修改sshd_config:PermitRootLogin no|yes
10、 让root直接telnet登陆
编辑/etc/pam.d/login,去掉 auth required /lib/security/pam_securetty.
11、 改变telnet的端口
/etc/services这个文件里可修改想要的端口号.重启守护进程
12、终端模式有问题
export TERM=vt100
13、模仿超级终端,LINUX里什么程序连接路由器和交换机(alstone) minicom
14、 ssh上来能不能不自动断线
那是timetou的设置,修改TMOUT变量值
15、用什么工具做入侵检测 snort
16、Linux下检测程序内存泄漏的工具 cchecker或是efence库都可以
17、linux下如何监视所有通过本机网卡的数据 tcpdump iptraf
18、为什么root执行好多命令都说command not found 一定是telnet上来的,然后su成root的,修改su命令格式,应该是su - root 0025 关闭用户的POP3权限(tiansgx) 把POP3的端口关了就可以了。 在文件/etc/services中找到这一行 pop-3 110/tcp 把这一行前加个'#',把它注释掉就可以了。
19、锁定wu-ftp用户目录(wangla) 编辑ftpaccess文件 restricted-uid * 这一句很重要,限制了ftp用户在自己的目录里。
20、服务器怎么不让telnet 服务器上必须启动telnet服务 && 服务器的防火墙优先级应该设为低
21、防止任何人使用su命令成为root
vi /etc/pam.d/su auth sufficient /lib/security/pam_rootok.so debug auth required /lib/security/pam_wheel.so group=wheel
在/etc/pam. d/su配置文件中定义了wheel组.
23、在redhat9下配samba,win2000能访问,win98不能访问?
如果是wind98必需修改注册表:
HKEY_LOCAL_MACHINE/system/correntcontrolset/services/Vxd/VNETSUP下建个D值:EnablePlainTextpasswd,键值1
24、如何得到网卡的MAC地址
arp -a | awk '{print $4}'
25、如何得到网卡的IP地址
ifconfig eth0 |awk '/inet addr/ {split($2,x,":");print x[2]}'
26、如何全面卸载Linux?如何删除它的分区?
进入linux, 用fdisk删除linux分区和swap区。
重新启动,在dos下运行fdisk /mbr,恢复主引导记录。
28、启动环境设置
Ret Hat Linux启动到文字界面(不启动xwindow)
将/etc/inittab中 id:5:initdefault: 一行中的5改为3
29、redhat的自动升级更新问题
在/corp/support/errata/找到补丁,6.1以后的版本带有一个工具up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。 升级除kernel外的rpm: up2date -u 升级包括kernel在内的rpm: up2date -u -f
30、windows下看linux分区的软件
Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip
31、mount用法
fat32的分区
mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
ntfs的分区
mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom
mount -o loop /abc.iso /mnt/cdrom
mount /dev/fd0 /mnt/floppy
mount /dev/sda1 /mnt/cdrom
所有/etc/fstab内容
mount -a 可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.
32.a 删除名为-a的文件
rm -- -a 告诉rm这是最后一个选项,
参见getopt ls -i 列出inum,
然后用find . -inum inum_of_thisfile -exec rm '{}' ;
32.b 删除名为a的文件
32.c 删除名字带的/和‘'文件
这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用 1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。 2.也可将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统, clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it. 最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!
32.d 删除名字带不可见字符的文件
列出文件名并转储到文件:ls -l &aaa 然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:
vi aaa [rm -r ******* ]
把文件加上执行权限 chmod +x aaa 执行 $aaa
32.e 删除文件大小为零的文件
rm -i `find ./ -size 0` find ./ -size 0 -exec rm {} ; find ./ -size |xargs rm -f
&非常有效 for file in *
#自己定义需要删除的文件类型 do if [ ! -s ${file} ] then rm ${file} echo "rm $file Success!" fi done
33、加装xwindow
用linux光盘启动,选择升级,然后单独选择包,安装即可
34、删除linux分区
做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除.
35、如何退出man&&
36、 找回忘记了的root口令(lilo/grub) 三种办法:
1.在系统进入单用户状态,直接用passwd root去更改
2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下: cd /mnt mkdir hd mount -t auto /dev/hdaX(原来/分区所在的分区号) hd cd hd chroot ./ passwd root 这样可以搞定
3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同 rh8中
1. 在出现 lilo: 提示时键入 linux single 画面显示 lilo: linux single
2. 回车可直接进入linux命令行
3. #vi /etc/shadow 将第一行,即以root开头的一行中root:后和下一个:前的内容删除, 第一行将类似于 root::...... 保存
4. #reboot重启,root密码为空
1. 在出现grub画面时,用上下键选中平时启动linux的那一项(别选dos),然后按e键 2. 再次用上下键选中平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键
3. 修改现在见到的命令行,加入single,结果如下: kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/
4. 回车返回,然后按b键启动,即可直接进入linux命令行
5. #vi /etc/shadow 将第一行,即以root开头的一行中root:后和下一个:前的内容删除, 第一行将类似于 root::...... 保存
6. #reboot重启,root密码为空 0015 使ctrl + alt + del失效 vi /etc/inittab 将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉,就可以了
37、如何看出redhat的版本是7还是8
cat /proc/version或者cat /etc/redhat-release或者cat /etc/issue
38、文件在哪个rpm中
上www.rpmfind.net上搜,或者rpm -qf 文件名得到
39、把man或info的信息存为文本文件
以 tcsh 为例: man tcsh | col -b & tcsh.txt info tcsh -o tcsh.txt -s
40、利用现存两个文件,生成一个新的文件
1. 取出两个文件的并集(重复的行只保留一份)
2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)
3. 删除交集,留下其他的行
1. cat file1 file2 | sort | uniq
2. cat file1 file2 | sort | uniq -d
3. cat file1 file2 | sort | uniq -u
41、设置com1口,让超级终端通过com1口进行登录 确认有/sbin/agetty,编辑/etc/inittab,添加 7:2345:respawn:/sbin/agetty /dev/ttyS0 bps是因为联路由器缺省一般都是这种速率,也可以设成 1、5 修改/etc/securetty,添加一行:ttyS0,确保root用户能登录 重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了
42、 删除目录下所有文件包括子目录
rm -rf 目录名
43、查看系统信息
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中断
cat /proc/ioports - 设备IO端口
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有设备的所有分区
cat /proc/pci - PCI设备的信息
cat /proc/swaps - 所有Swap分区的信息
cat /proc/version - Linux的版本号 相当于 uname -r uname -a - 看系统内核等信息
44、去掉多余的回车符 sed 's/^M//' test.sh & back.sh, 注意^M是敲ctrl_v ctrl-m得到的 或者 dos2unix filename
45、切换X桌面
switchdesk KDE或者switchdesk GNOME
46、通用的声卡驱动程序
OSS / ALSA www.alsa-project.org/
47、改变redhat的系统语言/字符集
修改 /etc/sysconfig/i18n 文件,如 LANG="en_US",xwindow会显示英文界面, LANG="zh_CN.GB18030",xwindow会显示中文界面。
还有一种方法 cp /etc/sysconfig/i18n $HOME/.i18n 修改 $HOME/.i18n 文件,如 LANG="en_US",xwindow会显示英文界面, LANG="zh_CN.GB18030",xwindow会显示中文界面。 这样就可以改变个人的界面语言,而不影响别的用户
48、把屏幕设置为90列
stty cols 90
49、使用md5sum文件 md5sum isofile & hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值 是否一致 md5sum Cc hashfile
50、一次解压多个zip文件
unzip "*",注意引号不能少
51、看pdf文件
使用xpdf或者安装acrobat reader for linux
52、查找权限位为S的文件
find . -type f ( -perm -04000 -o -perm -02000 ) -exec ls -lg {} ;
53、装中文输入法 以redhat8为例
xwindow及其终端下的不用说了吧,缺省就安装了,用ctrl-space呼出。 现在讨论纯console,请下载zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz , 放在任一目录中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure, make, make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。
54、把弹出的光盘收回来
#eject -t
55、cd光盘做成iso文件
cp /dev/cdrom xxxx.iso
56、快速观看开机的硬件检测
dmesg | more
57、查看硬盘的使用情况
df -k 以K为单位显示
df -h 以人性化单位显示,可以是b,k,m,g,t..
58、查看目录的大小
du -sh dirname -s 仅显示总计 -h 以K、M、G为单位,提高信息的可读性。KB、MB、GB是以1024为换算单 位, -H以1000为换算单位。
59、查找或删除正在使用某文件的进程
fuser filename fuser -k filename
61、字符模式下设置/删除环境变量
设置:export 变量名=变量值
删除:unset 变量名
设置:setenv 变量名 变量值
删除:unsetenv 变量名
62、ls如何看到.开头的文件
63、rpm中的文件安装到哪里去了
rpm -qpl aaa.rpm
64、使用src.rpm rpmbuild --rebuild *.src.rpm
65、vim中显示颜色或不显示颜色 vi ~/. 如果有syntax on,则显示颜色,syntax off,则不显示颜色
66、linux是实时还是分时操作系统
67、 make bzImage -j的j是什么意思
-j主要是用在系统硬件资源比较大的时候,比较富裕的时候,用这个可以来加快编译的速度,如-j 3
68、源码包怎么没有
没有安装源代码,把光盘上rpm -i *kernel*source*.rpm装上,就可以看到源代码了。
69、修改系统时间
date -s “ cst”,cst指时区,时间设定用date -s 18:10
70、开机就mount上windows下的分区
自动将windows的d盘挂到/mnt/d上,用vi打开/etc/fstab,加入以下一行 /dev/hda5 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0 注意,先得手工建立一个/mnt/d目录
71、linux怎么用这么多内存
为了提高系统性能和不浪费内存,linux把多的内存做了cache,以提高io速度
72、FSTAB 最后的配置项里边最后两个数字是什么意思
第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;
第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号 1 是root文件系统,2 是别的文件系统。fsck按序号检测磁盘,0表示该文件系统不被检测 dump 执行ext2的文件系统的备份操作 fsck 检测和修复文件系统
73、linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass) vi /etc/login.defs,改PASS_MIN_LEN
74、linux中的翻译软件
星际译王 xdict
75、不让显示器休眠
setterm -blank 0 setterm -blank n (n为等待时间)
76、用date查询昨天的日期
date --date='yesterday'
77、xwindow下如何截屏
Ksnapshot或者gimp
78、解压小全
tar xvfj example.tar.bz2
tar xvfz example.tar.gz
tar xvfz example.tgz
tar xvf example.tar
unzip example.zip
79、在多级目录中查找某个文件的方法
find /dir -name filename.ext du -a | grep filename.ext locate filename.ext
80、不让普通用户自己改密码
[root@xin_fc etc]# chmod 511 /usr/bin/passwd
又想让普通用户自己改密码
[root@xin_fc etc]# chmod 4511 /usr/bin/passwd
81、显卡实在配不上怎么办
4.3安装就可以了.
82、超强删除格式化工具
比PQMagic安全的、建立删除格式化的小工具:
sfdisk.exe for msdos
83、如何让xmms播放列表里显示正确的中文
-*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-
把这个东西完全拷贝到字体里面
操作方法: 右键单击xmms播放工具的任何地方 会看到一个"选项",然后选择"功能设定"选择"fonts" 然后把上面的字体完整的拷贝到"播放清单"和 "user x font
84、linux下听MP3
redhat光盘原带的xmms不能播放MP3(无声), 要下载安装一个RPM包:xmms-mp3-1.2.7-13.p.i386.rpm安装即可.
打开xmms,ctl-p,在font栏中 先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字 体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动 程序 1.2.7 [lioOSS.so]即可正常播放MP3文件.
85、安装中文字体
(参考文献:
SimSun18030.ttc在微软网站可下载,
030.asp  它是个msi文件,在 mswindows中安装,装好后在windows目录下的fonts 目录里面就可以找到它。把simsun.ttc,SimSun18030.ttc,tahoma.ttf,tahomabd.ttf 拷贝到/usr/local/temp,然后下载的shell文件也放到这个目录里,然后打开终端 cd /usr/local/temp chmod 755 sm.sh ./sm.sh
86、装载windows分区的FAT32、FAT16文件系统
以root身份进入KDE,点击桌面上的“起点”图标,在/mnt目录下建立如下文件夹:c,d,e,f,g,usb.分别用作windows下各分区和usb闪盘。   
用文本编辑器打开/etc/fstab 文件.加入如下:
/dev/hda1 /mnt/c vfat iocharset=gb2312,umask=0,codepage=936 0 0
/dev/hda5 /mnt/d vfat iocharset=gb2312,umask=0,codepage=936 0 0
/dev/hda6 /mnt/e vfat iocharset=gb2312,umask=0,codepage=936 0 0
/dev/hda7 /mnt/f vfat iocharset=gb2312,umask=0,codepage=936 0 0
/dev/hda8 /mnt/g vfat iocharset=gb2312,umask=0,codepage=936 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,iocharset=gb2312,owner,kudzu,ro 0 0
/dev/sda1 /mnt/usb vfat iocharset=gb2312,umask=0,codepage=936 0 0
存盘退出. 重新启动后即可正常访问FAT32或FAT16格式分区,解决显示WINDOWS分区下和光盘中文文件名乱码 问题.其中共六列,每列用Tab键分开。注意此方法只能mount上Fat 分区格式.sda1是闪盘。
87、在X下使用五笔和拼音,区位输入法
从http://www.fcitx.org/ 上下载fcitx的rpm包安装即可
87、在Linux下如何解压RAR文件
下载RAR for Linux 3.2.0,解压后make 然后可以用unrar e youfilename.rar解压rar文件
88、硬盘安装后怎么添加/删除rpm包
redhat-config-packages --isodir= 可以指定iso文件所在的目录
89、字符下控制音量
90、用dd做iso
dd if=/dev/cdrom of=/tmp/aaa.iso
91、 删除几天以前的所有东西(包括目录名和目录中的文件)
find . -ctime +3 -exec rm -rf {} ; 或 find ./ -mtime +3 -print|xargs rm -f -r
92、用户的crontab在哪里
/var/spool/cron/下以用户名命名的文件
93、以不同的用户身份运行程序
su - username -c "/path/to/command" 有时候需要运行特殊身份的程序, 就可以让su来做
94、如何清空一个文件
& filename
95、为什么OpenOffice下不能显示中文
更改字体设置 tools-&options-&font replacement Andale Sans UI -& simsun
96、如何备份Linux系统
Symantec Ghost 7.5以后的版本支持Ext3 native复制
97、linux上的partition magic
Linux下一个有用的分区工具: parted 可以实时修改分区大小, 删除/建立分区.Linux联盟收集整理
98、/proc/sys/sem中每项代表什么意思?
/proc/sys/sem内容如下 250
这4个参数依次为
SEMMSL(每个用户拥有信号量最大数量),
SEMMNS(系统信号量最大数量),
SEMOPM(每次semop系统调用操作数),
SEMMNI(系统信号量集最大数量)
99、 Grub 引导菜单里 bigmem smp up 都是什么意思?
smp: (symmetric multiple processor)对称多处理器模式
bigmem: 支持1G 以上内存的优化内核
up:(Uni processor) 单处理器的模式
100、Oracle的安装程序为什么显示乱码?
现在Oracle的安装程序对中文的支持有问题,只能使用英文界面来安装,在执行runinstaller之前,执行:export LANG=C;export LC_ALL=C
101、 linux下文件和目录的颜色代表什么
蓝色表示目录;绿色表示可执行文件;红色表示压缩文件;浅蓝 色表示链接文件;灰色表示其它文件;红色闪烁表示链接的文件有问题了;黄色是设备文件,包括block, char, fifo。 用dircolors -p看到缺省的颜色设置,包括各种颜色和“粗体”,下划线,闪烁等定义。
102、mysql的数据库存放在什么地方
1. 如果使用rpm包安装,应该在/var/lib/mysql目录下,以数据库名为目录名
2. 如果源码安装在/usr/local/mysql中,应该在/usr/local/mysql/var中,以数据库名为目录名
103、如何新增一块硬盘
一、关机,物理连接硬盘 如果是IDE硬盘,注意主、从盘的设置;如果是SCSI硬盘,注意选择一个没有被使用的ID号。
二、开机,检查硬盘有没有被linux检测到 dmesg |grep hd*(ide硬盘) dmesg |grep sd*(SCSI硬盘) 或者 less /var/log/dmesg 如果没有检测到新硬盘,重启,检查连线,看看bios有没有认出它来。
三、分区 可以使用fdisk,Sfdisk或者parted(GNU分区工具,linux下的partition magic) 四、格式化 mkfs 五、修改fstab vi /etc/fstab
104、linux下怎么看分区的卷标
e2label /dev/hdxn, where x=a,b,c,d....; n=1,2,3...
105、RH8,9中安装后如何添加新的语言包
1.放入第一张光盘
2.cd /mnt/cdrom/Redhat/RPMS
3.rpm -ivh ttfonts-ZH_CN-2.11-29.noarch.rpm(简体中文,可以用tab键来补齐后面的部分,以免输入有误)
4.rpm -ivh ttfonts-ZH_TW-2.11-15.noarch.rpm(繁体中文) 如果还想装日文、韩文,试试第二张光盘上的ttfonts*.rpm.
9.0不在第一张盘上,在第三张盘上.rpm包名分别为: ttfonts-zh_CN-2.12-1.noarch.rpm(简体中文) ttfonts-zh_TW-2.11-19.noarch.rpm
106 配置telnet服务
1. 安装telnet-server软件包。(略)2. 设置telnet-server的启动运行  telnet server不作为独立的服务器程序运行,而是受xinetd程序的控制,启动配置文件为/etc/xinetd.d/telnet,默认xinetd程序并不启动该服务,可在chkconfig --list看出telnet是关闭的,/etc/xinetd.d/telnet中disable=yes可通过下面的方式启动telnet server: 1) chkconfig telnet on  //该命令修改了/etc/xinetd.d/telnet的配置,设置disable=no 2) service xinetd restart 再次chkconfig --list看到telnet server已经启动。%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%107 让bash命令行可以输入汉字,
编辑~/.inputrc,添加:set meta-flag onset convert-meta offset output-meta on
让less命令显示汉字,在~.bashrc中加入: export LESSCHARSET=latin1
让ls命令显示汉字文件和目录名,在~.bashrc中加入: alias ls='ls --show-control-chars --color=auto' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108 Linux下配置DHCP服务器
  Redhat使用dhcpd进程提供DHCP服务,启动时dhcpd自动读它的配置文件/etc/dhcpd.conf。dhcpd将客户的租用信息保存在/var/lib/dhcp/dhcpd.leases文件中,该文件不断被更新,从这里面可以查到IP地址分配的情况。
  dhcpd为了向一个子网提供服务,需要知道子网的网络地址和网络掩码,并且还要知道地址分配的范围,下面给出一个简单的dhcpd.conf文件:
  subnet 192.168.100.0 netmask 255.255.255.0 {
  range 192.168.100.10 192.168.100.253;
  此例中,dhcpd将给192.168.100.0网络分配192.168.100.10到192.168.100.253的IP地址。
  租期时间可以从0秒到无限长,可以根据需要来定。缺省的租期时间为一天,即86400秒。可以为主机定义两个租期长度:
  default-lease-time 默认租期时间;
  max-lease-time 用户可以获得的最长租期时间。
  下面的配置将缺省的租期时间设置为10分钟,最长租用时间为1小时:
  subnet 192.168.100.0 netmask 255.255.255.0 {
   range 192.168.100.10 192.168.100.253;
   default-lease-time 600;
   max-lease-time 3600;
  DHCP还可以向客户提供更多的参数,这些参数可以用option来指定,例如:
  subnet 192.168.100.0 netmask 255.255.255.0 {
  range 192.168.100.10 192.168.100.253;
   default-lease-time 600;
   max-lease-time 3600;
   option subnet-mask 255.255.255.0;
   option routers 192.168.100.254; 默认路由
   option domain-name-servers 202.102.134.68; DNS服务器
现在大家对DHCP配置应该有个了解了,其实过程就是这么简单,中间就隔了一层窗户纸。
  实际演练
  接下来给大家一个示例,把我的redhat9.0配置成一台DHCP服务器。
  vi /etc/dhcpd.conf
  配置后,我的机器的该文件内容如下(注释的部分都已经删除掉了,至于原文,大家可以对照/usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sample文件):
  [root@rh9 test]# more /etc/dhcpd.conf
  ddns-update-
  ignore client-
  subnet 192.168.0.0 netmask 255.255.255.0 {
   option routers 192.168.0.1;
   option subnet-mask 255.255.255.0;
   option broadcast-address 192.168.0.255;
   option domain-name-servers
  202.96.199.133, 202.96.133.134;
   range dynamic-bootp 192.168.0.1 192.168.0.255;
   default-lease-time 21600;
   max-lease-time 43200;
解释一下配置部分:
首先subnet定义了网络的地址,然后option routers定义了网关地址;
subnet-mask定义子网掩码;
broadcast-address定义广播地址;
domain-name-servers定义DNS NAMESERVER的地址;
dynamic-bootp是给客户端分配的地址,定义的是192.168.0.1-- 192.168.0.255整个网段地址;
最后2行是讲分配出的地址的缺省租期时间设置为10分钟,最长租用时间为1小时。
这样,一个DHCP服务器就配置好了。
  我们可以测试一下结果:在另外一个redhat linux7.2上,把IP设置成DHCP主机的IP地址,通过netconfig命令配置。
  检查配置:
  [root@rh72 root]# more /etc/sysconfig/ network-scripts/ifcfg-eth0
  DEVICE=eth0
  ONBOOT=yes
  BOOTPROTO=dhcp
  [root@rh72 root]#
  确定网卡已经是DHCP的了。
  [root@rh72 root]# ifconfig
  eth0 Link encap:Ethernet HWaddr 00:0C:29:A3:C6:71
   inet addr:192.168.0.254 Bcast:192.168.0.255 Mask:255.255.255.0
  查看地址,发现ETH0已经分配了一个254的地址,说明DHCP服务器配置成功。
  至此,我们已经完成了一台Linux DHCP服务器的安装和配置工作。在实际的使用过程中,上述操作步骤应该可以满足一般应用的需求,但是我们还需要经常研究具体的命令参数,让DHCP服务器能更好地为我们服务
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
109 VNC 虚拟网络计算
  VNC(Virtual Network Computing,虚拟网络计算),是用来显示远程计算机整个桌面的轻量型远程控制程序。1. 下载:2. 使用方法:1) 服务器端:#vncserver$vncserver注意到每个用户都可以启动自己的vncserver,每个用户可以启动多个vncserver,用显示端口号:1,:2,:3等等来标识。2) 客户端:a)在linux下,运行vncviewer命令即可,服务器地址的写法形如192.168.3.119:1b)在windows下,运行windows版本的vncviewer即可,用法与linux下相近。c)用浏览器(平台无关),作为java applet来实现,以形如http://192.168.3.119:5801的方式来启动3) 密码修改:第一次启动vncserver会提示输入密码,以后要修改的话,运行:#vncpassword4) 停止vnc server:#vncserver -kill :1#vncserver -kill :2注意到vncserver只能由启动它的用户来关闭,即时是root也不能关闭其它用户开启的vncserver,除非用kill命令暴力杀死进程。5) 指定显示端口号启动VNC server:#vncserver :3$vncserver :66) 设置VNC server分辨率:#vncserver -geometry 800x600#vncserver -geometry 640x4807) 设置vncserver的色深:8位为256色,16位为64k色#vncserver -depth 8#vncserver -depth 168) 稳定性设置:vncserver默认在多个客户机连接同一个vncserver的显示端口时,vncserver端口旧连接,而为新连接服务,可通过-dontdisconnect拒绝新连接请求而保持旧的连接。9) 设置vncserver的同一个显示端口可以连接多个客户机#vncserver -alwaysshared10) vnc的反向连接大多数情况下,vncserver总处于监听状态,vnc client主动向服务器发出请求从而建立连接。然而在一些特殊的场合,需要让vnc客户机处于监听状态,vncsrever主动向客户机发出连接请求,此谓vnc的反向连接。主要步骤:a) 启动vnc client,使vncviewer处于监听状态#vncviewer -listenb) 启动vncserver#vncserverc) 在vncserver端执行vncconnect命令,发起server到client的请求#vncconnect -display :1 192.168.3.69%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
110 GRUB入门LILO 需要知道你的内核在驱动器上的实际位置,但是GRUB却不需要,它不仅能读文件系统还能识别内核映像,而且它还支持最新的 2.4.1 内核所带的 Reiser 日志文件系统。这意味着你不必在更新内核或者改变配置文件之后重新安装GRUB。如果BIOS 支持LBA 的话,也没有1024 柱面的问题。另外还支持网络启动和无盘客户机。
然而,或许我们对LILO 太熟悉了吧,也或许GRUB 还有很多需要完善?总之,安装 GRUB 看起来并不是一件很轻松的事情。下面我们就详细介绍GRUB 的安装和配置。
在 /tmp 目录下解开文件:
# tar zxvf grub-0.5.96.1.tar.gz
进入 "grub-0.5.96.1" 目录,编译程序:
# ./configure # make # make install
和许多我们平常看到的多重启动管理程序一样,GRUB 供一个菜单界面(LILO 不是菜单界面的)。GRUB的缺省安装位置为 /boot/grub ,配置文件也放在这个目录下。缺省的配置文件名为 menu.lst,这个文件的功能就像和 lilo.conf一样,定义多重启动选项以及磁盘映像。
我们来看一个 menu.lst 文件的示范例子:
timeout 5 color black/yellow yellow/black default 0 password freeos
title My Mandrakekernel (hd0,1)/vmlinuz root=/dev/hda3 idebus=66
title My Red Hatkernel (hd0,6)/boot/vmlinuz root=/dev/hda7 idebus=66
title W2K Proroot (hd0,0) makeactive chainloader +1
让我们详细分析一下各个选项的含义:
timeout - 缺省入口的显示延迟时间(秒)color - 菜单显示的颜色组合,第一组颜色为前景色和背景色,第二组为高亮时的组合。default - 定义缺省的启动入口,这里的 0 就是使用定义的第一个入口。password - 定义进入GRUB 高级特性时需要的口令。GRUB 利用其能读取文件系统的特色,提供十分强大的功能。例如用户可以在grub 的启动提示符下输 'cat /etc/shadow' 来读包含加密口令的文件,而不需要进入你的系统!所以,为你的系统设置一个口令十分重要。
下面分析启动入口,每一个入口都应该以一个 'title' 的关键字开始,后面跟上对该启动入口的描述。接下来就是 'kernel' 入口,
kernel (hd0,1)/vmlinuz root=/dev/hda3 hdc=ide-scsi
根据 GRUB 对设备的命名规则,我们可以很容易的理解上面这行的含义:软驱设备名为 fdx ,硬盘为 hdx,需要记住的是 GRUB 从0 开始计数,所以第一台硬盘为 hd0 而不是 hd1。设备名用括号括起来,硬盘上的分区用逗号连接。例如 (hd0,1) 表示第一台硬盘上的第二个分区,而 (hd1,5) 就表示第二台硬盘上的第一个逻辑分区。
GRUB 能读取大多数文件系统,上面这一行指定 GRUB 寻找位于第一台硬盘上第二基本分区上的 /vmlinuz 文件,你也需要指定 'root=/dev/hda3' (假设你的根文件系统位于/dev/hda3),否则内核就不能挂接上根文件系统,之后就是你自己想加入的其他参数了。这些参数就和LILO 启动时传递给内核的参数一样,或者说和 lilo.conf 中 append 后面的参数一样。
另外一个比较特别的入口是启动Windows 2000 的入口,root 入口指向 Windows 2000 的安装位置(C:),接下来的入口设置分区的激活标志,最后的入口告诉 GRUB 搜索分区的第一个扇区来启动那里的操作系统。
以上是对GRUB 的一个典型的多重启动设置的分析,在正式开始安装GRUB 之前,建议你手头有一张LILO 启动盘或者一张应急启动盘,以防不测。
以root 登录,输入"grub"命令以后,就会看到如下的画面:
GRUB version 0.5.96.1 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ]
以上看到的就是 grub 提示符,我们要在这个提示符下面安装GRUB。
grub& install (hd0,1)/boot/grub/stage1 d (hd0) (hd0,1)/boot/grub/stage2 p (hd0,1)/boot/grub/menu.lst
GRUB 分为两个主要的步骤, stage1 和 stage2。Stage1 是一段嵌入MBR 的迷你代码。Stage2 是主要部分,在 stage1 把控制权传递给它后,就由它来接管所有事情。
install 后面指定stage1 的位置,我们不仅说明了其分区位置:(hd0,1),因为 GRUB 能读取文件系统,所以还说明了分区上目录位置:/boot/grub/stage1,d 参数表示 stage1 将寻找 stage2 所在的磁盘。接着就是 GRUB 的安装位置:(hd0) ,这里就是指安装在MBR。后面的参数指定 stage2 的位置:(hd0,1),和 stage1 的定义一样。p 参数指定 menu.lst 文件的位置。
对于 /boot 作为单独的分区的例子,需要采用下面的命令行:
grub& install (hd0,1)/grub/stage1 d (hd0) (hd0,1)/boot/grub/stage2 p (hd0,1)/grub/menu.lst
以上例子假设 /boot 位于 (hd0,1) (也就是hda2),而 / 位于(hd0,2) (也就是 hda3) ,我们不能用 '(hd0,2)/boot/grub/stage1' ,因为GRUB 不知道 (hd0,1) 是 /boot ,所以必须首先指向挂接为 /boot 的分区,然后把目录指向那里。
重新启动系统以后,就可以看到 GRUB 菜单了。看起来似乎很繁琐,这么长的命令行,是的!对于那些 LILO 能正常使用的人来说,或许没有必要来玩这个危险游戏。但是,对于那些想使用 GRUB 增强功能的人来说,试一下 GRUB 或许会有意想不到的惊喜。我的朋友告诉我说他不能用 LILO 识别 1G 内存,希望 GRUB 能帮助办到。本文旨在抛砖引玉,GRUB 还有很多的功能有待您的开发。
如果在配置和安装中遇到了麻烦,为什么不使用 info grub 或者 man grub 来寻求帮助呢?或者干脆上GRUB 的官方网站
寻找 FAQ 和其他文档呢?
GRUB 的下载地点:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
110 linux下操作光盘的几条命令1. 从光盘中制作iso文件:#cp /dev/cdrom ISO文件名同理可以把上面的/dev/cdrom换成/dev/fd0、/dev/sda1等移动存储设备的设备文件名制作软盘、U盘的iso映象文件2. 使用目录文件制作iso文件#mkisofs -r -o ISO文件名 路径名3. 刻录光盘先检测光盘刻录机的参数:#cdrecord -scanbus……scsibus0:  0,0,0 0)'SAMSUNG' 'CDRW/DVD DATA-348B' 'T501' Removable CDROM……然后刻录:#cdrecord -v speed=刻录速度 dev=刻录机设备号 ISO文件名如:#cdrecord -v speed=8 dev=0,0 /home/share/data.iso
112 rpm命令参数列表1.安装一个包 & # rpm -ivh 2.升级一个包 & # rpm -Uvh 3.移走一个包 & # rpm -e 4.安装参数 & --force 即使覆盖属于其它包的文件也强迫安装 & --nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 5.查询一个包是否被安装 & # rpm -q & rpm package name& 6.得到被安装的包的信息 & # rpm -qi & rpm package name& 7.列出该包中有哪些文件 & # rpm -ql & rpm package name& 8.列出服务器上的一个文件属于哪一个RPM包 & #rpm -qf 9.可综合好几个参数一起用 & # rpm -qil & rpm package name& 10.列出所有被安装的rpm package & # rpm -qa 11.列出一个未被安装进系统的RPM包文件中包含有哪些文件? & # rpm -qilp & rpm package name&
RPM命令手册 一、安装
命令格式:
rpm -i ( or --install) options file1.rpm ... fileN.rpm
file1.rpm ... fileN.rpm 将要安装的RPM包的文件名
详细选项:
-h (or --hash) 安装时输出hash记号 (``#'') --test 只对安装进行测试,并不实际安装。 --percent 以百分比的形式输出安装的进度。 --excludedocs 不安装软件包中的文档文件 --includedocs 安装文档 --replacepkgs 强制重新安装已经安装的软件包 --replacefiles 替换属于其它软件包的文件 --force 忽略软件包及文件的冲突 --noscripts 不运行预安装和后安装脚本 --prefix 将软件包安装到由 指定的路径下 --ignorearch 不校验软件包的结构 --ignoreos 不检查软件包运行的操作系统 --nodeps 不检查依赖性关系 --ftpproxy 用 作为 FTP代理 --ftpport 指定FTP的端口号为
-v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安 装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为
命令格式:
rpm -e ( or --erase) options pkg1 ... pkgN
pkg1 ... pkgN :要删除的软件包
--test 只执行删除的测试 --noscripts 不运行预安装和后安装脚本程序 --nodeps 不检查依赖性
-vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装 程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为
rpm -U ( or --upgrade) options file1.rpm ... fileN.rpm
file1.rpm ... fileN.rpm 软件包的名字
-h (or --hash) 安装时输出hash记号 (``#'') --oldpackage 允许"升级"到一个老版本 --test 只进行升级测试 --excludedocs 不安装软件包中的文档文件 --includedocs 安装文档 --replacepkgs 强制重新安装已经安装的软件包 --replacefiles 替换属于其它软件包的文件 --force 忽略软件包及文件的冲突 --percent 以百分比的形式输出安装的进度。 --noscripts 不运行预安装和后安装脚本 --prefix 将软件包安装到由 指定的路径下 --ignorearch 不校验软件包的结构 --ignoreos 不检查软件包运行的操作系统 --nodeps 不检查依赖性关系 --ftpproxy 用 作为 FTP代理 --ftpport 指定FTP的端口号为
-v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为
命令格式:
rpm -q ( or --query) options
pkg1 ... pkgN :查询已安装的软件包
-p (or ``-'') 查询软件包的文件 -f 查询属于哪个软件包 -a 查询所有安装的软件包 --whatprovides 查询提供了 功能的软件包 -g 查询属于 组的软件包 --whatrequires 查询所有需要 功能的软件包
显示软件包的全部标识 -i 显示软件包的概要信息 -l 显示软件包中的文件列表 -c 显示配置文件列表 -d 显示文档文件列表 -s 显示软件包中文件列表并显示每个文件的状态 --scripts 显示安装、卸载、校验脚本 --queryformat (or --qf) 以用户指定的方式显示查询信息 --dump 显示每个文件的所有已校验信息 --provides 显示软件包提供的功能 --requires (or -R) 显示软件包所需的功能
-v 显示附加信息 -vv 显示调试信息 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为
五、校验已安装的软件包
命令格式:
rpm -V ( or --verify, or -y) options
pkg1 ... pkgN 将要校验的软件包名
软件包选项
-p Verify against package file -f 校验所属的软件包 -a Verify 校验所有的软件包 -g 校验所有属于组 的软件包
--noscripts 不运行校验脚本 --nodeps 不校验依赖性 --nofiles 不校验文件属性
-v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为
六、校验软件包中的文件
rpm -K ( or --checksig) options file1.rpm ... fileN.rpm
file1.rpm ... fileN.rpm 软件包的文件名
Checksig--详细选项
--nopgp 不校验PGP签名
-v 显示附加信息 -vv 显示调试信息 --rcfile 设置rpmrc文件为
七、其它RPM选项
--rebuilddb 重建RPM资料库 --initdb 创建一个新的RPM资料库 --quiet 尽可能的减少输出 --help 显示帮助文件 --version 显示RPM的当前版本
113 chsh 更换你登入时所用的shell 名称 chsh - 更换你登入时所用的shell
语法 chsh [ -s shell ] [ -l ] [ -u ] [ -v ] [ username ]
描述 chsh 用来更换你登入时所用的shell 。在命令列没指定shell。 chsh 会提示一个给你。
有效的shell
chsh 可用指定路径全名的方式来指定任何一个可执行的档案。 然而,如果此 shell并没纪录在 /etc/shells 档上,则chsh会提出警告讯息。
选项 -s, --shell 变更你的登入shell. -l, --list-shells 列出纪录在 /etc/shells 的shell。 -u, --help 使用短讯。 -v, --version 版本资讯
相关文件 login(1) , passwd(5) , shells(5)
114 在linux下一些常用的关机/重启命令
有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的。
   1.shutdown
& shutdown命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失o使系统处于不稳定的状态o甚至在有的系统中会损坏硬件设备。
而在系统关机前使用shutdown命令o系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结o即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的o还可能重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕决定的。这让像vi之类的程序有时间储存目前正在编辑的文档o而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。
shutdown执行它的工作是送信号〔signal〕给init程序o要求它改变runlevel。Runlevel 0被用来停机〔halt〕orunlevel 6是用来重新激活〔reboot〕系统o而runlevel 1则是被用来让系统进入管理工作可以进行的状态r这是预设的o假定没有-h也没有-r参数给shutdown。要想了解在停机〔halt〕或者重新开机〔reboot〕过程中做了哪些动作o你可以在这个文件/etc/inittab里看到这些runlevels相关的资料。
   shutdown 参数说明:   [-t] 在改变到其它runlevel之前o告诉init多久以后关机。   [-r] 重启计算器。   [-k] 并不真正关机o只是送警告信号给每位登录者〔login〕。   [-h] 关机后关闭电源〔halt〕。   [-n] 不用inito而是自己来关机。不鼓励使用这个选项o而且该选项所产生的后果往往不总是你所预期得到的。   [-c] cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数o但是可以输入一个用来解释的讯息o而这信息将会送到每位使用者。   [-f] 在重启计算器〔reboot〕时忽略fsck。[-F] 在重启计算器〔reboot〕时强迫fsck。   [-time] 设定关机〔shutdown〕前的时间。
2.halt----最简单的关机命令   其实halt就是调用shutdown -h。halt执行时o杀死应用进程o执行sync系统调用o文件系统写操作完成后就会停止内核。   参数说明:   [-n] 防止sync系统调用o它用在用fsck修补根分区之后o以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。   [-w] 并不是真正的重启或关机o只是写wtmp〔/var/log/wtmp〕纪录。   [-d] 不写wtmp纪录〔已包含在选项[-n]中〕。   [-f] 没有调用shutdown而强制关机或重启。   [-i] 关机〔或重启〕前o关掉所有的网络接口。   [-p] 该选项为缺省选项。就是关机时调用poweroff。3.rebootreboot的工作过程差不多跟halt一样o不过它是引发主机重启o而halt是关机。它的参数与halt相差不多。
4.init& init是所有进程的祖先o它的进程号始终为1o所以发送TERM信号给init会终止所有的用户进程p守护进程等。shutdown 就是使用这种机制。init定义了8个运行级别(runlevel),init 0为关机oinit 1为重启。关于init可以长篇大论o这里就不再叙述。另外还有telinit命令可以改变init的运行级别o比如otelinit -iS可使系统进入单用户模式o并且得不到使用shutdown时的信息和等待时间
了这篇文章
类别:┆阅读(0)┆评论(0)

我要回帖

更多关于 web.config怎么写 的文章

 

随机推荐