免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 569 | 回复: 0
打印 上一主题 下一主题

Linux使用小知识 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-04 16:30 |只看该作者 |倒序浏览
都很实用的,可能比较古典.但对于我这样一个初学者还是有用的~~~
从软盘启动grub
制作启动盘后可以用软盘启动引导硬盘上的操作系统  插入制作好的启动软盘,进入BIOS设定软盘启动。软盘启动成功后就会进入grub的命令行模式  
grub>  
  要启动一个操作系统,首先指定引导哪个分区上的系统,例如要引导指第一个硬盘上的第一个分区的操作系统,先键入  
grub>root  (hd0,0)  
  接着如果要启动的是Windows系统,键入  
grub>chainloader  (hd0,0)+1  
  注意(hd0,0)要随着硬盘和分区的不同而改变数字。  如果要引导Linux或其他系统,应键入  
grub>kernel  (hd0,0)/boot/vmlinuz  root=/dev/hda1  
  注意hda1参数也要随着硬盘和分区的不同而改变,如从第二个硬盘的第一个分区引导则用hdb1。  
  最后敲入boot就可以启动系统了。  
  在任何时候不能确定命令或者命令的参数都可以按Tab获得相关的帮助。用上下键可以获得命令的历史记录。  
其实这些命令就是menu.lst的启动描述,您也可以根据那些描述来自己键入启动命令,最后敲入boot就可以引导系统了。
如何实现多网卡bonding
使用多块网卡虚拟成为一块网卡,具有相同的IP地址。这项技术其实在sun和cisco中已经存在,分别称为Trunking和etherchannel技术,在Linux中,这种技术称为bonding。  ??因为bonding在内核2.4.x中已经包含了,只需要在编译的时候把网络设备选项中的Bonding  driver  support选中就可以了。
??然后,重新编译核心,重新起动计算机,执行如下命令:
??ismod  bonding
??ifconfig  eth0  down
??ifconfig  eth1  down
??ifconfig  bond0  ipaddress
??ifenslave  bond0  eth0
??ifenslave  bond0  eth1
??现在两块网卡已经象一块一样工作了.这样可以提高集群节点间的数据传输.
??你最好把这几句写成一个脚本,再由/etc/rc.d/rc.local调用,以便一开机就生效.
??bonding对于服务器来是个比较好的选择,在没有千兆网卡时,用两三块100兆网卡作bonding,可大大提高服务器到交换机之间的带宽.但是需要在交换机上设置连接bonding网卡的两个口子映射为同一个虚拟接口。
如何实现为一个网卡绑定多个IP地址?
Linux的网络设备配置文件存放在/etc/sysconfig/network-scripts里面,对于以太网的第一个网络设备,配置文件名一般为  ifcfg-eth0  如果需要为第一个网络设备绑定多一个IP地址,只需要在/etc/sysconfig/network-scripts目录里面创建一个名为ifcfg-eth0:0的文件,内容样例为:  DEVICE="eth0:0"
IPADDR="211.100.10.119"
NETMASK="255.255.255.0"
ONBOOT="yes"
  其中的DEVICE为设备的名称,IPADDR为此设备的IP地址,NETMASK为子网掩码,ONBOOT表示在系统启动时自动启动。
  如果需要再绑定多一个IP地址,只需要把文件名和文件内的DEVICE中的eth0:x加一即可。LINUX最多可以支持255个IP别名。
如何根据NETBIOS名字查找计算机IP
使用nmblookup  test可以查找到同个网络内NETBIOS名字为test的机器的IP,如果这个机器有多个IP,也会一并列出。
如何知道某个端口现在运行什么监听程序
当我们用netstat  -an的时候,我们有时候可以看到类似的输出:  udp  0  0  0.0.0.0:32768  0.0.0.0:*
但是查找/etc/services又没有这个端口的相关说明,怎么办呢?这个是不是黑客程序?有没有办法查看究竟什么程序监听在这个端口?
使用lsof  -i  :32768就可以看到:
COMMAND  PID  USER  FD  TYPE  DEVICE  SIZE  NODE  NAME
rpc.statd  603  root  4u  IPv4  953  UDP  *:32768
rpc.statd  603  root  6u  IPv4  956  TCP  *:32768  (LISTEN)
原来是rpc的程序。
使用lsof  -i  :port就能看见所指定端口运行的程序,同时还有当前连接。
如何监视某个tty

你可以把  /etc/inetd.conf中  ??#  Use  this  one  instead  if  you  want  to  snoop  on  telnet  users  (try  to  use  this
??#  for  ethical  purposes,  ok  folks?)  :
??telnet  stream  tcp  nowait  root  /usr/sbin/tcpd  /usr/sbin/in.telnetsnoopd
??1.把原本的in.telnetd换成上述的in.telnetsnoopd,
??2.然后激活  ttysnoops  &
?3.mkdir  /var/spool/ttysnoop
??4.重新激活  inetd
??用法就是  ttysnoop  tty*,这时它会要你输入root的密码,按  ctrl+7可以终止,不过监视人家时要小心不要被发现了哟。这两个窗口是一样的,你还可以控制他的键盘  (自己先练习一下,呵呵...)
如何恢复iptables的默认设置

/usr/local/sbin/iptables  -P  INPUT  ACCEPT  /usr/local/sbin/iptables  -P  FORWARD  ACCEPT
/usr/local/sbin/iptables  -P  OUTPUT  ACCEPT
#
#  reset  the  default  policies  in  the  nat  table.
#
/usr/local/sbin/iptables  -t  nat  -P  PREROUTING  ACCEPT
/usr/local/sbin/iptables  -t  nat  -P  POSTROUTING  ACCEPT
/usr/local/sbin/iptables  -t  nat  -P  OUTPUT  ACCEPT
#
#  flush  all  the  rules  in  the  filter  and  nat  tables.
#
/usr/local/sbin/iptables  -F
/usr/local/sbin/iptables  -t  nat  -F
#
#  erase  all  chains  that's  not  default  in  filter  and  nat  table.
#
/usr/local/sbin/iptables  -X
/usr/local/sbin/iptables  -t  nat  -X'  
GRUB多重启动管理器
什么是grub  
  grub  是一个多重启动管理器。grub是GRand  Unified  
Bootloader的缩写,它可以在多个操作系统共存时选择引导哪个系统。它可以引导的操作系统包括Linux,FreeBSD,Solaris,NetBSD,BeOSi,OS/2,Windows95/98,Windows  
NT,Windows2000。它可以载入操作系统的内核和初始化操作系统(如Linux,FreeBSD),或者把引导权交给操作系统(如Windows  98)来完成引导。
如何允许非root用户mount光盘和软盘
可以通过修改文件系统配置文件:/etc/fstab来使非root用户使用光盘和软盘,将/etc/fstab中关于fd0及cdrom的内容修改为如下所示:    /dev/fd0  /mnt/floppy  auto  noauto,user  0  0
  /dev/cdrom  /mnt/cdrom  iso9660  noauto,ro,user,unhide  0  0
  你可以通过察看/etc/mtab或使用不带参数的mount命令来察看哪些文件系统被加载及它们的加载参数是什么。
如何限制某个用户只能FTP不能TELNET?
很简单,修改此用户的shell即可。打开/etc/password,查找要修改的用户所对应的记录,如:  floatboat:x:500:500::/home/floatboat:/bin/bash
  要禁止floatboat用户登录,只需要把此行中的“/bin/bash”改为/usr/bin/passwd即可。这样用户telnet上服务器只能修改密码,而无法直接控制台。
  当然,如果你希望连密码都不允许此用户修改,只要把shell改为“/sbin/nologin”即可。
怎么样做到限时登录
通过以下三个脚本程序调用at和系统维护功能即可实现限时登录:  在指定的时间执行该脚本,将在/etc下生成一名为nologin的文件,登录程序在执行时会自动判断此文件是否存,如果存在将不允许用户登录,内容为:
vi  /sbin/login.denied
echo  "  Login  Denied  "  >  /etc/nologin
chmod  700  login.denied
在指定的时间执行该脚本,删除/etc/下的nologin文件以允许用户登录,内容为:
vi  /sbin/login.allowed
if  [  -f  /etc/nologin  ];  then
rm  /etc/nologin
fi
chmod  700  login.allowed
编写一个限制时间的脚本,内容为:
vi  /sbin/login.rollback
if  [  -f  /sbin/login.denied  ];  then
at  -f  /sbin/login.denid  22:00
fi
if  [  -f  /sbin/login.allowed  ];  then
at  -f  /sbin/login.allowed  8:00
if
chmod  744  /sbin/login.rollback
创建完成以后,把/sbin/login.rollback脚本放进crontab中,在每天凌晨执行:
crontab  -e
#  roll  login  script
00  1  *  *  *  /sbin/login.rollback
此种设置的功能是:从晚上10:00到第二天早上8:00静止非root用户登录,显示为系统维护状态。
lilo.conf配置实例
有了这些基础知识,我们可以很容易地按照自己的意图配置LILO。请看一个lilo.conf文件的例子:  
  boot=/dev/hda          #将LILO安装在MBR。LILO作为主引导管理器  
  message=/boot/message      #注释为/boot/message  
  compact              #产生一个更小的“map”文件  
  map=/boot/map          #指定“map”文件为/boot/map  
  install=/boot/boot.b  
  password=zhoudi          #设置口令  
  vga=normal            #80x25文本模式  
  linear              #使用“linear”地址  
  prompt              #提示用户键盘输入  
  timeout=50            #超时时长为5秒  
  default=dos            #缺省引导label为dos的操作系统  
  #设定Linux  
  image=/boot/vmlinuz-2.0.34-1    
  #设置Linux核心引导映像  
    label=linux          #标识为linux  
    root=/dev/hda1        #设置根文件系统  
    read-only          #LILO以只读方式载入根文件系统  
  #设定MS-DOS或Windows  95  
  other=/dev/hda2          #DOS分区为第一个IDE硬盘的第二分区  
    label=dos          #标识为dos  
    table=/dev/hda        #主设备为第一个IDE硬盘  
  #设定SCO  UNIX  
  注意:SCO分区必须设为活动(active)分区并将LILO安装在MBR上。  
  other=/dev/hda3  
    label=sco  
    table=/dev/hda  
  这个例子中,LILO是作为主引导管理器来管理机器上所有操作系统的。LILO也可作为二
级引导管理器,这只要将“boot”参数改为根分区就可做到。例如:  
  boot=/dev/hda1  
  以这种方式使用LILO时,Linux根分区必须用DOS或Linux的fdisk程序将其设置为活动分区,
并且这种方式只对硬盘主分区(不是扩展或逻辑分区)有效。  
  LILO还可以启动第二个以上的操作系统。在我的机器上有两块希捷硬盘,一块硬盘为8.4GB,
另一块为1.2GB,都以LBA模式接在主IDE口上。8.4GB跳线为主盘,1.2GB跳线为从盘,Linux
核心很容易地就将它们辨认出来并能正常使用,1.2GB的硬盘上安装了MS-DOS  6.22。笔者是
这样设置lilo.conf的:  
  disk=/dev/hda  
    bios=0x80        
  #由于IDE硬盘存在双硬盘问题,所以当启动DOS系统时,会提示“无系统盘或系统盘错!”,需修改程序如下。  
  disk=/dev/hdb  
    bios=0x81  
  boot=/dev/hda  
  map=/boot/map  
  install=/boot/boot.b  
  linear  
  prompt  
  timeout=50  
  default=dos  
  image=/boot/vmlinuz-2.2.11-1  
    label=linux  
    root=/dev/hda1  
    read-only  
  other=/dev/hdb1  
    label=dos  
    map-drive  =  0x80  
      to  =  0x81  
      map-drive  =  0x81  
      to  =  0x80  
  #交换两硬盘主、从顺序  
    table=/dev/hdb  
  配置好lilo.conf文件后,在root账户下执行lilo命令,新的LILO就被载入系统。
上面第一个例子执行结果如下:  
  #lilo  
  Added  linux  
  Added  dos*        
  Added  sco  
  (注:带*号的表示其为缺省操作系统)
为Linux系统设置备份
备份是一项重要的工作,但是很多人没有去做。一旦由于使用不当造成数据丢失,备份就成了真正的救命者。本文将讨论设置备份的策略和如何选择备份介质,并介绍用于备份的tar和cpio工具。  设置备份策略  
  设置备份策略和计划可以增加进行备份的可能性。备份开始前,要确定备份哪些数据、备份的频率和使用什么样的介质进行备份。备份的时候,应该进行完全备份。  
  备份通常安排在空闲时间进行。在大多数系统中,由于此时用户数量最少,所以打开的文件也最少。由于备份要占用一些系统资源,运行备份时用户会发现系统反应迟钝。  
  如果Linux计算机只有一个使用者,可以一个星期或一个月对整个系统备份一次。如果有关键性的文件,就应该有计划地把这些文件拷贝到一个可移动的磁盘中。  
  备份之前,首先要确保正确地设置备份设备。大多数磁带备份系统在安装时可以发现是否正确。系统启动后,打开一个终端窗口并且输入下面的命令:  
  $dmeg  |  less  
  滚动列表,并从中寻找你的磁带系统的驱动。如果没有发现,就需要加载一个组件驱动程序。  
  如果运行Linux服务器,就要制定一个备份计划,但这并不意味着每天要对所有的东西都备份。系统中只有一部分东西需要每天备份,下面列出需要备份的项目:
  用户文件  每天都要对/home目录中的用户文件进行备份。  
  配置文件  /etc和/var目录中的配置文件不需要频繁备份,每个星期或每月备份一次即可,主要取决于配置更改的频繁程度。  
  程序文件  /usr和/opt目录中的程序文件很少发生变化,安装后做一次备份即可。通常情况下,程序文件可方便地从原始安装盘中恢复。  
选择备份介质  
  把备份存到哪里有多种选择。下面介绍一些可选择的备份介质:  
  软盘  如果要把重要文件快速备份,或者将其带到家中,这时软盘仍旧是一种可选的备份介质。  
  光盘写入器  随着光盘写入器变得越来越可靠,价格也越来越低,光盘本身也非常便宜。选用此项的一个好处是光盘不容易被损坏,它备份的可靠性很高。  
  使用光盘写入器有两点不利因素:它们速度较慢,并且只能保存大约650MB。  
  可重写的光盘  可重写光盘驱动器比光盘写入器要贵得多,工作方式与其类似。但是,这些光盘是可被重写的,并且它比只能写一次的光盘贵许多。可重写光盘其它的特性都与光盘写入器类似。  
  Jaz和Zip  Zip驱动器很流行,已经成为许多PC机的标准配置,同时它的磁盘和驱动器也都不贵。它一张磁盘可容纳100MB的数据,是一种用于快速、可移动备份的很好选择。  
  Jaz磁盘可以容纳上G字节的数据,并且使用更先进的技术以获得更好的表现。Jaz驱动器和Jaz磁盘都比较贵。  
  Jaz和Zip的缺陷是都容易损坏,并且保持时间相对要短。  
  磁带机  磁带备份设备是大多数Linux服务器的标准配置。磁带是可靠的,并且很少出现错误,它几乎比其它介质存储时间都要长。  
  对于点对点工作组网络和中型网络,Travan和高端数字音频磁带(DAT)通常是最好的选择。Travan驱动器经过压缩可以处理8GB数据,这对于具有5-10个PC机的小型网络来说足够了。DAT驱动器有更好的表现,可以处理24GB的数据。DAT驱动器比Travan驱动器昂贵,但它磁带的价格要比Travan  QIC磁带卷便宜。  
  高端磁带  选择高端磁带可能是相当贵的。与Travan或DAT相比,这种驱动器有更大的容量和更高的速度。三种广泛使用的驱动器类型是:Sony  Advanced  Intelliget  Tape  (  AIT  )  、Quantum  Digital  Linear  Ta  p  e  (  DLT  )和Exabyte  Mammoth  8mm。它们最少可以容纳20GB的不压缩数据,并且具有更高的数据传输能力。  
用于备份的tar  
  tar工具是以前备份文件的可靠方法,几乎可以工作于任何环境中,Linux老用户一般都信赖它。  
  Linux中以.tar结尾的文件都是用tar创建的。它的使用超出了单纯的备份,可用来把许多不同文件放到一起组成一个易于分开的文件。tar是从Tape  ARchiver备份工具起步的。  
  包含在Linux中的GNU  tar工具简便易用,包含了一个用来压缩的选项,且支持不断增加的备份。  
  tar是一个命令行的工具,没有图形界面。使用Konsole或Kvt打开一个终端窗口,接下来是一个简单的备份命令:  
  $tar  cvf  -  /home  >  /temp/backup.tar  
  这个命令在/tmp目录中创建一个backup.tar的文件,/home目录中所有内容都包含在其中。  
  接下来可以把tar文件拷贝到备份磁盘中。使用简单备份时,如果要使用压缩功能,改为下面命令:  
  $tar  czvf  -  /home  >  /tmp/backup.tgz  
  上面扩展名.  tgz指出这是一个压缩文件。  
  下一个例子可以用来直接备份到一个安装好的Jaz驱动器中,但这样做要确定有足够的空间:  
  $tar  czvf  /mnt/jaz/backup.tgz  -  /home  
  对于一个磁带驱动器,使用设备名称:  
  $tar  czvf  /dev/st0/backup.tgz  -  /home  
  如果有一个备份非常大,可以使用多卷选项。但是,这样做就不能使用压缩。当第一个磁盘或磁带填满后,tar将提示插入另一张:  
  $tar  cvMf  /dev/st0/5mar2000.tar  -home  
  要恢复备份使用下面的命令,以Jaz磁盘为例:  
  $tar  xzvf  /mnt/jaz/5mar2000.tgz  /home  
  表1列出了tar主要功能参数。此外还有很多可选参数,本文不再详述。  
  表1  tar主要功能参数  
  参数        描述  
  -A      附加到另一个tar存档的后面  
  -C      创建一个新的tar存档  
  -d      找出tar存档和文件间的差别,用于一个文档的验证  
  --delete  从存档删除文件,磁盘备份不能选用  
  -r      把文件附加到tar存档的后面  
  -t      列出tar存档的内容  
  -u      只把比tar文档中的文件新的文件附加到存档中  
  -x      解开一个tar存档  
  tar备份可以用crontab工具设置成基于时间的有规律地运行。例如,每晚2点把/home目录备份到SCSI磁带驱动器中,只要将下面语句添加到root的crontab中即可:  
  00  02  *  *  *  tar  cvf  /dev/st0/homefiles.tar  -  /home  
用于备份的cpio  
  GNU  cpio工具像tar一样从命令提示行启动程序。与tar相比cpio更复杂,但是也更为可靠。因为如果一个tar文件中某处有一个坏块,就不能对备份文件的其它部分进行访问,而使用cpio,只有坏块不能被访问。  
  cpio创建一个称为copy-out  mode的备份,备份存档中包含了文件和所有者、时间及访问许可等信息。cpio需要一个假定要备份的文件列表。创建列表的一个最方便的方法就是使用ls命令。例如,要把/home目录备份到SCSI磁带设备中,输入下面的命令:  
  $ls  /home  |  cpio  -o  >  /dev/st0  
  也可以使用find命令。它包括许多选项可以用来消减被存档文件的数量。例如,下面的命令对所有在上一个2  4小时内修改过的文件进行存档:  
  $find  /home  -mtime  1  -type  f  -print  |  cpio  -o  >  /dev/st0  
  copy  -  in模式把文件从备份存档中解出来。下面的命令会恢复前两个备份例子中的所有文件:  
  $cpio  -i    /dev/st0


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/165/showart_4530.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP