发布于 

解决linux下挂载其他linux硬盘的问题并创建smb局域网共享

# Intro

之前用来当作小型服务器的笔记本终于被我给淘汰了。已经关机了好久。最近买了块 SATA 硬盘盒,想要将这台笔记本内的数据备份出来并把硬盘用作其他用途。一切连接好后发现无法挂载,遂百度了一会查出了如下方法...

# 故障复现

  1. 连接 linux 系统,提示插入硬盘. /dev 分区下出现硬盘编号
  2. 执行如下指令
1
2
3
cd /
mkdir backup
mount /dev/sdc/ /backup/

报错

1
mount: unknown filesystem type 'LVM2_member'

# 解决方法 //Debian 系

  1. 执行如下指令安装 lvm2 并扫描查看以挂载的磁盘
1
2
sudo apt-get install lvm2
sudo vgscan
  1. 发现如下字样后找到对应的 xxx
1
Found volume group "xxx" using metadata type lvm2
  1. 设为活动状态并查看可挂载的分区
1
2
3
4
sudo vgchange -ay xxx
sudo lvs
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
data xxx -wi-a- 34.19G
  1. 挂载对应分区
1
sudo mount /dev/xxx/data/ /backup/

至此已经解决了问题,如果你还想把这块硬盘里的数据共享出去,比如共享给局域网内的 windows 主机,那就接着看..

# 设置 SMB

  1. 先更新一下
1
sudo apt-get update && sudo apt-get upgrade
  1. 安装 Samba 服务
1
sudo apt-get install samba samba-common
  1. 配置共享目录
1
2
3
4
// 新建目录
sudo mkdir /home/db
// 更改目录权限
sudo chmod 777 /home/db/ -R
  1. 添加账户

要注意添加的账户需要是系统内已存在的账户

1
2
// 后面的pi为系统的用户名
sudo smbpasswd -a pi

输入两次密码后创建成功

  • 创建系统账户
1
2
3
4
5
6
7
8
// -m参数为添加/home/username目录,username更改为你要创建的用户名.
sudo useradd -m username
// 更改账户密码
sudo passwd username
// 删除用户
sudo userdel -r username
// 更改登录zhanghu
su -username
  1. 配置 samba
1
2
3
4
// 建议先备份一下
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
// 编辑
sudo vim /etc/samba/smb.conf

在文件最后添加

1
2
3
4
5
6
[database] 
comment = 23333333 # 描述
path = /home/db/ # 目录
public = yes # 是否允许guest用户访问
writable = yes # 是否允许读写
workgroup = WORKGROUP # 工作组
  1. 重启 samba 服务
1
sudo service smbd restart

然后在 windows 里面映射就行了

# 借鉴 (摘抄)

ubuntu 20.04 安装配置 Samba 服务,Windows 和 linux 协同工作