主页 PC知识 网管技术 黑客帝国 安全技术 开放系统 程序设计 搜索 技术论坛

 

相关联接
 
RHU本级分类

技术开发
桌面应用
嵌入技术
问答(FAQ)
基础知识
企业应用&技巧

 
RHU阅读排行
·让星际争霸在Linux下转起来
·给RedHat8.0加上五笔输入法
·杀死Unix僵死进程的Shell程序编写详解
·Linux系统管理讲义(下):WWW服务器讲解
·Linux系统管理讲义(上):系统升级指南
·Linux下proftpd的安装配置与管理方法
·Linux下管理磁盘存储区从原理到技巧
·Linux下新手装网卡指南
·FreeBSD配置基于ADSL的VPN网关+防火墙
·实例讲解在Linux下安装nvidia显卡驱动

 
 
RHU最新文章
·Ubuntu 9.04 Alpha 2 发布
·Linux兼容内核0.2.2-1版(UnifiedKernel 0.2.2-1)发布
·四个基于 Ubuntu 的优秀民间发行版
·Linux Mint 6 ( Felicia ) RC1 发布
·Linux Kernel 最新稳定版2.6.26发布
·Linux应用软件 压缩和解压的工具PeaZip
·Linux操作系统桌面环境GNOME和KDE的切换
·Linux操作系统使用的图片浏览及编辑软件
·介绍Linux操作系统下的几个小游戏模拟器
·Linux系统初学者的常见问题解决集结大全

 
 
RHU相关搜索









 
 
RHU广而告之

 
 
>您的位置:首页 -> Linux/Unix-> 桌面应用
Linux系统管理讲义(上):系统升级指南

作者:RHU-TAC编辑员 来自:RHU网络采集 时间:2005-5-11 双击滚屏 收藏本页 字体:


点击 查看RHU2004全年文章




SoftRAID 软件磁盘阵列

使用软件磁盘阵列应该在安装 Linux 时,直接透过 Disk-Druid 来设定比较方便,如果事后想要手动加上去,步骤比较繁杂,首先和 LVM 系统一样,你必须先使用 fdisk 将预先割好要作磁盘阵列的分割区改为 fd 类型,千万不要拿已经有资料的 Linux ext2 或 swap 来改,否则资料会全部遗失,修改方法请自行参考前面的解说。特别要注意的是,要作磁盘阵列的分割区其容量必须一致,不可以有大有小!

改好扇区类型后,请用底下指令建立软件磁盘阵列组态文件:

touch /etc/raidtab

该档案内容如下:

raiddev /dev/md0 //定义磁盘阵列的装置名称

raid-level 1 //定义磁盘阵列的等级,RAID 1 就是 Mirror

nr-raid-disks 2 //定义磁盘阵列是由多少实体分割区组成的

chunk-size 64k //定义 chunk 大小,由于是软件数组所以是使用系统主存储器来进行 chunk,这个数值设大一点虽然对磁盘阵列效能有帮助,但却会耗掉系统资源,建议使用默认值就好了

persistent-superblock 1//启用 superblock,这是用来作磁盘寻址,它能帮助 kernel 在侦测 RAID 磁盘时不会误判

nr-spare-disks 0 //定义备用的扇区

device /dev/hda1 //定义组成 RAID 的第一块实体分割区

raid-disk 0

device /dev/hdc1 //定义组成 RAID 的第二块实体分割区

raid-disk 1

以上面这个例子来说,作好的磁盘阵列在写入数据时,两个实体分割区都会写入数据,读取资料时,则只要其中一个扇区能正常读取即可,这样就可以充分利用磁盘阵列的好处来进行数据保全。做好组态设定以后,接下来请以下列指令开始制作磁盘阵列:

mkraid /dev/md0

磁盘阵列一但制作好了,依然得先将扇区格式化,一般是格式化成 ext3:

/sbin/mkfs -t ext3 /dev/md0

格式化好的扇区就可以直接挂载使用:

mkdir /secure_data

mount -t ext3 /dev/md0 /secure_data

资料保全测试:

使用 fdisk 将 RAID 磁盘阵列其中一个实体分割区删除后,重新开机,发现 RAID 激活时出现错误讯息,警告我们有部分磁盘损毁,但储存的资料仍然具全没有遗失。

如果开机讯息闪得太快没有看清楚,可以使用底下指令来观察:

lsraid -a /dev/md0

将该分割区重新分割并修改格式为 fd 后,进行资料复原工作:

raidhotadd /dev/md0 /dev/hdc1(将空白扇区 /dev/hdc1 加入 RAID 中并复原资料)

完成以上步骤后,再使用 lsraid 指令来观察,发现 RAID 装置已经恢复正常。

四、工作管理进程:

Linux 提供四种自动执行程序的机制,包含:cron、anacron、at 和 batch。使用时机分述如下:

cron 主要用来做周期性工作的管理进程,会根据系统时间来判断程序是否该执行,万一系统时间设定不正确将会造成进程错乱。

anacron 和 cron 一样也是用来做周期性工作的管理进程,但是它不检查系统时间,而改以读取时间戳记来计算间隔日数,依间隔日数判断是否该执行,适用于每天、每周或每月只执行一次的工作。

at 让指定程序在某个时间点到达时自动执行,适用于只执行一次的工作。

batch 指定工作在系统闲置时执行,可用来避开高负载时段。

使用 cron 前请先确定管理程序是否已经执行,可以使用以下指令来查看:

/sbin/service crond status

虽然 cron 允许使用者自行安排自己的工作,以方便在结束联机后,程序能自动运作,但这类工作对于已经提供多种网络服务的服务器来说负担太大,因此建议不要教使用者使用它,本文也不讨论这类的事情,毕竟我们的服务器只是 PC,不是 main frame。

cron 的主要设定档 /etc/crontab 内容如下:

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

HOME=/

# run-parts

01 * * * * root run-parts /etc/cron.hourly

02 4 * * * root run-parts /etc/cron.daily

22 4 * * 0 root run-parts /etc/cron.weekly

42 4 1 * * root run-parts /etc/cron.monthly

前面几行是定义 cron jobs 执行时的环境,我们不需要去修改它,底下四行是用来定义工作管理进程,上面看到的是系统管理进程的定义区分为七个字段,分别代表:分、时、日、月、星期、执行时的身分、要执行的 script,而一般的工作则只区分为六个字段,前五个字段与系统管理进程相同,最后一个字段则是要执行的工作。

字段 有效数值

分 0~59, * 代表每分钟都要执行,1-4 是指前四分钟各要执行一次,如果执行的时间不是连续的,可以用逗号来区隔,例如:5,10,15,20 代表第五分钟、第十分钟、第十五分钟、第二十分钟时要执行,如果每隔五分钟要执行一次,可以简写为 */5。

时 采用 24 时制,有效数值为 0~23,可以使用 * - , / 等通配字符,意义同上。

日 1~31,如果使用 30,则每逢二月会跳过不执行,如果使用 31,会变成大月时才执行,因此对于每月都得执行一次的工作,请安排在 28 日以前执行。当月份有指定时,必须为有效日期,否则该工作将永远不执行。通配字符使用方式同上。

月 1~12,也可以直接用英文缩写:jan、feb......等。 通配字符使用方式同上。

星期 0~7,其中 0 和 7 都代表星期天,也可以使用英文缩写:sun、mon......等。 通配字符使用方式同上。

如果要执行的工作是属于每天、每周或每月执行一次,建议改用 anacron 以确保一定会执行,如果是每小时要执行,建议直接在 /etc/cron.hourly 目录内直接新增一个定义文件,语法需与 /etc/crontab 相同。 其它情形则把定义档放置在 /etc/cron.d,这里的定义档将会每分钟都检查一次。

anacron 的设定档位于 /etc/anacrontab,如前所述它是以检查时间间隔的方式来决定是否执行,因此不受系统时间设定的影响,为了要检查时间间隔必须纪录每个工作每次执行时的时间戳记(timestamp),这些档案会放置在 /var/spool/anacron 目录里面。

anacron 设定文件分为间隔周期、执行延迟时间、工作识别名称、 要执行的工作四个字段,说明如下:

字段 使用说明

间隔周期 每次执行工作时应相隔几天,小于一天的请改用 cron

执行延迟时间 当距离上次执行的时间超过时间间隔,这表示中间有执行失败的情形,这种情形下在延迟几分钟后,该工作会再尝试执行一次。

工作识别名称 用来识别不同工作,同一名称不能重复使用。

要执行的工作 通常是一个命令或 script

anacron 的设定档预设内容如下:

SHELL=/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin;/usr/local/sbin;/usr/local/bin

# These entries are useful for a Red Hat Linux system.

1 5 run-parts /etc/cron.daily

7 10 run-parts /etc/cron.weekly

30 15 run-parts /etc/cron.monthly

这个设定可以用来确保 cron job 一定会如期执行。

at 指令用来执行一次性的工作而非周期性的工作,我们可以指定要执行的时间,它和 cron 一样会检查系统时间的设定,因此设定错误会造成工作无法正确执行,设定方式如下:

at 16:00 011503[ ENTER](排定执行时间是 2003年1月15日下午4点)

at> perl /root/backup.pl[Ctrl-D]

我们可以使用 atq 指令来查询现在尚未执行的预定工作。

如果想根据主机负载情形来决定执行时间,必须使用 batch 指令,实际上 batch 指令算是 at 的特殊应用,使用方式如下:

batch[ ENTER](不用指定执行时间)

at> perl /root/backup.pl[Ctrl-D]

[本文共有 2 页,当前是第 2 页] <<上一页 下一页>>



OVER

[1] [2] 页 RedHyphone.Union 投稿邮箱
[特别声明]:
本站文章大多搜索转载自网络中,如果侵犯了您的权利,请告之我们。本站将立即删除。
本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
查看评论】【向上滚屏】【关闭窗口】【 打印
-相关文章
  • openSUSE 11.1 Final - 正式发布
  • [视频]Opera Mini 4.2 正式版发布
  • dll注入系统进程(开源代码)
  • 认知盲区 解惑双网卡双线路DNS解析
  • FlashFXP 简体中文版 3.7.5 Build 1303 Beta[烈火]
  • -文章评论 (关闭)
    ·还没有相关的评论!

    网上大名:
    红旋风网络技术联盟 RHUTech.Union
     
    Copyright © 2000-2007 RedHyphone.Union All Rights Reserved. 红旋风联盟版权所有.皖ICP备05011033号
    中国红旋风网络技术联盟 | www.RedHyphone.net
    Mailto:Redhyphone@gamil.com