关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#1

帖子 上网摘星星 » 2017-07-11 12:07

为一台装有4块硬盘的机器安装了ubuntu17.4,作为一台NAS使用。对Ubuntu半知无解的小白,有几个问题到处搜索找不到答案,只好厚颜来请教了,还请各位指点迷津。

一、关于硬盘休眠
因为时刻待机的硬盘温度太高,所以希望它们能在闲置时自动休眠。在网上搜索后找到一条指令能够实现,指令如下:

代码: 全选

hdparm -B 127 -S 30 /dev/disk/by-id/********
注:*为需要休眠的硬盘名
引用自https://www.cmdgy.com/20150830/304.html

请问:
1. 该命令是运行一次就行,还是每次开机都需要重新运行?
2. 如果是每次开机需要运行,那么该将其写入哪个文件中?找不到rc.local,就不知如何下手了。

二、关于硬盘热拔插
插入硬盘,在快速启动栏会有一个硬盘图标出现,点击该图标,硬盘将挂载到“/media/用户名/” 目录下。这意味着要使用该硬盘,需要登录桌面点击快速启动栏的硬盘图标才能挂载,因为并不会一直留在桌面环境中,感觉有点不方便。
请问:
能否实现插入硬盘后自动挂载?

三、关于清空MariaDB数据
两个电视盒安装KODI,播放存放在NAS的电影,并将数据刮削到了NAS的Mysql里。后因将NAS改了电影共享目录名称,重新刮削后,出现了重复电影。

请问:
如何清空MariaDB的数据,还原到最初状态?
头像
vickycq
帖子: 4507
注册时间: 2011-03-20 13:12
系统: Debian
来自: 山东省寿光县
联系:

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#2

帖子 vickycq » 2017-07-11 13:06

上网摘星星 写了:一、关于硬盘休眠
1. 该命令是运行一次就行,还是每次开机都需要重新运行?
2. 如果是每次开机需要运行,那么该将其写入哪个文件中?找不到rc.local,就不知如何下手了。
1. 每次开机都需要重新运行;
2. 使用 /etc/hdparm.conf 设置参数。这是由 udev 自动管理的。
上网摘星星 写了:二、关于硬盘热拔插 因为并不会一直留在桌面环境中 能否实现插入硬盘后自动挂载?
1. 硬盘都是什么接口?(USB/SATA/...?) 什么格式?(ext234/ntfs/fat/...?)
2. 平时的状态是桌面环境根本不启动?也不在控制台登录,只偶尔用 ssh 远程登录?
上网摘星星 写了:三、关于清空MariaDB数据 请问:如何清空MariaDB的数据,还原到最初状态?
https://forum.kodi.tv/showthread.php?ti ... pid1458821
https://www.cyberciti.biz/faq/how-do-i- ... -database/http://kodi.wiki/view/MySQL/Setting_up_Kodi#Name_tag
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#3

帖子 上网摘星星 » 2017-07-11 16:16

谢谢大佬回复!
一、关于硬盘休眠
vickycq 写了: 1. 每次开机都需要重新运行;
2. 使用 /etc/hdparm.conf 设置参数。这是由 udev 自动管理的。
可以这样写入/etc/hdparm.conf吗?

代码: 全选

command_line {
       hdparm -B 127 -S 30 /dev/disk/by-id/************
}
二、关于硬盘热拔插
vickycq 写了:1. 硬盘都是什么接口?(USB/SATA/...?) 什么格式?(ext234/ntfs/fat/...?)
2. 平时的状态是桌面环境根本不启动?也不在控制台登录,只偶尔用 ssh 远程登录?
1. 硬盘都是SATA接口和NTFS格式;
2. 平时的状态是桌面、控制台基本不登录,偶尔ssh登录;
3. 我知道可以通过修改/etc/fstab 开机挂载,但这几天反复装了几次系统,都是好好的就不能启动了。昨天才发现问题所在,可能是我把挂载信息写在/etc/fstab里(修改如下),而开机的时候硬盘未插,导致装在U盘里的Ubuntu无法启动了(显示未找到引导设备),这几天用boot-repair修复了两次了。

代码: 全选

UUID=***  /media/挂载目录 ntfs-3g  defaults              0            0
另外,写在/etc/fstab里,拔掉再插也不会自动挂载,请问该如何是好……

三、根据给出的提示,已将数据库清空。
头像
vickycq
帖子: 4507
注册时间: 2011-03-20 13:12
系统: Debian
来自: 山东省寿光县
联系:

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#4

帖子 vickycq » 2017-07-11 23:10

上网摘星星 写了:可以这样写入/etc/hdparm.conf吗?
command_line {
hdparm -B 127 -S 30 /dev/disk/by-id/************
}
根据 /etc/hdparm.conf 中自带的提示,或许可以。不过也有一些失败的案例,如 https://qnalist.com/questions/7377103/e ... dparm-conf,显示出 command_line 这个关键字作为向后兼容的权宜之计或许存在一些问题。稳妥起见还是使用标准格式

代码: 全选

/dev/disk/by-id/************ {
	apm = 127
	spindown_time = 30
}
上网摘星星 写了:可能是我把挂载信息写在/etc/fstab里(修改如下),而开机的时候硬盘未插,导致装在U盘里的Ubuntu无法启动了(显示未找到引导设备),这几天用boot-repair修复了两
不太明白,没插外接数据盘怎会导致需要使用boot-repair?
上网摘星星 写了:写在/etc/fstab里,拔掉再插也不会自动挂载,请问该如何是好……
试试添加这几个选项:auto, nofail, x-systemd.automount, x-systemd.device-timeout=1
auto : 开机自动挂载
nofail : 如果没插硬盘,不要报错
x-systemd.automount : 自动创建 systemd.automount 单元
x-systemd.device-timeout=1 : 如果没插硬盘,等待1秒。(若不设置此项,会等待90秒)

参考:https://groups.google.com/forum/#!topic ... C6pc8qCgz8
(没试过,不知道行不行。)

上网摘星星 写了:1. 硬盘都是SATA接口和NTFS格式;2. 平时的状态是桌面、控制台基本不登录,偶尔ssh登录;
如果上面关于 fstab 的方法不行,试试这几篇提到的方法:
https://serverfault.com/questions/76650 ... th-systemd
http://jasonwryan.com/blog/2014/01/20/udev/

第一个链接主要在讲 USB 设备,其实稍加修改后可以适用于其它类型。比如 udev 规则的 SUBSYSTEMS=="usb" 匹配可以去掉。其它没发现什么仅适用于 USB 的内容。

(没试过,不知道行不行。)
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#5

帖子 上网摘星星 » 2017-07-11 23:57

vickycq 写了:
上网摘星星 写了:可以这样写入/etc/hdparm.conf吗?
command_line {
hdparm -B 127 -S 30 /dev/disk/by-id/************
}
根据 /etc/hdparm.conf 中自带的提示,或许可以。不过也有一些失败的案例,如 https://qnalist.com/questions/7377103/e ... dparm-conf,显示出 command_line 这个关键字作为向后兼容的权宜之计或许存在一些问题。稳妥起见还是使用标准格式

代码: 全选

/dev/disk/by-id/************ {
	apm = 127
	spindown_time = 30
}
上网摘星星 写了:可能是我把挂载信息写在/etc/fstab里(修改如下),而开机的时候硬盘未插,导致装在U盘里的Ubuntu无法启动了(显示未找到引导设备),这几天用boot-repair修复了两
不太明白,没插外接数据盘怎会导致需要使用boot-repair?
上网摘星星 写了:写在/etc/fstab里,拔掉再插也不会自动挂载,请问该如何是好……
试试添加这几个选项:auto, nofail, x-systemd.automount, x-systemd.device-timeout=1
auto : 开机自动挂载
nofail : 如果没插硬盘,不要报错
x-systemd.automount : 自动创建 systemd.automount 单元
x-systemd.device-timeout=1 : 如果没插硬盘,等待1秒。(若不设置此项,会等待90秒)

参考:https://groups.google.com/forum/#!topic ... C6pc8qCgz8
(没试过,不知道行不行。)

上网摘星星 写了:1. 硬盘都是SATA接口和NTFS格式;2. 平时的状态是桌面、控制台基本不登录,偶尔ssh登录;
如果上面关于 fstab 的方法不行,试试这几篇提到的方法:
https://serverfault.com/questions/76650 ... th-systemd
http://jasonwryan.com/blog/2014/01/20/udev/

第一个链接主要在讲 USB 设备,其实稍加修改后可以适用于其它类型。比如 udev 规则的 SUBSYSTEMS=="usb" 匹配可以去掉。其它没发现什么仅适用于 USB 的内容。

(没试过,不知道行不行。)
多谢多谢,明天试试!
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#6

帖子 上网摘星星 » 2017-07-12 23:28

vickycq 写了: 不太明白,没插外接数据盘怎会导致需要使用boot-repair?
我给fstab增加了如下内容

代码: 全选

#Entry for DDD:
UUID=****	/media/root/ddd	ext3,auto,nofail,x-systemd.automount,x-systemd.device-timeout=1,rw	0	0

#Entry for CCC :
UUID=******	/media/ccc	ntfs	auto,nofail,x-systemd.automount,x-systemd.device-timeout=1	0	0
在改后,插上硬盘能自动挂载了。但重启后系统无法引导。第一次在Ubuntu启动动画页面等了很久,第二次就显示如下信息:

代码: 全选

failed to open \EFI\BOOT\grubx64.efi - Not Found
failed to load image \EFI\BOOT\grubx64.efi - Not Found
start_image() returned Not Found
再次用了boot-repair修复……
头像
vickycq
帖子: 4507
注册时间: 2011-03-20 13:12
系统: Debian
来自: 山东省寿光县
联系:

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#7

帖子 vickycq » 2017-07-13 0:16

上网摘星星 写了:给fstab增加了如下内容
failed to open \EFI\BOOT\grubx64.efi - Not Found
再次用了boot-repair修复……
抱歉,对 EFI 启动相关内容不太熟悉,不明白是怎么回事... :em06
请 @poloshiao 来看看。

也可以尝试 4 楼倒数第二个链接中的方案。跟在 fstab 中添加条目原理一样,都是利用 systemd.automount 单元自动挂载。这里是利用 udev 规则触发 systemd.automount 单元在磁盘热插拔时启动。这样比 fstab 条目还灵活些 —— 新买的硬盘不用添加条目。
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#8

帖子 上网摘星星 » 2017-07-13 8:49

vickycq 写了:
上网摘星星 写了:给fstab增加了如下内容
failed to open \EFI\BOOT\grubx64.efi - Not Found
再次用了boot-repair修复……
抱歉,对 EFI 启动相关内容不太熟悉,不明白是怎么回事... :em06
请 @poloshiao 来看看。

也可以尝试 4 楼倒数第二个链接中的方案。跟在 fstab 中添加条目原理一样,都是利用 systemd.automount 单元自动挂载。这里是利用 udev 规则触发 systemd.automount 单元在磁盘热插拔时启动。这样比 fstab 条目还灵活些 —— 新买的硬盘不用添加条目。
多谢多谢!我试试2号方案先!
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#9

帖子 poloshiao » 2017-07-13 8:55

给fstab增加了如下内容
failed to open \EFI\BOOT\grubx64.efi - Not Found
這兩個訊息 應該是 獨立事件

在 /etc/fstab 掛載 分割區 到 檔案系統 並不牽涉 個別檔案

\EFI\BOOT\grubx64.efi 是 UEFI 開機模式 下 的開機檔案
該檔案 安裝在 的 efi system partition 內 (此時 還沒掛載到 /boot/efi)
無法開啟的原因 包含 找不到 efi system partition
無法啟動 \EFI\BOOT\grubx64.efi 開機程序 就沒有啟動 當然就無法掛載任何 /etc/fstab 項目
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#10

帖子 上网摘星星 » 2017-07-13 9:05

poloshiao 写了:
给fstab增加了如下内容
failed to open \EFI\BOOT\grubx64.efi - Not Found
這兩個訊息 應該是 獨立事件

在 /etc/fstab 掛載 分割區 到 檔案系統 並不牽涉 個別檔案

\EFI\BOOT\grubx64.efi 是 UEFI 開機模式 下 的開機檔案
該檔案 安裝在 的 efi system partition 內 (此時 還沒掛載到 /boot/efi)
無法開啟的原因 包含 找不到 efi system partition
無法啟動 \EFI\BOOT\grubx64.efi 開機程序 就沒有啟動 當然就無法掛載任何 /etc/fstab 項目
谢谢回复!

你所说的我理解,可改后无法引导也是事实 :Cry 因为我这几次修改fstab都导致它无法启动呢……

而且在修复引导之后,如若不将我添加的那几条挂载信息用#注释掉,还会卡在Ubuntu启动动画处,然后无法引导。

我快疯了……
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#11

帖子 上网摘星星 » 2017-07-13 9:30

会不会是我的系统装在U盘的缘故?
头像
vickycq
帖子: 4507
注册时间: 2011-03-20 13:12
系统: Debian
来自: 山东省寿光县
联系:

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#12

帖子 vickycq » 2017-07-13 12:14

上网摘星星 写了:还会卡在Ubuntu启动动画处
就是说,第一次卡住时,已经显示 Ubuntu 启动动画了?
如果是这样,您可以在 Ubuntu 启动动画刚刚出现时按 ESC,这样会显示启动文字信息。接下来您可以观察卡住时的出错信息。

老是让机器出错然后修复毕竟不太好。如果您打算按上一段的方法再测试方案1,建议把卡住时的错误信息拍照保存下来。另外 boot-repair 应该也有修复日志。看看没准会有收获。
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
上网摘星星
帖子: 41
注册时间: 2012-07-10 20:47

Re: 关于Ubuntu硬盘热拔插、休眠(自动断电)和MariaDB的几个问题请教

#13

帖子 上网摘星星 » 2017-07-13 15:15

@poloshiao
@vickycq
两位热心大神,实在不好意思,引导失败应该是由于下面这一条低级错误所致:

代码: 全选

#Entry for DDD:
UUID=****   /media/root/ddd   ext3,auto,nofail,x-systemd.automount,x-systemd.device-timeout=1,rw   0   0

#Entry for CCC :
UUID=******   /media/ccc   ntfs   auto,nofail,x-systemd.automount,x-systemd.device-timeout=1   0   0
不小心将格式(ext3)与后面的内容用逗号连在一起了,耽误两位宝贵时间,非常抱歉!
回复