linux 新硬盘挂载及问题解决
绑定了硬盘之后
1.首先看下要挂载的新硬盘有没有 使用命令 lsblk
不存在的话就重新扫描下设备 echo '- - -' > /sys/class/scsi_host/hostN/scan(N改成0或者1)
2.下面开始挂载硬盘
Centos挂载新硬盘
注:挂载操作会清空要挂载盘的全部数据,请确认挂载盘无数据
1).先列出所有磁盘 ll /dev/disk/by-path
注:如果无法确认数据盘的名称,请用df命令来确认系统盘的名称,从而排除挂错盘的情况
2)格式化硬盘 fdisk /dev/sdb
注:图中所指红色箭头处请手动进行输入
3).创建分区 mkfs.ext4 /dev/sdb1
4).挂载分区 (最好新建一个文件夹,如果挂载到已存在的文件夹上,会导致里边的文件消失,尤其是项目,这个问题下面再说)
mkdir /data
mount /dev/sdb1/data 将sdb这个盘挂在为/data
5). 将信息写入fstab,让系统开启自动挂载
命令: echo "/dev/sdb1 /data ext4 defaults 0 0" >> /etc/fstab
下面说一下挂载已有的文件夹上,并且文件夹中有项目(有点瞎猫碰上死耗子的感觉)
1.首先说一下问题
挂载到已有的文件夹且文件夹里有项目,挂载之后项目文件消失了只剩下logs文件夹了,当时发现的时候内心着实有点小慌,后来百度了一下说文件没有丢,只是挂载新硬盘后文件隐藏或者说不显示了,差不多这意思,把硬盘卸载了就出现了,然后按照百度后的的内容操作了一遍 如下:
mkdir /new ###创建临时目录
mount /dev/sdb1 /new ###将磁盘挂载到临时上目录
cp -R /home/* /new ###将/home下的所有数据复制到/new
rm -rf /home/* ####可选,主要为了腾出空间给原来的硬盘
umount /new ###解除挂载
rm -rf /new ###删除临时目录
mount /dev/sdb1 /home ###挂载/home 到新硬盘
然而结果并没有成功,使用命令umount /home 怎么弄就是卸载不了
进程总是被占用,然后就一直弄怎么杀掉使用这个文件夹的进程
就用到了以下命令:
fuser -mv /home 这是查询正在使用目标文件夹的命令
fuser -k /home 这是杀掉正在使用目标文件夹的命令
再使用umount 卸载命令还是那个情况,结果还是没有杀掉进程
网上说 fuser -km 命令不要轻易使用
不过我还是用了,只是shell 连接断了,再次连上之后没有异常情况
不过还是卸载不了,又用fuser查了一下
然后用kill -9 769502 强制杀掉进程,然而shell 又断开连接了
然而连上之后 用 fuser -m /home 还是有进程存在
就是用umonut -l /home 然后就稀里糊涂的成功 卸载了
显示新硬盘已经挂载到之前重新挂载的文件夹上了
而且 之前/home 下消失的项目文件也回来了
----------------------------------------------第一次写博客,有点乱不要喷啊,希望对你有帮助