小编jia*_*103的帖子

在 Linux 中对新硬盘进行初步测试

我即将获得几个全新的 HGST DeskStar 4TB 3.5" SATA 硬盘驱动器。在我开始使用它们并将我的数据委托给他们之前,这些天是否有任何推荐的做法我应该执行,特别是因为它们仍处于初始阶段保修期?

通常,我只是插入新驱动器,对它们进行 fdisk,在需要时进行加密,使用 ext4 进行格式化,然后继续使用,不过这次将是 ZFS(通过 ZoL)。当我有时间时,我会将它们连接到 smartmontools 以便 smartd 可以监视它们,但仅此而已。

我应该在开始时查看任何特定的 SMART 值吗?我是否应该在整个磁盘长度上写入 1、0 或随机数据,如果是,则将其全部读回?我应该让它通电整整 30 天并留意任何事情吗?我是否应该验证驱动器的 APM 设置已关闭,以便不会因频繁的减速而过早磨损?

2017 年 10 月 7 日更新:我遵循了@Xen2050 的回答和@sawdust 的评论中的建议。

我拿到了驱动器,我准备开始测试它们。我创建了一个脚本来捕获 Xen2050 的建议。

#!/bin/sh

AWK=/usr/bin/awk
CLEAR=/usr/bin/clear
GREP=/bin/grep
SLEEP=/bin/sleep
SMARTCTL=/usr/sbin/smartctl

EXIT_SUCCESS=0
EXIT_INSUFFICIENT_ARGS=1

usage() {
   cat << END_OF_FILE
USAGE

   ${0} interval device

EXAMPLES

   ${0} /dev/sda

END_OF_FILE
}

runIteration() {
   runIteration_device=${1}

   #${HDPARM} -B ${runIteration_device} | ${GREP} 'APM_level'
   #${HDDTEMP} ${runIteration_device}
   #${SMARTCTL} --attributes ${runIteration_device}
   ${SMARTCTL} --attributes ${runIteration_device} | ${GREP} -E …
Run Code Online (Sandbox Code Playgroud)

linux hard-drive smart

7
推荐指数
1
解决办法
4976
查看次数

netcat over UDP 的问题

在对此处描述的问题进行故障排除时,我尝试了一些非常基本的方法:我尝试通过 UDP 设置一个非常基本的 netcat 连接,但我发现它没有按预期工作。

与下面的 TCP 插图一样,我希望 UDP 案例在窗口 2 中输入时在窗口 1 上回显相同的输出;相反,在 UDP 情况下,我在窗口 1 中没有输出。

我在笔记本电脑上运行 Debian Jessie,并且使用以下捕获过滤器运行 Wireshark:

udp and not (port 123 or port 5353 or port 1900)
Run Code Online (Sandbox Code Playgroud)

在一个终端窗口中,我通过运行以下命令开始了 TCP 测试:

$ nc -l 6900
Run Code Online (Sandbox Code Playgroud)

在第二个终端窗口中,我运行了以下命令:

$ nc localhost 6900
Run Code Online (Sandbox Code Playgroud)

在窗口 2 中,我键入“one”并按 Enter,然后键入“two”并按 Enter,最后按 Ctrl+D 退出。

在“one”上按 Enter 后,我看到“one”在窗口 1 中回显。在“two”上按 Enter 后,我看到“two”在窗口 1 中回显。当我按下 Ctrl+D 时,两个 netcat 实例都退出并返回到提示。

这表明我可以毫无问题地建立 TCP 连接。接下来,我尝试了UDP。

窗口 1:

$ nc -l -u 6900
Run Code Online (Sandbox Code Playgroud)

窗口 2:

$ …
Run Code Online (Sandbox Code Playgroud)

networking udp netcat debian-jessie

5
推荐指数
1
解决办法
1万
查看次数

如何使用 rsync 恢复中断的传输

我需要中断并重新启动 Linux 复制操作。做这个的最好方式是什么?

我目前正在将数据从一台 Debian PC 复制到另一台。我通过以下方式开始此操作sshfstar但没有使用要求sshfs,也没有tar其他可靠的方法是否足够:

local$ mkdir /path/to/remote-sdb1
local$ sshfs root@remote:/mnt/sdb1 /path/to/remote-sdb1
local$ tar cf - /path/to/local/data/to/copy | tar xf - -C /path/to/remote-sdb1 &
Run Code Online (Sandbox Code Playgroud)

远程盒子是系统救援 CD 的一次性启动,没有本地操作系统,并且位于我的防火墙内,因此我不太关心以 root 身份登录,除非有人提出其他意见。

这比我最初预期的时间要长,因此我需要中断操作以关闭远程盒电源几分钟。

当我重新启动它时,我知道我无法恢复 tar 操作;相反,是否有类似rsync命令的东西可以让我轻松地从中断处恢复并完成传输,包括在中断操作时完成正在进行的文件的拙劣传输?

完成后,我计划运行rsync答案中的命令来验证传输是否成功完成,除非有人建议这是多余的:

local$ rsync -niaHc /path/to/local/data/to/copy/ /path/to/remote-sdb1/path/to/local/data/to/copy
Run Code Online (Sandbox Code Playgroud)

(如帖子中所述,我需要小心以 . 结尾第一个文件夹名称/。)

linux rsync file-transfer tar

1
推荐指数
1
解决办法
2万
查看次数