linux系统管理

lws778899 贡献于2013-05-31

作者   创建于2011-08-13 00:55:00   修改者lamp  修改于2012-10-11 08:57:00字数11078

文档摘要:linux引导流程解析 linux软件包管理 linux用户和用户组管理 linux服务和进程管理 linux文件系统管理
关键词:

 Linux系统管理 一、 linux引导流程解析 二、 linux软件包管理 三、 linux用户和用户组管理 四、 linux服务和进程管理 五、 linux文件系统管理 一、 linux引导流程解析 1、 linux引导流程 固件firmware(CMOS/BIOS)软硬件时钟设置: 软件时钟,操作系统的时钟(date);硬件时钟,固件时钟,(hwclock)。 hwclock --help NTP同步时间,指网络时间服务器与软件时钟的同步。 POST加电自检 (物理层面,硬件基础上进行检测) 自主程序boodloader(GRUB) grub配置文件:/boot/grub/grub.conf title:定义菜单项名称 root:定义系统内核所在的分区 kernel:指定内核文件所在位置 initrd:指定镜像文件所在位置 载入内核 载入内核Kernel 驱动硬件 (操作系统软件层次上识别硬件是否能够调用,通俗的讲就是让操作系统认识硬件。) 可以使用dmesg命令查看系统启动过程中的所有的信息。 启动进程init UNIX系统中,init是第一个可以存在的进程,其PID恒为1。内核调度器,分配CPU时间、进程间切换分时,PID为0。 读取执行配置文件/etc/inittab initdefault 定义缺省运行级别 /etc/rc.d/rc.sysinit 初始化系统服务 /etc/rc.d/rc /etc/rc.d/rcN.d /etc/rc.d/rc(0-6).d: 分别存放对应的运行级别的服务程序脚本的软连接,链接到/etc/rc.d/init.d目录中的相应脚本。 自启动服务 /etc/X11/prefdm 若运行级别是5,将启动 X Window 2、 linux运行级别run-levels: 0 关机 1 单用户模式(root) 2 字符模式,不启动NFS 3 字符模式 4 自定义 5 图形模式 6 重启 runlevel 查看当前运行级别 init {0-6} 切换运行级别 在inittab文件中,所有条目采取以下格式: id:run-levels:action:process 【man inittab】 id: 标示符,一般为两位字母或数字; run-levels:运行级别,可以指定多个; actionaction常用取值: wait 执行process中指定的命令,并等其结束再运行其他命令。 nitdefault 指定系统缺省启动的运行级别 sysinit 系统启动任何运行级别都执行process中指定的命令。 ctrlaltdel 按下ctrl+alt+del时执行process中指定的命令。 :执行的状态或要求; process:运行的脚本或命令。 id:3:initdefault: 系统默认运行级别为3 l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 3、 管理自启动程序 chkconfig 针对某个服务进行管理 chkconfig --list 【服务名】 查看某服务在各个级别中的开启情况 chkconfig --level(s) 【运行级别】 【服务名】 【on/off】 ‚ntsysv 针对某个运行级别以菜单点选方式管理 ntsysv --level 【运行级别】 ƒservice service = /etc/rc.d/init.d , reload 重新加载配置文件,如httpd服务。 configtest 检测语法错误。 【服务名】 【start /stop /status /restart/reload/configtest]】 手工启动或关闭系统服务 4、启动故障分析与解决 思路:若系统发生启动故障时,应先根据系统错误提示并结合linux引导流程找到故障原因,若系统故障比较严重,可以进行光盘修复;针对某些服务故障,可以用dmesg命令查看系统启动过程中的所有信息,然后对症下药;若系统某些服务出现状况的时候,要判断哪里出现问题,也可以检索/var/log/messages文件中是否有该服务的提示信息。 案例:把/etc/inittab文件删除,事先有备份,备份文件在/backup/inittab.bak ,如何修复? 步骤:a、光盘启动,linux rescue 进入修复模式 b、把硬盘/分区结构恢复,挂载到光盘修复系统的/mnt/sysimage chroot /mnt/sysimage c、cp /mnt/sysimage/backup/inittab.bak /mnt/sysimage/etc/inittab d、退出chroot exit e、重启 exit 二、 linux软件包管理 1、二进制软件包管理(RPM、YUM) 二进制软件包管理原则:查询、校验、提取文件建议使用rpm;安装、升级、卸载建议使用yum。 (1)RPM软件包 rpm软件包的一个例子:sudo-1.72pl-5.e15.i386.rpm sudo 软件名 1.72pl 版本号 5. e15发行号 i386硬件平台 * 版本号前面的部分都是软件名。 软件名-版本号-发行号-CPU.rpm rpm查询 rpm - q / -a / -f / -i / -p / -l / -c / -d [软件名或软件包名] (query / all / file / information / package / list package 软件安装前 -p list 软件已经安装 -l / configure / document) rpm -ql 软件名 rpm -ql sudo rpm -qip 软件包名 rpm -qip /mnt/cdrom/CentOS/nmap-4.11-1.1.i386.rpm 案例:vi配置文件~/.vimrc ~/.vimrc只能写编辑模式命令: ~ 宿主目录(家目录) root → /root username → /home/username 中使用#注释无效 # rpm -qa | grep vim #rpm -ql vim-common > /test/vim.list ; grep example /test/vim.list #vi /usr/share/vim/vim70/vimrc_example.vim 查看得知在.vimrc配置文件中是用双引号(“)注释的。 ‚rpm校验 a、校验软件 —— 检查软件问题(安装文件丢失、权限改错) rpm -V [软件名] 无信息-代表软件安装后所有文件未被更改 missing-文件被删除 M-mode 文件权限被改动 U-user 所有者 g-group 所属组 S-size 文件大小变化 5-md5 md5校验值 判断文件的唯一性 T-time 时间值-修改时间变更 L-link 链接文件被更改 D-device 设备文件变动 b、校验文件 rpm -Vf [命令或配置文件] diff [file1] [file2] 比较两个文件内容的不同 ƒrpm提取文件 rpm2cpio 软件包名 | cpio -idv .导入文件 i 导入 -v 详细信息 -d 保持导入文件目录结构 -导入文件要写绝对路径 *只能提取文件,不能提取目录 例:# rm /usr/bin/sudo # rpm -V sudo 问:如何恢复usr/bin/sudo文件? 思路:1、确定文件所属软件包 # rpm -qf /usr/bin/sudo 2、恢复文件 直接恢复文件到原位置,先切换到根目录 cd / rpm2cpio /mnt/cdrom/CentOS/sudo-1.7.2p1-5.el5.i386.rpm | cpio -idv ./usr/bin/sudo 知识点:linux系统中任何存储单位(硬盘、光盘、网络共享目录)都不能直接操作,必须通过挂载点操作,挂载点相当于存储单位的操作入口,就是一个空目录。 案例:把/etc/inittab文件删除,没有备份,如何修复? 步骤:a、光盘启动,linux rescue 进入修复模式 b、把硬盘/分区结构恢复 chroot /mnt/sysimage c、查问丢失文件隶属于哪个软件包 rpm -qf /etc/inittab d、挂载光盘挂载光盘: mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom 其中/dev/cdrom 光驱设备名,是软连接,原文件是/dev/hdc,光盘修复模式下用/dev/hdc; /mnt 默认存放挂载点的目录(光盘、U盘)。 mount /mnt/sysimage/dev/hdc /mnt/sysimage/mnt/cdrom e、恢复文件 cd /mnt/sysimage //切换到根目录,此时的根为/mnt/sysimage rpm2cpio /mnt/sysimage/mnt/cdrom/CentOS/软件包 | cpio -idv ./etc/inittab f、退出 exit 退出chroot模式 exit 退出linux修复模式 (2)YUM软件包 应用yum的好处:自动解决软件包依赖关系;方便的软件包升级。 yum安装 :yum install [软件名] yum install 安装时若提示其他应用程序yum-updatesd正在执行,这是yum锁定的错误。 查询后关闭即可: # ps -le | grep yum-updatesd # kill 进程PID (-y 自动安装) ‚yum卸载 :yum remove [软件名] (-y 自动卸载) ƒyum升级 :yum update [软件名] (-y 自动升级) 检测升级:yum check-update [软件名] 2、源代码包安装(.tar.gz、.tar.bz2) 源代码包.tar.gz和二进制包.rpm的区别: a、二进制包是源代码包编译后发行的安装格式; b、定制性强,选项自由定义; c、适用性强,一个源代码包可以支持所有UNIX/Linux系统. 源代码包的一个例子:proftpd-1.3.3d.tar.gz 软件名-版本号.tar.gz ‚标准的源代码包安装流程: a、解压解包 tar -zxf ,进入源代码包目录 b、./configure --prefix=/usr/local/softwarename 默认目录:/usr/local/softwarename 作用:搜集系统软硬件信息生成编译文件 makefile,事先安装相应的编译器 C语言-gcc C++语言-gcc-c++ ./configure --help 查看配置选项 ./configure 执行当前目录下的configure configure 把configure当成命令执行在PATH中查找 c、编译 make 。作用:调用编辑器把源代码编译成文件 d、安装 make install 。作用:拷贝编译文件和源代码包文档到安装目录(设置权限) ƒ检测源代码包是否安装成功: a、检测安装目录下文件 b、尝试启动服务 # /usr/local/proftpd/sbin/proftpd # ps -le | grep proftpd *只有用RPM包安装的软件才能使用rpm/yum查询、校验 *源代码大多没有安装启动程序,所以不能使用service启动 ④卸载源代码包: a、关闭服务进程 b、删除安装目录 rm -rf /usr/local/softwarename 3、脚本安装(shell或java脚本) 判断标准:是否有configure文件,查看源代码包目录下README或INSTALL文件,根据安装操作帮助提示执行相应脚本。 # find [源代码包目录] -name README -o -name INSTALL # vi README 或 # vi INSTALL # ./脚本命令 三、linux用户和用户组管理 1、用户及用户组配置文件管理 文件格式 字段 含义 用 户 用户信息文件 /etc/passwd 用户名 字母和数字组成 配 置 文 件 密码 密码位 UID 用户类型: 1、 超级用户 (root UID=0); 2、 伪用户(UID=1~499); 3、 普通用户(UID=500~60000) 用户标识 GID 缺省用户组标识 描述 描述信息,可存放用户全名等信息 宿主目录 用户登录系统后的缺省目录 命令解析器 用户使用的shell默认为bash 用户密码文件 /etc/shadow 用户名 用户名 密码 加密密码 最后一次修改时间 用户最后一次修改密码的天数 最小时间间隔 两次修改密码之间的最小天数 最大时间间隔 密码保持有效的最多天数 警告时间 从系统开始警告到密码失效的天数 账号闲置时间 账号闲置时间 失效时间 密码失效的绝对天数 标志 一般不使用 用 户 组 配 用户组文件 /etc/group 组名 用户组名称,建议按功能或组织划分和命名 置 文 件 组密码位 组密码一般不使用 GID 用户组标识 组内用户列表 属于该组的所有用户列表 用户组密码文件 /etc/gshadow 组名 用户组名称,建议按功能或组织划分和命名 组密码 加密密码 组管理员 用户组管理员,由root授权 组内用户列表 属于改组的所有用户列表 新用户配置文件目录 /etc/skel 新添加用户配置文件 登录信息文件 /etc/motd 登录后给用户显示信息,登录不成功不显示 手工添加用户:分别在用户配置/etc/passwd、/etc/shadow和用户组配置文件添加一笔记录;然后生成宿主目录(通过/etc/skel),并修改宿主目录所有者及权限。 案例:手工添加一个用户 hward a、生成用户信息 /etc/passwd,组ID 指定缺省组 hward:x:510:511:project zhangsan:/home/hward:/bin/bash b、生成用户密码 /etc/shadow 密码 直接复制其他用户密码 hward:$1$U8/GDI/M$ZktOqoLYzumK/zYyVoYgB1:15192:0:99999:7::: c、把用户加入用户组 /etc/group /etc/gshadow webadmin:::hward d、创建宿主目录并更改权限 cp -r /etc/skel /home/hward 宿主目录权限700,所有者为此用户,所属组为此用户缺省组 chmod -R 700 /home/hward ; chown -R hward /home/hward ; chgrp -R webadmin /home/hward 2、 用户管理命令 命令添加用户:useradd [选项] [用户名] -u UID -g 缺省组GID/组名 (用户组需存在) * -G 指定隶属多个组 (用户组需存在) * -d 宿主目录 directory -s 命令解释器 shell -c 描述 comment * -e 失效时间 expire YYYY-MM-DD * # useradd -g webadmin -c "project jayjun" -e 2011-09-30 admin # passwd admin ‚删除用户userdel -r [用户名] 若想清理该用户其他目录下的相关信息,可以用find命令查找并进行选择性处理: find / -user 用户 find / -group 用户 -r 删除用户宿主目录 只是删除了该用户的配置文件(/etc/passwd /etc/shadow /etc/group /etc/gshadow)、宿主目录以及邮箱目录。 ƒ修改用户信息 usermod (modify usermod与useradd选项一致) a、把用户添加到用户组 usermod -G 组名 用户名 (linux中不推荐使用,gpasswd UNIX不支持) usermod -G wheel hward grep wheel /etc/group b、改名 usermod -l [新名] [旧名] usermod -l charles zhaoliu ④pwck 检测用户配置文件 id 查看用户UID、缺省值、所属组 finger 查看用户详细信息 finger [用户] a、登录信息 b、邮件信息mail c、计划任务信息 plan 3、 用户组管理命令 添加用户组 groupadd [用户组] ‚删除用户组 groupdel [用户组] ƒ修改用户组信息 groupmod [用户组] a、改名 groupmod -n [新名] [旧名] b、把用户添加到用户组 gpasswd -a [用户] [用户组] (add) c、设置用户组管理员 gpasswd -A [用户] [用户组] (Administrator) 4、 用户权限管理 a、授权一个用户全权管理一个文件/目录 思路:设置用户为文件/目录的所有者 chown hward /software b、授权多个用户对一个文件/目录有某种权限 * 相同类型用户授权 思路:把多个用户加入到一个组,改变文件/目录的所属组为此组,对组授权 c、管理员授权sudo 授予普通用户以root身份执行命令;命令范围可限定至具体选项和参数 配置文件:/etc/sudoers,编辑配置文件命令visudo,普通用户使用命令sudo。 格式: 用户或%组名 主机地址=授权命令(绝对路径) 案例1:授权hward可以添加删除用户 (a)、# visudo hward 192.168.16.80=/usr/sbin/useradd,/usr/sbin/userdel (b)、用户执行:sudo 授权命令 $ sudo /usr/sbin/useradd hward2 sudo -l 查询授权命令 案例2:限制普通用户使用su # groupadd suadmin # gpasswd -a jayzhou suadmin # gpasswd -a zlj suadmin # chmod 4750 /bin/su # chgrp suadmin /bin/su 案例3:授权Apache让普通用户 Jack维护 思路:(a)、启动脚本控制 /etc/rc.d/init.d/httpd (b)、更新网页文件 /var/www/html (c)、更改配置文件 /etc/httpd/conf/httpd.conf 步骤:(a)、# visudo Jack 192.168.0.60=/etc/rc.d/init.d/httpd start,/etc/rc.d/init.d/httpd reload,/etc/rc.d/init.d/httpd status,/etc/rc.d/init.d/httpd configtest Jack 192.168.0.60=/usr/bin/vim /etc/httpd/conf/httpd.conf (b)、chown jack /var/www/html (c)、chown jack /etc/httpd/conf/httpd.conf d、特殊权限 SetUID 前提是普通用户有可执行x权限,SetUID才有意义。 SetGID 粘着位 思考:为什么普通用户可以设置密码? SetUID:权限在文件所有者x位置标记s,只能对可执行文件授权,执行时会以授权文件的所有者身份执行 *所有命令默认的所有者都是root SetGID:概念和SetUID一样,执行时所属组会以授权文件的所属组身份执行。 粘着位:权限为777的目录,用户只能在目录下删除和修改所有者是自己的文件。 *如/tmp目录 案例1:授权touch/mkdir具有SetUID、SetGID # su - hward $ touch file01 $ ls -l file01 -rw-r--r-- 1 hward webadmin 0 Aug 6 22:16 file01 # chmod u+s /bin/touch # ls -l /bin/touch -rwsr-xr-x 1 root root 42284 Mar 1 2010 /bin/touch $ su - hward $ touch file02 $ ls -l file02 -rw-r--r-- 1 root webadmin 0 Aug 6 22:20 file02 $ su - root # chmod g+s /bin/touch # ls -l /bin/touch -rwsr-sr-x 1 root root 42284 Mar 1 2010 /bin/touch # su - hward $ touch file03 $ ls -l file* -rw-r--r-- 1 hward webadmin 0 Aug 6 22:16 file01 -rw-r--r-- 1 root webadmin 0 Aug 6 22:20 file02 -rw-r--r-- 1 root root 0 Aug 6 22:26 file03 案例2:/usr/bin/vim 授予SetUID # chmod u+s /usr/bin/vim # ls -l /usr/bin/vim -rwsr-xr-x 1 root root 2731692 Sep 20 2009 /usr/bin/vim # su - hward $ vi /etc/inittab $ vi /etc/shadow 案例3:查找SetUID、SetGID命令 find -perm (permission 权限) 查找系统中权限为777的二进制文件 find / -perm -0777 -a -type f find / -perm -4000 -o -perm -2000 > /test/setuid.list chmod u+s /bin/mkdir find / -perm -4000 -o -perm -2000 > /test/setuid.list.20110820 diff /test/setuid.list /test/setuid.list.20110820 61a62 > /bin/mkdir 四、linux服务和进程管理 1、服务与进程管理命令 w 查看用户信息 kill 【进程号】 关闭进程 pkill 【进程名称】 关闭进程 kill -9 强行关闭 kill -1 重启进程 killall 结束所有进程 pgrep 查找服务进程号 ‚nice 和renice *优先级取值范围为[-29,19] nice 指定服务的运行优先级 格式:nice -n command nice --5 service httpd start renice 改变一个正在运行进程的优先级 格式:renice n PID renice -5 2777 ƒ进程的挂起和恢复 挂起:Ctrl + Z 终止:Ctrl + C 后台执行:& 查看挂起及后台执行进程 jobs 恢复到前台继续运行 fg 恢复到后台继续运行 bg 2、 计划任务 at 安排一个或多个命令在指定的时间运行一次 *编写命令时须写绝对路径 at [-f 文件名] 时间 atrm 删除队列中的任务 atq 查看队列中的任务 at 命令指定时间的方式 :a、绝对计时方法 hh:mm MMDDYY b、相对计时方法 now +n minutes ; now +n hours ; now +n days ‚crontab -e 编辑当前周期性计划任务 crontab -l 显示当前周期性计划任务 书写注意事项:选项都不能为空,必须填入,不知道的值使用通配符*表示任何时间; 不连续的值用,间隔,连续的值用-间隔; 间隔固定时间执行书写为*/n格式; 命令应该给出绝对路径; 用户必须具有运行所对应的命令或程序的权限。 案例:编写计划任务,使用tar命令每周日凌晨三点对/etc目录做一次完整备份,要求对备份文件标注日期年月日,备份文件存放在/backup目录下;每周二五凌晨两点对/etc目录做一次增量备份,备份文件也存放在/backup目录中。 步骤:crontab -e tar -zcf /backup/etc.bak.tar.gz /etc 0 3 * * 0 /bin/date >> /var/etc.bak.log ; /bin/tar -zcf /backup/etc.bak_$( date +%F) /etc 2>> /var/etc.bak.log 0 2 * * 2,5 /bin/date >> /var/etc.bak.log ; /bin/gunzip /backup/etc.bak.tar.gz ; /bin/tar -uf /backup/etc.bak.tar /etc 2>> /var/etc.bak.log ; /bin /gzip /backup/etc.bak.tar 五、 linux文件系统管理 1、 文件系统构成: 目录名称 用途说明 备注 /usr/bin、/bin 存放所有用户可以执行的命令 /usr/sbin、/sbin 存放只有root可以执行的命令 /home 用户缺省宿主目录 每一个用户缺省登录在各自的宿主目录,可单独划成一个分区,备份。 /proc 虚拟文件系统,存放当前进程的信息 /dev 存放设备文件 块设备 b : 以数据块为单位读写的设备 硬盘、光盘 字符设备 c :以字符为单位读写的设备 终端、打印机 /lost +found 存放一些系统出错的检查结果 /tmp 存放临时文件 该目录系统设置有粘着位t /etc 系统配置文件 备份。 /var 包含经常发生变动的文件,如邮件、日志文件、计划任务等 /usr 存放所有命令、库、手册页等 文件比较大,类似windows系统光盘下的目录C:\windows,Linux中习惯把软件安装在/usr/local目录下,/usr/log备份。 /boot 内核文件及自举程序文件保存位置 备份。可单独划成一个分区 /mnt 临时文件系统的安装点 U盘、光盘、网络共享目录的挂载点,是一个空目录 2、 常用命令 查看分区df -h ( -h 以一种人性化空间大小方式显示 ) 查看目录大小 du -sh 查看文件大小 du -h 查看文件类型 file 查看文件详细时间参数 stat ( access time change time modify time ) 校验文件md5值 md5sum md5sum /etc/*.conf > /backup/server.conf.md5 echo "test" >> /etc/syslog.conf md5sum -c /backup/server.conf.md5 md5sum -c /backup/server.conf.md5 | grep FAILED 3、 添加硬盘分区 划分分区 fdisk 查看分区情况fdisk -l 【硬盘设备名】 fdisk -l /dev/sdb 案例:/backup分区(Linux)、swap分区 fdisk 【硬盘设备名】 m 帮助 p 查看分区表 print n 添加新分区 new t 改变分区文件系统类型 d 删除分区 w 保存退出 q 不保存退出 分区分为三种: a、主分区 b、扩展分区 c、逻辑分区 主分区和扩展分区最多4个,扩展分区只存放逻辑分区,少于4个分区,全部设置为主分区 一般:前3个会划分主分区,第4个划分扩展分区(剩余所有空间),扩展分区下划分逻辑分区 划分分区大小 +sizeM 2G +2048M 82 swap分区 83 数据分区ext3 5 扩展分区 ‚创建文件系统(格式化) a. 格式化swap分区 mkswap 分区名 mkswap /dev/sdb1 b. 格式化数据分区 mkfs.ext3 分区名 mkfs -t ext3 分区名 ƒ尝试挂载 mount a、创建挂载点 Linux中所有中数据设备不能直接写入,必须有一个操作入口 swap分区无挂载点 mkdir /backup b、挂载 mount 设备名 挂载点 mount /dev/sdb2 /backup df 确认挂载 卸载:umount 挂载点 启用swap分区:swapon 分区名 free查看 free -m swopoff 关闭swap分区 ④写入配置文件 /etc/fstab file system table LABEL=/ / ext3 defaults 1 1 设备名或卷标 挂载点 文件系统类型 设置选项 是否检测 顺序 /优先检测、数据分区随后检测 /dev/sdb2 /backup ext3 defaults 1 2 /dev/sdb1 swap swap defaults 0 0 4、 swapfile 作用:swap分区不够,用现有分区剩余空间实现swap功能 步骤:a、生成swap分区文件 dd if=/dev/zero /dev/zero 往输出中写零 /dev/null 黑洞,输出都会消失 of=指定生成文件(非目录) bs=单位 count=总计大小 b、生成为swap文件 mkswap 生成文件的路径 c、尝试启动 swapon 生成文件的路径 d、写入配置文件 # vi /etc/fstab 生成的swap文件的路径 swap swap defaults 0 0 5、 磁盘配额 a、开启分区配额功能 编辑/etc/fstab文件,在挂载设置属性 ro 只读 noexec 可执行文件不可执行 nosuid SetUID权限失效 acl 启动ACL权限控制 上加上标志usrquota或groupquota 重新挂载该分区:mount -o remount 【分区名称】 b、建立配额数据库 quotacheck -cvu 【分区名称】 -c 自动创建配额数据库文件 -v详细信息 -u 用户配额aquota.user -g用户组配额aquota.group 会生成aquota.user文件 注:针对根分区使用磁盘配额时,会出现提示信息,这时应该加上-m选项来进行强行检测 c、启动配额功能 quotaon 【分区名称】 (quotaoff 关闭分区) d、编辑用户配额 edquota 【用户名】 edquota -g 【用户组名】 复制用户配额 edquota -p 【模板用户】 【复制用户1】 【复制用户2】 6、 备份 系统备份: /etc /boot /var/log /usr tar -zcf /backup/sys_$(date +%F) $(date +%F) 添加年月日; $(date +%y.%m.%d.%H.%M) 添加年月日时分。 .tar.gz /etc /boot /usr /var/log 用户备份(用户配置文件): /home /website tar -zcf /backup/user_$(date +%F).tar.gz /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/motd /etc/skel ‚tar -ztf 不解包查看文件内容 tar -ztf /backup/sys_$(date +%F).tar.gz | grep fstab ƒ恢复 cd / tar -zxf /backup/sys_$(date +%F).tar.gz etc/fstab ④tar -rf tar -uf -r追加 -u更新 注:-r 、-u只能针对.tar,不能对.tar.gz操作 tar -rf /backup/user_$(date +%F).tar /etc/login.defs tar -uf /backup/user_$(date +%F).tar /etc/passwd tar本地备份实例: a、每周日凌晨两点做一次系统完全备份 b、每周一到周六凌晨三点做一次系统增量备份 # tar -zcf /backup/sys.tar.gz /etc /boot /usr /var/log # crontab -e 0 2 * * 0 /bin/date >> /backup/sys.log ; /bin/tar -zcf /backup/sys_$(date +\%Y\%m\%d) /etc /boot /usr /var/log 2>> /backup/sys.log 0 3 * * 1-6 /bin/date >> /backup/sys.log ; /bin/gunzip /backup/sys.tar.gz ; /bin/tar -uf /backup/sys.tar /etc /boot /usr /var/log 2>> /backup/sys.log ; /bin/gzip /backup/sys.tar

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 6 金币 [ 分享文档获得金币 ] 0 人已下载

下载文档