unix linux

关注公众号 jb51net

关闭
首页 > 操作系统 > unix linux >

Linux基础知识99问(五)

作者:

Linux基础知识99问(五)

    五、 做好Linux的管理员:21问

  70.如何检查Linux硬盘使用情况?


  在Linux环境下,你可以使用df命令来查看硬盘的使用情况。下面就是一个df -T -h(-T参数:显示文件系统类型,-h参数用可读性较高的方式来显示信息)命令的输入实例:

  Filesystem Type Size Used Avail Use% Mountedon

  /dev/hda1 ext2 7.5G 4.7G 2.5G 65% /

  /dev/hda2 ext2 653M 6.6M 613M 1% /root

  /dev/hdb1 ext2 7.5G 3.5G 3.7G 49% /usr

  71.Linux下有哪些压缩工具?

  在Linux下有很多种压缩工具,常用的有:

  1) gzip/gunzip:这是GNU开发的自由软件,使用相当广泛。压缩文件扩展名为".gz"。使用方法很简单,例如:

  gunzip eos.gz gzip /home/test/*.txt;

  2) compress/uncompress:这是一对历史悠久的压缩程序,文件经过它压缩后,压缩文件扩展名为 ".Z"。

  3)除此之外还有:zip/unzip、bzip2/bunzip2等。

  72.如何管理进程?

  进程是程序的一次执行。可以使用"ps -auxw"列出在当前正在执行的进程的详细信息,包括每个进程都有的进程ID号。你可以通过"kill 进程ID号"来终止这个进程。

  73.文件或目录的权限是什么意思?

  文件或目录的权限位由10位构成,如-rwxr-xr-x。

  1) 第一位代表文件/目录类型:d代表目录、-代表文件、l代表链接;

  2) 剩下的9位分成3组,每组3位;2-4位描述文件主人的权限,5-7位描述与文件主人同一用户组的权限,8-10位则是其它用户的权限。

  3) rwx:每组的3位分别是:读权限、写权限、执行权限;如果是-就代表没有这个权限。

  也就是说-rwxr-xr-x表示,这是个普通文件,文件主人可以读、写、执行这个文件,与文件主人同组的用户以及其它用户都可以读、执行这个文件。

  74.什么是用户帐号?

  在Linux系统中,是通过用户帐号来标识每一个用户的,通过登录时输入不同的用户帐号和密码确定你的身份。也就是说,Linux系统通过用户帐号和管理系统的所有用户。

  然后你可以创建一些用户组,将用户加入到组中去,让其获得用户组的权限。

  75. 在Linux下,如何管理用户?

  如果你想要新增一个用户:

  1) 以root登录,然后执行"adduser 用户帐号名"

  2) 执行"passwd 用户帐号名"来为这个用户帐号设置密码。

  执行"userdel 用户帐号"删除一个用户;

  执行"groupadd 用户组名"新增一个用户组;

  执行"groupdel 用户组名"删除一个用户组;

    76. 如何为用户作磁盘限额?


  1)将要设置磁盘限额的分区,按以下格式修改/etc/fstab 文件:

  /dev/hda2 /home ext2 defaults,usrquota 1 2

  2)在要设置磁盘限额的分区目录下创建空文件 quota.user

  #touch /home/quota.user

  #chmod 600 /home/quota.user

  3)重启系统后,就可以使用edquota -u 用户名来设置。

  77.如何备份系统?

  在Linux中,你可以使用dump/restore命令组来实现系统的备份与恢复。假设你需要将/usr目录下的所有文件完整地备份到磁带机上(假定设备是rmt8,不同的磁带机不相同),你可以使用命令:

  dump -O -f /dev/rmt8 /usr

  其中-O参数代表备份全部文件,"-f 设备文件名"参数指定备份到什么地方,最后的目录名指定要备份的内容。

  然后,你可以使用以下命令恢复:

  restore -r -f /dev/rmt8

  78.如何安装.tar的软件包?

  Linux软件有两种发布方式:一种是源代码方式,另一种是可执行文件包。而发布包大多是先用tar归档,再用gzip压缩,生成是以.tar.gz结束的文件。

  你可以直接使用"tar xvfz 文件名"完成解压缩,解tar包工作。

  如果你取得是可执行文件包,安装工作结束。

  如果你取得是源代码包,则还需编译一下:

  1) 在解压目录下运行"./configure"进行配置;

  2) 在解压目录下运行"make"进行编译;

  3) 运行"make install"安装。

  79.如何使用RPM安装Linux软件?

  RedHat公司提供的RPM工具,使得Linux软件安装更为方便。

  1) 安装:rpm -ivh somesoft.rpm

  2) 反安装:rpm -e somesoft.rpm

  3) 查询:rpm -q somesoft

  80.如果忘了root的密码,怎么办?

  如果你忘了root的密码,可以通过以下方法恢复:

  1) 重新启动Linux,出现lilo:时,输入linuxsingle进入单用户模式;

  2) 这时无需密码就取得了root权限;

  3) 再运行passwd重新设置root的密码。

  81.重装Windows而破坏了Lilo时,怎么办?

  这种情况可以使用两种方法恢复:

  1)用Linux启动软盘启动,然后执行/sbin/lilo,重新在引导区建立lilo;

  2)使用Linux安装光盘启动,选择升级系统,将会重建lilo。

  82.如何制作Linux启动盘?

  在Linux下,有一个工具mkbootdisk能很方便地制作系统启动盘:

  1) 查看系统的版本,可以通过ls /usr/src来看;

  2) 插入一张空软盘;

  3) 执行"mkbootdisk --verbose 2.2.5"。

    83.如何远程使用Linux?


  我们可以使用telnet、rlogin、rsh、rcp等命令来实现远程使用Linux,但这这些方法在传输过程中是明文传输的,所以有可能带来许多不安全因素。因此,应尽量避免远程使用root帐户登录系统。

  如何构建安全的远程登录?

  使用SSH来实现安全的远程登录,因为SSH实现了数据传输的加密。

  1) 获取ssh-1.26.tar.gz文件;

  2) 用tar xvpf ssh-1.26.tar.gz解开这个包;

  3) 到解开的目录/usr/local/src/ssh-1.26目录下执行./configure;

  4) 执行make和make install来完成编译和安装。

  5) 你就可以使用ssh来与安装了SSH的服务器建立安全的远程连接。

  85.如何运行计划任务?

  大大可能对Windows中的计划任务都比较熟悉了,它可以通过一些简单的设置,定时完成一些任务。在Linux系统的维护中,我们可以也会需要定期执行一些任务,这种情况可以使用:

  1) at命令:它可以键盘或文件中读取指令,然后在指定时间完执行;

  2) crontab守候进程:通过设置它的配置文件来定时执行某些任务。

  86.Linux的开机过程都做了什么?

  1) 一开机,CPU将控制权交给BIOS,BIOS完成开机自检;

  2) 然后BIOS读取磁盘上的第一个扇区,并装入主引导扇区的lilo;

  3) lilo根据输入选择不同的内核映象,如果你选择了linux就读取/boot下的核心映象;

  4) 核心开始硬件检测和设备驱动程序的初始化,然后运行init

  5) init进程根据/etc/inittab的配置运行一系列初始化脚本;

  6) 完成后,启动getty进程接受用户的登录。

  87.如何设置开机自动运行程序?

  你可以在以下几个脚本文件中加入你想一启动系统就执行的命令:

  /etc/rc.local、/etc/rc.sysinit以及/etc/rc.d/init.d。

  88.为什么需要重新编译内核?

  以下情况你需要重新编译内核,或加入动态内核模块:

  1) 更新驱动程序;

  2) 根据自己的需求定制最可靠的内核;

  3) 升级Linux内核。

  89.如何重新编译内核?

  1) 进入Linux源代码目录:cd /usr/src/linux

  2) 执行"make config"或"make menuconfig"、"make xconfig"配置内核选项,选中你想要的模块,去掉不想要的模块;

  3) 执行"make zImage"命令,大概30到90分钟后,会生成一个zImage的新内核映像文件,存放在/usr/src/linux/arch/i386/boot目录下;

  4) 然后将其拷贝到/boot目录下;

  5) 修改lilo.conf文件,加入:

  image=/boot/zImage

  label=newlinux

  root=/dev/hda1 (根据原来的文件)

  运行/sbin/lilo使修改生效。

  6)重新启动,在Lilo时,输入newlinux就可以新内核启动。

90.什么是动态内核模块?


  动态内核模块是Linux一个成功的设计,它使得Linux更加灵活,易于定制。其实动态内核模块就是一个内核模块,它可以在不重新编译内核的情况,动态地将一些功能用"insmod 模块名"命令加入内核、用"rmmod 模块名"命令将其移出内核。

  六、 廉价的网络解决方案---Linux:9问

  91.如何使用Linux架设WEB服务器?

  Apache服务器是在Linux架设WEB服务器的首选。你可以在安装Linux时就选择安装它。若在安装时没有安装Apache的话,你可以从光盘或者到apache网站上找到文件:apache-1.3.12.i386.rpm,然后执行以下命令完成安装:

  1)rpm -ivh apache-1.3.12.i386.rpm

  2)修改/etc/httpd/conf目录下的配置文件httpd.conf、access.conf等;

  3)将主页文件放到/home/httpd/html目录下;

  4)执行"/etc/rc.d/init.d/httpd start"启动Apache服务器

  如果需要关闭的话,可以执行/etc/rc.d/init.d/httpd stop命令。

  92.如何使用Linux架设FTP服务器?

  在Linux中,最常用的FTP服务软件当数wu-ftpd,如果在安装linux时没安装上它。你可从光盘或者网站rpmfind.net/linux/RPM/WbyName.html获取它的RPM包:wu-ftpd-2.6.0-9.i386.rpm。然后执行以下命令完成安装:

  rpm -ivh wu-ftpd-2.6.0-9.i386.rpm

  编辑 "/etc/inetd.conf" 文件,指向新的ftpd守护进程,如下所示:

  ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a

  到此为止,你的Linux就可以接受FTP服务了。

  93.如何使用Linux架设E-MAIL服务器?

  Linux中,最常用的E-MAIL服务器是Sendmail,你可以在安装Linux时将其选中。

  1) 在DNS服务器上为E-Mail服务器做一条MX记录;

  2) 编辑/etc/inetd.conf文件,将关于pop和smtp的行的注释符去掉;

  3) 执行kill -HUP inetd,使修改生效;

  这样E-mail服务器的用户就可通过Outlook等客户端程序进行收发邮件了。

  94.如何使用Linux架设News服务器?

  在安装Linux时,选择INN软件包,并允许开机时启动innd。在完成系统的安装时,大部分配置工作已经完成,无需编译源码。

  1)配置/etc/news/inn.conf:

  domain: foo.com

  organization: foo company news site

  server: localhost

  根据实际情况填写;

  2)配置/etc/news/nnrp.access

  nnrp.access是用来完成News Readers服务的守候进程nnrpd的配置文件,用于控制对站点的访问,修改此文件无须启动INND。

  3)添加新闻组:

  可以手工编辑/var/lib/news/active文件添加新闻组,也可以使用ctlinnd命令来增加。若是手工方式修改新闻组,须执行以下命令使其生效:

  ctlinnd reload active "modify active"

  95.如何使用Linux架设BBS?

  1) 下载PowerBBS的源代码发行包文件pbbs.tar.gz;

  2) 执行tar zxvf pbbs.tar.gz解开文件;

  3) 进入pbbs目录,运行Install;

  4) 根据具体需求改变默认的设置。

  96.如何让Linux成为文件服务器?

  在Linux中,你可以用Samba来做文件服务器,你可以在安装Linux时选中Samba就可以完成安装。

  1) 编辑/etc/smb.conf,修改配置:

    netbios name=linux

  workgroup=SambaServer

  server string=Samba Server

  hosts allow=192.168.9. 127.

    securoty=share

  interfaces=192.168.9.1/24

  name resolve order=host dns bcast

  wins support=no

  2)重新启动SMB服务器:/etc/rc.d/init.d/smb restart

  3)编辑客户机的hosts文件,加入对Samba Server的解析;

  4)最后你就可以在网上邻居上看到它了。


    97.如何使用Linux架设代理服务器?


  1) 下载Squid代理服务器软件squid-2.2.STABLE3-src.tar.gz;

  2) 执行tar xzxf squid-2.2.STABLE3-src.tar.gz

  3) 执行./configure

  4) 执行make,make install安装到/usr/local/squid目录下;

  5) 编辑/usr/local/squid/squid.conf文件,加入:

  acl allowed_hosts src 192.168.9.0/255.255.255.0

  注:假设你的内网IP地址是192.168.9.0;

  6) 执行/usr/local/squid/bin/squid -z进行初始化

  7) 执行/usr/local/squid/bin/squid开启服务

  8) 在客户端设置代理服务器IP和端口3128,就可以访问Internet了。

  98.如何使用Linux架设透明网关?

  确认Linux内核已经支持ipchain,然后编写一个脚本ipchains.rule,内容为:

  注:假设透明网关服务器的外网地址是:1.2.3.4,已经与Internet相连;内网地址是192.168.9.1,连在内网上。

  #!/bin/sh

  /sbin/ipchains -F forward

  /sbin/ipchains -F input

  /sbin/ipchains -F output

  /sbin/ipchains -P forward DENY

  /sbin/ipchains -P input ACCEPT

  /sbin/ipchains -P output ACCEPT

  external_interface=1.2.3.4

  /sbin/ipchains -A input -j ACCEPT -i lo

  /sbin/ipchains -A output -j ACCEPT -i lo

  /sbin/ipchains -A input -j DENY -i eth1 -s 192.168.9.0/24

  /sbin/ipchains -A input -j DENY -i eth1 -d 192.168.9.0/24

  /sbin/ipchains -A output -j DENY -i eth1 -s 192.168.9.0/24

  /sbin/ipchains -A output -j DENY -i eth1 -d 192.168.9.0/24

  /sbin/ipchains -A input -j DENY -i eth1 -s $external_interface/32

  /sbin/ipchains -A input -j DENY -i eth1 -s $external_interface/32

  /sbin/ipchains -A output -j DENY -i eth1 -d $external_interface/32

  /sbin/ipchains -A forward -j ACCEPT -i eth0 -s 192.168.9.0/24 -d 192.168.9.0/24

  /sbin/modprobe ip_masq_ftp

  /sbin/modprobe ip_masq_quake

  /sbin/modprobe ip_masq_irc

  /sbin/modprobe ip_masq_user

  /sbin/modprobe ip_masq_raudio

  /sbin/ipchains -A forward -j MASQ -i eth1 -s 192.168.9.0/24

  运行这个脚本后,192.168.9.0网络中的所有机器只需将网关设置为192.168.9.1,就可以连到Internet上了。

  99. Linux还能构建什么服务器?

  Linux还可以成为域名服务器、PPP服务器、CVS服务器、路由器、防火墙,而且还可以通过LVS解决方式还构建服务器集群系统。因为在此篇幅有限,仅是点到为止,若有兴趣可以参考专业的Linux书籍。

 

 

您可能感兴趣的文章:
阅读全文