Sunday, June 23 2019

解决 TOSHIBA 移动硬盘 Linux下使用异常

到手一块 TOSHIBA DTB305 500G 移动硬盘,计划用来备份电脑的数据,先加密

cryptsetup -s 512 luksFormat /dev/sdb

居然失败,磁盘一直报错:

May 23 23:38:20 mom kernel: scsi 6:0:0:0: Direct-Access     TOSHIBA  External USB 3.0 0114 PQ: 0 ANSI: 6
May 23 23:38:20 mom kernel: sd 6:0:0:0: [sdb] Spinning up disk...
May 23 23:38:21 mom kernel: .ready
May 23 23:38:21 mom kernel: sd 6:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/466 GiB)
May 23 23:38:21 mom kernel: sd 6:0:0:0: [sdb] Write Protect is off
May 23 23:38:21 mom kernel: sd 6:0:0:0: [sdb] Mode Sense: 47 00 10 08
May 23 23:38:21 mom kernel: sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, supports DPO and FUA
May 23 23:38:21 mom kernel: sdb: sdb1
May 23 23:38:21 mom kernel: sd 6:0:0:0: [sdb] Attached SCSI disk
May 23 23:38:22 mom kernel: FAT-fs (sdb1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
May 23 23:40:22 mom kernel: sdb:
May 23 23:42:35 mom kernel: sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
May 23 23:42:35 mom kernel: sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
May 23 23:42:35 mom kernel: sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
May 23 23:42:35 mom kernel: sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 00 00 08 00 00 00 08 00
May 23 23:42:35 mom kernel: print_req_error: critical target error, dev sdb, sector 2048
May 23 23:44:57 mom kernel: sdb:
May 23 23:45:26 mom kernel: sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
May 23 23:45:26 mom kernel: sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
May 23 23:45:26 mom kernel: sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
May 23 23:45:26 mom kernel: sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 00 00 08 00 00 00 08 00
May 23 23:45:26 mom kernel: print_req_error: critical target error, dev sdb, sector 2048
May 23 23:45:58 mom kernel: sdb:
May 23 23:46:05 mom kernel: sdb:
May 23 23:47:55 mom kernel: sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
May 23 23:47:55 mom kernel: sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
May 23 23:47:55 mom kernel: sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
May 23 23:47:55 mom kernel: sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 00 00 00 00 00 00 08 00
May 23 23:47:55 mom kernel: print_req_error: critical target error, dev sdb, sector 0
May 23 23:59:15 mom kernel: sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
May 23 23:59:15 mom kernel: sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
May 23 23:59:15 mom kernel: sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
May 23 23:59:15 mom kernel: sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 00 00 00 00 00 00 08 00
May 23 23:59:15 mom kernel: print_req_error: critical target error, dev sdb, sector 0

难道硬盘坏了,查了下SMART完全没问题啊,算了,换veracrypt加密,这次可以了,接着创建ext4,挂载正常, 但是,随手看了下日志,也不行:

[  123.936031] usb 1-2.4: new high-speed USB device number 6 using ehci-pci
[  124.107699] usb 1-2.4: New USB device found, idVendor=0480, idProduct=a001
[  124.107703] usb 1-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  124.107705] usb 1-2.4: Product: USB device
[  124.107707] usb 1-2.4: Manufacturer: USB device
[  124.107709] usb 1-2.4: SerialNumber: WQ670000000009252
[  124.108238] usb-storage 1-2.4:1.0: USB Mass Storage device detected
[  124.114141] scsi host6: usb-storage 1-2.4:1.0
[  124.176728] usbcore: registered new interface driver uas
[  125.154152] scsi 6:0:0:0: Direct-Access     TOSHIBA  External USB 3.0 0114 PQ: 0 ANSI: 6
[  125.162002] sd 6:0:0:0: [sdb] Spinning up disk...
[  126.176026] .ready
[  126.177651] sd 6:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/466 GiB)
[  126.180276] sd 6:0:0:0: [sdb] Write Protect is off
[  126.180279] sd 6:0:0:0: [sdb] Mode Sense: 47 00 10 08
[  126.182271] sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, supports DPO and FUA
[  126.197549]  sdb: sdb1 sdb2
[  126.203273] sd 6:0:0:0: [sdb] Attached SCSI disk
[  126.818539] FAT-fs (sdb1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
[  126.940855] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[  140.651217] sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[  140.651222] sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
[  140.651224] sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
[  140.651227] sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 01 40 18 00 00 00 08 00
[  140.651229] print_req_error: critical target error, dev sdb, sector 20977664
[  140.651242] Buffer I/O error on dev dm-1, logical block 0, lost sync page write
[  140.661143] EXT4-fs (dm-1): mounted filesystem with ordered data mode. Opts: (null)
[  146.950106] sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[  146.950111] sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
[  146.950114] sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
[  146.950117] sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 1d 84 18 18 00 00 08 00
[  146.950120] print_req_error: critical target error, dev sdb, sector 495196184
[  146.950142] Aborting journal on device dm-1-8.
[  146.953093] sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[  146.953097] sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
[  146.953099] sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
[  146.953103] sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 1d 84 18 00 00 00 08 00
[  146.953105] print_req_error: critical target error, dev sdb, sector 495196160
[  146.953111] Buffer I/O error on dev dm-1, logical block 59277312, lost sync page write
[  146.953124] JBD2: Error -5 detected when updating journal superblock for dm-1-8.
[  178.941515] EXT4-fs (dm-1): previous I/O error to superblock detected
[  178.945445] sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[  178.945451] sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
[  178.945453] sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
[  178.945457] sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 01 40 18 00 00 00 08 00
[  178.945460] print_req_error: critical target error, dev sdb, sector 20977664
[  178.945472] Buffer I/O error on dev dm-1, logical block 0, lost sync page write
[  178.945494] EXT4-fs error (device dm-1): ext4_journal_check_start:61: Detected aborted journal
[  178.945499] EXT4-fs (dm-1): Remounting filesystem read-only
[  178.945506] EXT4-fs (dm-1): previous I/O error to superblock detected
[  178.949462] sd 6:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[  178.949466] sd 6:0:0:0: [sdb] tag#0 Sense Key : 0x5 [current] 
[  178.949468] sd 6:0:0:0: [sdb] tag#0 ASC=0x24 ASCQ=0x0 
[  178.949472] sd 6:0:0:0: [sdb] tag#0 CDB: opcode=0x2a 2a 08 01 40 18 00 00 00 08 00
[  178.949475] print_req_error: critical target error, dev sdb, sector 20977664
[  178.949485] Buffer I/O error on dev dm-1, logical block 0, lost sync page write

莫非这硬盘对Linux有什么限制?日志文件系统不行,那换成FAT试试,居然好了!这不科学,搜索一通发现可能是硬盘cache的问题: scsi: introduce a quirk for false cache reporting

补丁里没有我这块盘的型号,依葫芦画瓢写一个补丁 toshiba_dtb305-sync_cache.patch

重新编译内核,加密,创建文件系统,读写正常,搞定!

[179343.585880] usb 1-2.4: New USB device found, idVendor=0480, idProduct=a001
[179343.585884] usb 1-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[179343.585886] usb 1-2.4: Product: USB device
[179343.585888] usb 1-2.4: Manufacturer: USB device
[179343.585890] usb 1-2.4: SerialNumber: WQ670000000009252
[179343.586680] usb-storage 1-2.4:1.0: USB Mass Storage device detected
[179343.590799] usb-storage 1-2.4:1.0: Quirks match for vid 0480 pid a001: 20000000
[179343.591052] scsi host6: usb-storage 1-2.4:1.0
[179344.610048] scsi 6:0:0:0: Direct-Access     TOSHIBA  External USB 3.0 0114 PQ: 0 ANSI: 6
[179344.617874] sd 6:0:0:0: [sdb] Spinning up disk...
[179345.632026] .ready
[179345.633253] sd 6:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/466 GiB)
[179345.633258] sd 6:0:0:0: [sdb] Assuming Write Enabled
[179345.633260] sd 6:0:0:0: [sdb] Assuming drive cache: write back
[179345.639144]  sdb: sdb1 sdb2
[179345.640371] sd 6:0:0:0: [sdb] Attached SCSI disk
[179346.383257] FAT-fs (sdb1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
[179346.404356] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[179349.378210] EXT4-fs (dm-1): mounted filesystem with ordered data mode. Opts: (null)

找到一篇写的更详细的: Linux下USB 3.0移动硬盘读写错误问题分析

Sunday, June 16 2019

入手最佳便携电脑 Chromebook

因为使用频率其实不高,直接某宝买二手,三星 Chromebook Plus (ARM版)1650块。 作为一个外出需要携带电脑的人来说,谷歌本的优势实在太大了: 轻便,仅1kg,而且充电口是Type-C,可以和手机共用充电器 便宜,出门在外随便用,丢了也不心疼 支持安卓应用,几乎任意VPN都可以用了 续航长,目测5小时没问题 支持LXD,可以跑原生Linux程序 从引导到磁盘全都有校验和加密,丢失设备不心慌 嗯,性能不是我考虑的,出门在外能看网页,能SSH,还可以看电影,足矣。  […]

Continue reading

Monday, March 25 2019

什么值得买?冲牙器啊

我牙缝小,牙签没用,牙线用过太麻烦,牙线棒也不行,很多位置不好用力,被丁香医生安利过多次后,趁促销下手买了。 绝对是买过最值的东西了! 用了会上瘾,舒服,简单,闭着眼睛都能冲干净的感觉真好,以前经常感觉到的口腔异味也几乎没有了,棒!

Sunday, March 3 2019

再一个十年,为旧电脑续命

爱机在十年前升级后一直坚挺,但是编译时的高温还是经常自动关机,换了CPU风扇也不见效,怀疑是电源老化,16年买了个全汉400W,似乎不太容易自动关机了。 但岁月不饶人机,年前竟然经常性休眠后唤不醒,插拔大法换电池依然无果,表现就是开机后各风扇一阵响,然后断电,排除法确定是主板归西了,也是挺不容易的,十年来基本上是不掉电状态,不用的时候S3休眠,突然想起有一次启动BIOS还报过一次checksum error,偶发一次没有在意……  […]

Continue reading

Sunday, October 4 2015

为MySQL管理员准备的PostgreSQL简易指南

原文在此: PostgreSQL for MySQL Administrators CDH默认的数据库是postgresql, 一时间还真的弄不明白, 看完以后差不多可以开搞了.

Saturday, October 3 2015

多网卡多IP策略路由配置

默认外网eth1, 默认路由不用改, 为了正确路由到内网eth0: 新增外网 eth2, NewIP 配置路由: ip route add default via NewGW dev eth2 src NewIP table 200 ip rule add from NewIP table 200 ip rule add fwmark 0x200 table 200 配置iptables mangle 表: ( eth0 : LAN ) -A PREROUTING -i eth0 -m conntrack --ctstate RELATED,ESTABLISHED -j CONNMARK  […]

Continue reading

Sunday, April 5 2015

贞寿之门

zhenshouzhimen.jpg

我老家门口有这么一块石头牌坊,上书: 圣旨,贞寿之门,敕旌监生杨衍之妻寿妇雷氏亲见七代五世同堂百岁寿坊 以前没看懂是怎么回事,为啥皇帝对守寡到百岁的人要特地发圣旨来表彰? 直到今天看《经济史的趣味》中说到“守寡有理”这一节,才明白: 其实汉族社会在宋代为止寡妇通常都会再嫁,守节的是少数例外。 守节风气乃是在元朝被蒙古的婚姻制度扭曲混血而成的产物,是妇女在无奈之下的“理性选择”。 因蒙古人行收继婚,汉人视为乱伦,而不可接受,在元朝的统治之下经过磨合冲突,汉人作出兼顾理想与现实的均衡:丈夫死后寡妇不愿依法被收继,又想保留财产权、子女权、人身权的最好办法就是守寡不嫁。  […]

Continue reading

Saturday, January 24 2015

为革命,保护视力

每天对着电脑屏幕,状态不好的时候,眼睛总是会痛,感觉快要瞎了,怎么破? 看见公司一个同学总戴着一副奇怪的有色眼镜,终于忍不住问了,原来是保护眼睛的: GUNNAR 琥珀色镜片, 这东西原理说是可以过滤短波蓝光,眼睛不容易疲劳,才400块钱,马上买了,确实很有效果!值! 不过就算有这么好的东西,那些买的起肾6的穷鬼还是嫌贵,还有些麻烦的四眼(近视镜需要定制,价格翻番),又不肯戴隐形, 其实还有免费的午餐 —— 显示器调色温软件: 装个redshift就好了, 不支持你的系统?那去试试f.lux 要说效果嘛,当然是眼镜最好了,哈哈。

Sunday, January 18 2015

装CDH5的几个坑

一开始用 apache 官方的几个包来搭 hadoop,但是管理起来太麻烦,就直接用 cloudera 公司的 cloudera manager 来装 cdh5。 装的时候版本是5.2.0,后来跟着一路升级到5.3.0,cm 用着还是蛮舒服的,这里记录一下安装使用中遇到的几个坑: cdh5 依赖 python2.7 ,要设置成默认 python。 自架 kdc 的时候记得开启 tcp 监听端口88。 如果 kerberos 加密算法选的太高级,服务器端和客户端都要安装 jce,不然认证通不过都不知道是为什么。 在 lxc 里跑的话,启用 kerberos 的时候,dac_read_search  […]

Continue reading

Thursday, August 14 2014

拖延症

多年的拖延症患者,今天决定总结一下。 想做一件事情,总要等外部条件全部满足以后,才可能开工,比如: 等待一个好的天气, 等待一个合适的心情, 等待有个大段的时间, 等待相关知识都储备好了, 等待…… 当然,懒是根源,这是天性,无法回避,但是可以就以上各种借口逐个击破: 不要去管天气了,心情不糟糕就行,碎片时间也可以,借助提醒工具,相关知识总结记下来。 总之就是,马上开始,分阶段,逐步推进,不要一上来就追求完美。 试试看。

Saturday, May 17 2014

是时候上LXC了!

先从作者的LXC 1.0系列文章开始吧: https://www.stgraber.org/2013/12/20/lxc-1-0-blog-post-series/

Wednesday, May 7 2014

PPTP VPN & MTU & MSS

PPTP的VPN是简单,但老是会出现能ping通,但是网页打不开,一般都是MTU的问题,能改设备的MTU当然好,不过一般都用iptables设置MSS来解决(本机就加到OUTPUT链): iptables -A FORWARD -o ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1300 1300只是试出来的,之所以没用pmtu,完全是因为有些中间节点不支持mtu探测,简称pmtu黑洞。  […]

Continue reading

Friday, May 2 2014

ZSWAP & ZRAM

更新:之前有些地方理解错了。 内存这东西总是不够用,怎么办?紧跟主线内核的好处就体现出来了: 先说ZSWAP,3.11引入,可以将需要换出(swap out)的页压缩存放在内存的压缩池里,这样在压缩池没有满的时候,根本不会有额外的IO;直到压缩池满了,则把最老的页解压后写入swap设备。(压缩池默认是20%内存,通过/sys/module/zswap/parameters/max_pool_percent调节) 不仅提高了swap的整体性能(以前一旦发生swap,简直跟死机没区别),相应的swap空间也变相增大了。  […]

Continue reading

Thursday, May 1 2014

中了机械键盘的毒

作为一个成天对着终端敲命令的人,键盘是比鼠标更重要的生产工具。 半年前,在手中的8115按起来各种吃力的时候,身边同事又百般诱惑,一狠心,买了传说中的机械键盘:FILCO圣手二代87键(忍者侧刻茶轴)。刚买来的时候,用了一会觉得挺亏的,没有想像中那么爽啊,比起五十块的8115,性价比差太多,时间一长,也基本没有啥感觉了。  […]

Continue reading

Saturday, November 16 2013

切换OSSv4

搬来和同事合租以后,终于可以无顾忌的开喇叭了,只是原来20块的便携音箱实在寒酸,就上网买了个漫步者R1200T,郁闷的是听起来感觉还是很山寨啊!想了一想,恐怕问题出在音频系统上,现在用的是默认的ALSA,早就耳闻音质不如OSS,可惜OSS已经被主流抛弃了,只能自己整一整了,不然这音箱就白换了。 网上转了一圈,发现OSS都停止开发好多年了,最新版是OSS v4.2 build 2008(好像开发者还在找工作中。。。),别忙着动手,先看看是不是支持我的声卡:创新Audigy2,源码里看支持列表devlists/Linux,果然有我这块古董啊  […]

Continue reading

Thursday, November 14 2013

Linux下TTL救砖

前不久有同事找我借无线路由器,我正好有一个闲置的(TP-LINK WR843N),里面是以前刷的Openwrt,怕他搞不定,决定刷回原版,当时没有查一下,就直接在web界面刷了原版ROM,结果就悲剧了,重启后所有灯都在闪,妥妥的变砖了。本来想弃置不管了,可是好歹花了138块大洋买的啊,有点舍不得,赶紧上网查了一下,发现有救砖的教程,但是要焊TTL线,哈哈,又要干老本行了,马上采办:USB-TTL转换器,30W烙铁,松香,焊锡,加运费一共34块,不贵! 东西很快到货,周末开搞:  […]

Continue reading

Sunday, June 23 2013

《电子情书》

电影挺欢乐,里面有说一个事情,有些话说出口以后,你就会后悔,因为这些话会伤害到别人。 心灵鸡汤?完全正确,平时说得太多,没人愿意听啊,大家都是成年人,谁要你来教育呢?省省吧,这就是两种人的区别。 这种人:工作仅仅是为了一份薪水。你收获的只能是对牛弹琴,呵呵。

超钢之躯

看这片的时候,我总是在想,这根本不是什么超级英雄在拯救地球,而是一个智慧种族面临生死存亡的时候,到底要不要照顾道德问题?还有鬼扯的人性?

Tuesday, June 11 2013

https with lighttpd & nginx

lighttpd: $SERVER["socket"] == ":443" { ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd/ca/server.pem" ssl.ca-file = "/etc/lighttpd/ca/ca.crt" ssl.cipher-list =  […]

Continue reading

Friday, May 10 2013

美帝原来是个文明国家啊

最近读完了林达的《我也有一个梦想》,作为一个美黑,竟然也被触动到有些动摇了。 这本书用一个个具体的历史事件生动的再现了美国的建国,奴隶制、黑人和种族问题的来龙去脉,同时也帮我纠正了很多以前错误的认识。 比如美国内战爆发的直接原因并不是要武力废除奴隶制,而是为了阻止美利坚合众国的分裂,只是战争进行的惨烈远超想像和双方都貌似正义的立场,相持不下,为此林肯政府才中途将战争口号更换为废除奴隶制,解放奴隶。不然林肯可能会成为历史罪人。 另一个,我一直以为对于黑人的种族隔离是在全美国的,实际上这种强制的隔离只发生在南方曾经的蓄奴州。  […]

Continue reading

- page 1 of 50