我是 Ubuntu 的新用户。我对挂载点相关的问题感到困惑/var
。目前,我在 500GB 硬盘上使用 3 个分区。50GB /
、/home
392.* GB 和swap
15 GB。我在互联网上搜索后发现,上面的数据/home
都会保留。但没有找到任何文章说即使/var
重新安装或升级 Ubuntu 后数据是否也会保留。主要问题是我希望我创建的所有 mysql 数据库都是安全的。如果您能建议我如何保证它的安全,或者如果我创建单独的分区,它会不会更安全,我将非常高兴/var
?我使用的是单启动。
这可能是一个很基础的问题,但对我来说却很重要。抱歉我的英语不好(正在努力提高)提前谢谢。Md Al Amin
答案1
在重新安装系统之前,请将 mySQL 数据库移动到,/home
然后从现在开始忘记任何复杂的东西!
sudo service mysql stop
sudo cp --recursive --preserve=all /var/lib/mysql/ /home/
然后:
sudo nano /etc/mysql/my.cnf
并设置datadir
为/home/mysql
sudo nano /etc/apparmor.d/usr.sbin.mysqld
添加:
/home/mysql/ r,
/home/mysql/** rwk,
然后:
apparmor_parser -r /etc/apparmor.d/usr.sbin.mysqld
sudo service mysql start
确认一切正常后,只需删除/var/lib/mysql
答案2
另一个可能的解决方案是使用:
为 /var 创建新分区
- 创建一个新的分区来保存/var。您可以使用分区要做到这一点。
为这些分区创建文件系统(也可以使用 Gparted 完成)或使用
mkfs.ext4 /dev/sdaX
将 X 替换为你新创建的分区号
在 /mnt 下挂载新的文件系统
mkdir /mnt/var mount /dev/sdaX /mnt/var
进入单用户模式,使目录上没有读写活动
init 1
输入你的 root 密码
备份数据在/var
cd /var cp -ax * /mnt/var
数据成功传输后重命名 /var 目录
cd / mv var var.BAK
创建新的 var 目录
mkdir var
卸载新分区
umount /dev/sdaX
将其重新挂载为 /var
mount /dev/sdaX /var
编辑 /etc/fstab 文件以包含新分区,并以 /var 作为挂载点,以便它在启动时自动挂载。
/dev/sdaX /var ext4 defaults 0 0
现在您的 /var 位于单个分区上,因此您不必担心重新安装时丢失数据。
答案3
如果您再次安装 Ubuntu,您的/var
将被删除,因为/var
它不在单独的分区上,而为其创建单独的分区可能是个好主意/var
。
/var
重新安装 Ubuntu 后,备份数据库并将其移回。
从评论中可以看出一个重要的观点:
在复制 /var 的内容之前,请确保 MySQL 服务器已停止,否则备份可能会不完整。
我对 进行了备份/etc
,/var
如果/opt
我重新安装系统。