标签:-- restart default 一个 ref rmi umount 空闲 置配
几年前的公司,当时公司自己搞的CVS服务器,用CVS做版本控制,系统盘出现了坏道,无法正常进入系统;现在把当时记录的日志,更新硬盘的流程发出来,
两块数据盘做过Raid1磁盘阵列,均存储cvs数据。
一、先拷贝出数据并保存。
需要先将cvs数据拷贝出来备份,以防数据丢失。
1 当前无法正常进入linux系统,开机选择进入cvs server系统,设置启动进程为终端方便进行命令操作,init=/bin/sh,保存启动系统。
2 进入shell,挂载数据磁盘。
1) fdisk -l查看当前磁盘设备。
/dev/sda 系统盘
/dev/sdb /dev/sdc 两块数据盘
2) 当前分区/dev/sdb2及分区/dev/sdc2做了Raid1磁盘阵列,选择一个挂载
#mout /dev/sdb /mnt
#ls /mnt
3) 插入U盘,备份数据
fdisk -l查找不到U盘设备是由于系统直接启动的shell进程,环境变量和许多设备驱动没有正常加载,包括U盘设备驱动。
(1) 手动加载U盘驱动模块
#modprobe hid
#modprobe usbhid
#modprobe usb_storage
(2) 接着手动创建设备节点文件,命令格式 mknod [文件名] [类型] [主设备号] [次设备号]
首先查看系统当前块设备节点包括/dev/sda /dev/sdb /dev/sdc,那么需要使用mknod创建的U盘设备节点为
mknode [设备名] [设备类型] [主设备号] [从设备号]
注意必须创建正确的设备节点才可以访问设备。
首先块设备主设备号为8,从设备号每个分区递增1(如/dev/sda1),每个设备递增8(如/dev/sdb)
#ll /dev/sd*
brw-rw---- 1 root disk 8, 0 Apr 4 02:18 /dev/sda
brw-rw---- 1 root disk 8, 1 Apr 4 02:18 /dev/sda1
brw-rw---- 1 root disk 8, 2 Apr 4 02:18 /dev/sda2
brw-rw---- 1 root disk 8, 16 Apr 4 02:18 /dev/sdb
brw-rw---- 1 root disk 8, 17 Apr 4 02:18 /dev/sdb1
brw-rw---- 1 root disk 8, 18 Apr 4 02:18 /dev/sdb2
brw-rw---- 1 root disk 8, 19 Apr 4 02:18 /dev/sdb3
brw-rw---- 1 root disk 8, 32 Apr 4 02:18 /dev/sdc
brw-rw---- 1 root disk 8, 33 Apr 4 02:18 /dev/sdc1
brw-rw---- 1 root disk 8, 34 Apr 4 02:18 /dev/sdc2
brw-rw---- 1 root disk 8, 35 Apr 4 02:18 /dev/sdc3
可以推测U盘设备设备名为sdd,主设备号为8,从设备号为48,需要手动创建如下设备节点
#mknod /dev/sdd b 8 48
#mknod /dev/sdd1 b 8 49
(3) 插入U盘,挂载U盘设备到空闲目录下
#mount /dev/sdd1 /usb
备份/mnt中数据到U盘中
#cp /mnt/ /usb -r
备份系统中xinetd下的cvspserver文件,用于重新安装系统后配置cvs服务开机自动启动。
#cp /etc/xinetd.d/cvspserver /usb
二、更换系统盘
更换系统硬盘,安装redhat7系统。
三、挂载磁盘阵列
1 磁盘分区/dev/sdb2和/dev/sdc2已做了磁盘阵列,系统启动时,由于缺少磁盘阵列配置文件(/etc/mdadm.conf)会创建默认阵列设备
文件/dev/md127。
2 更改磁盘阵列设备名,生成配置文件,保证重启生成设备/dev/md2。
1) 挂载磁盘阵列,备份数据
#mount /dev/md127 /mnt
查看/mnt并备份
1) 停止当前磁盘阵列/dev/md127
#umount /dev/md127
#mdadm -S /dev/md127
2) 重新组装阵列
#mdadm --assemble /dev/md2 /dev/sdb2 /dev/sdc2
#mdadm -D /dev/md2 //查看是否成功组装阵列
3) 生成配置,保证系统重启能够自动生成磁盘阵列/dev/md2
#mdadm -Ds > /etc/mdadm.conf
4) 编辑fstab文件,让系统重启时自动挂载磁盘阵列
#mkdir /home/cvsroot //磁盘阵列挂载目录
#vim /etc/fstab
添加如下行:/dev/md2 /home/cvsroot/ ext4 defaults 0 0
5) 重启查看是否能自动创建/dev/md2并挂载到/home/cvsroot下
四、配置cvs服务
1 安装cvs服务及xinetd服务
#rpm -ivh cvs-1.11.23-35.el7.x86_64.rpm
#rpm -ivh xinetd-2.3.15-12.el7.x86_64.rpm
2 /etc/xinetd.d/下创建cvspserver,保证xinetd在系统重启时能够启动cvs服务。
拷贝旧系统备份的cvspserver文件到/etc/xinetd.d/目录下,或者手动创建。
#vim /etc/xinetd.d/cvspserver
写入如下内容:
service cvspserver
{
disable = no
flags = REUSE
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=
server_args = -f --allow-root=/home/cvsroot pserver
}
注意参数server_args配置为磁盘阵列的挂载目录。
3 重启xinetd服务
#service xinetd restart
#netstat -an | grep 2401 //查看cvs服务是否启动
4 cvs目录权限配置。
1) 创建cvs用户组和cvs用户
#groupadd cvs
#useradd -g cvs cvsroot
2) 查看cvs目录所属用户组
#ll /home //查看cvsroot目录用户组,如果为root用户组,修改为cvs用户组,所属用户为cvsroot
#chown cvsroot.cvs /home/cvsroot
#ll /home/cvsroot //查看cvsroot目录下子目录及文件所属用户组,如果为root,修改所属用户组
#chown -R cvsroot.cvs /home/cvsroot
3) 客户机测试cvs服务是否正常可用
假如cvs login出现错误Permission denied,关闭cvs服务器selinux防火墙
#setenforce 0
如果能够正常访问,修改配置配置文件/etc/sysconfig/selinux,修改SELINUX参数设置selinux开机不启动
SELINUX=disabled
CVS服务器更换系统盘
标签:-- restart default 一个 ref rmi umount 空闲 置配
原文地址:https://www.cnblogs.com/myJune/p/12424965.html