东校实验室服务器坏掉了一块RAID 1的磁盘,购置新硬盘后测试rebuild发现几个配置页面都没有相关选项。
原RAID没出问题的磁盘被降级为foreign状态,
后查到官方文档
Foreign configuration(s) found on adapter. Press any key to continue, or ’C’ to load the configuration utility or ’F’ to import foreign configuration(s) and continue.
按F按键后导入foreign配置,开始进入系统。
进入系统后发现0号盘位闪橙色灯,也处于降级出错状态,妈蛋,这下有的玩了。于是联系L老师再次采购硬盘。 Updated 2017-12-30
3月硬盘到货,测试直接将0盘位换成新硬盘,发现无法自动rebuild,无法识别1盘位的系统盘。
重新装回旧有硬盘后能够进入系统,但是只放置1盘位新硬盘,启动后出现无法找到superblock的错误。
怀疑能进入系统的好机会不多,迅速备份了技术博客后,关掉所有的crontab减少读写,希冀RAID卡能够将所有的数据rebuild到1盘位。等下周来看。
Updated 2018-03-28
所以希冀是自欺欺人的。满心以为自动rebuild后,可以更换下0盘位,发现还是老样子。
想到新招数偷天换日,将2号盘位的non-RAID disk取下,更换上新硬盘后,把新硬盘做全局热备。参考资料
没想到改全局热备后并没有rebuild,而且再次出现找不到superblock无法进入系统的情况。没招了,只有试图解决这个问题。测试这个解决方案
发现牛逼的是所有的备份superblock都挂了。这是没救了?
尝试检查了一下fstab,发现奇怪的地方,fstab中将sda1挂载到/用户/data下,由于data存储较大,怀疑是2号位硬盘找不到,然后把系统盘sdb误认为是sda才出现superblock不匹配的地方。(上次更换0盘位也出现相同错误,可能更换或取下硬盘后影响了系统自检虚拟磁盘的顺序)
尝试给回2盘位,可以进入系统;随后尝试删除fstab中对应语句,拔出2盘位,也可以进入系统,有戏,果然是这个原因!
接下来把2盘位更换为新硬盘,由于之前做了热备,现在显示为foreign状态,import foreign configure后,可以进入系统。进入系统后没有看到2盘位在闪烁,说明没有自动rebuild。
关机,将处于2盘位的新硬盘拿下并替换0盘位就硬盘,开机发现提示进入配置页面,进入后发现0盘位开始rebuild,Yeah!成功!
下午助教,去课室发现竟然没人,问了一下才知道换课了,磨叽了一会儿回去差不多两小时,发现rebuild居然卡在37%,奇怪。不管了,今天没时间耗着了,必须搞完。于是重启,突然想到为何不尝试一下之前的1号盘是否能读出。如果1号盘可用的话,那么直接rebuild到更新的时间点岂不是更好。
于是将0盘位换成之前的1号盘,果然可以!慎重起见,迅速备份技术博客,17年2月之后一直到8月底最后一篇博客,一点都不少,太好了!之后设置rebuild到这个盘就去吃饭了,当晚SH说0盘位掉线了,好吧,好在技术博客救回来了。下次去恢复到2月份的系统。
Updated 2018-04-04
逻辑对的情况下,该如何把握节奏?
这段时间最大的感受就逻辑假设在不断验真,可节奏把握的确是一件颇具奇技淫巧,难以搞定的风骚操作。其实本质还是资金仓位管理以及择时判据,逻辑对的情况下(big picture)有定量分析加持才行。
从16年下半年就看空科技股,当然这节奏是严重不对的,不断学习过程中看到smart beta痴痴买入ETF的策略加上投机性买入对价格的不断推升可以持续如此之久。终于憋到今年2月份第一次利率冲击,波动性回归,市场进入震荡格局。
这几天F的信息泄露+川普对A的税收大棒挥起,科技股终于出现像样的下跌了,大概瞄了下QQQ应该是回到去年十一月的水平,会买么?我还不会。FAANG只有PE到20以下我才会心动,G目前EPS 18股价1k,55的PE;被干的F目前PE 29,至少跌倒20以内,才会下手。只有apple目前17+。
看了下最近的资金曲线,基本维持窄幅震荡,大概只有3%左右最大回撤,相比指数的跌宕起伏平缓很多。重新审视了下仓位、标的的分散性和风险敞口,依然不觉得有什么问题。风险投资占总资产比重已经下降到24%左右。
逻辑上接下来应该去验真第二轮的利率上升冲击、国际经贸形势变换冲击以及地缘政治关系紧张冲击等,适当加一些吃backwardation rolling的标的后继续走佛系路线:观察,等待。
我想也可以抛出结论了:
客观交易系统还不成熟的前提下,不要在乎节奏,减少操作,注意风险敞口和布局即可。
Updated 2018-04-03
帮JL移植wrf3.8.1到天河2号。首先调整环境变量。
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# edited on Apr 1, 2018 for WRF
# User specific aliases and functions
#bug fix
source /WORK/app/osenv/ln1/set2.sh
export MODULEPATH=/WORK/app/modulefiles
#set COMMON input data path for CESM
#export COMMON_CESM_INPUT=/WORK/app/CESM_inputdata
#set Intel compiler and MPI
module load intel-compilers/13.0.0
module load MPI/Intel/MPICH/3.1-icc13
module load cmake/3.0.2
#set hdf5 and netcdf4 for WRF
module load hdf5/1.8.13/03-CF-13
module load netcdf/4.3.2/02-CF-13
#set jasper
export JASPER=/HOME/sio_goc017/WORKSPACE/jjl/soft/jasper-1.900.1
export JASPERLIB=$JASPER/lib
export JASPERINC=$JASPER/include
#set WRF
export WRFIO_NCD_LARGE_FILE_SUPPORT=1
export WRF_EM_CORE=1
export NETCDF4=0
export BUFR=1
export CRTM=1
export J="-j 12"
export MP_STACK_SIZE=4000000000
export OMP_STACKSIZE=4000000000
export KMP_STACKSIZE=4000000000
ulimit -s unlimited
ulimit -c unlimited
MPI_BUFFER_SIZE=128
注意在编译cumulus模块的地方大概要等待20分钟之久。采用上述环境变量出错:
wrf.o: In function `MAIN__':
wrf.f90:(.text+0x1f): undefined reference to `__intel_new_feature_proc_init'
libwrflib.a(module_check_a_mundo.o): In function `module_check_a_mundo_mp_check_nml_consistency_':
module_check_a_mundo.f90:(.text+0x31fa): undefined reference to `__intel_ssse3_rep_memmove'
module_check_a_mundo.f90:(.text+0x35ea): undefined reference to `__intel_ssse3_rep_memmove'
libwrflib.a(module_mp_etanew.o): In function `module_mp_etanew_mp_etanewinit_':
module_mp_etanew.f90:(.text+0xacb0): undefined reference to `__intel_ssse3_rep_memmove'
libwrflib.a(module_mp_thompson.o): In function `module_mp_thompson_mp_table_ccnact_':
module_mp_thompson.f90:(.text+0x2ed74): undefined reference to `__intel_ssse3_rep_memmove'
libwrflib.a(module_ra_rrtm.o): In function `module_ra_rrtm_mp_rrtm_lookuptable_':
module_ra_rrtm.f90:(.text+0x256ea): undefined reference to `__intel_ssse3_rep_memmove'
libwrflib.a(module_ra_rrtmg_lw.o):module_ra_rrtmg_lw.f90:(.text+0x769bf): more undefined references to `__intel_ssse3_rep_memmove' follow
/WORK/sio_goc017/jjl/wrfdata/WRFV3/external/io_grib_share/libio_grib_share.a(io_grib_share.o): In function `transpose_grib_':
io_grib_share.f90:(.text+0x1ee4): undefined reference to `_intel_fast_memmove'
/WORK/sio_goc017/jjl/wrfdata/WRFV3/external/io_grib_share/libio_grib_share.a(io_grib_share.o): In function `transpose1d_grib_':
io_grib_share.f90:(.text+0x26f5): undefined reference to `_intel_fast_memmove'
io_grib_share.f90:(.text+0x29e3): undefined reference to `_intel_fast_memmove'
0.57user 4.84system 0:08.12elapsed 66%CPU (0avgtext+0avgdata 487696maxresident)k
12392inputs+102200outputs (47major+183178minor)pagefaults 0swaps
make[1]: [em_wrf] Error 1 (ignored)
Google以下,发现intel官网的trouble shooting page 以下内容:
I believe the message may be caused by mixing objects built with different compiler versions. The __intel_new_feature_proc_init entry point is only in recent compiler libraries; if you have code built with a recent compiler, but are linking to older run-time libraries, you might encounter such a problem.
有道理,可能是之前编译的模块没有删掉。执行
$./clean -a
再次测试一下.出现难以理解的错误:
nup_em.f90(68): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [MODULE_INITIALIZE_REAL]
USE module_initialize_real, only : wrfu_initialize
-------^
real_em.f90(12): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [MODULE_INITIALIZE_REAL]
表示找不到include文件。到相关目录下检查发现文件确实存在,奇葩……重新执行compile语句后编译成功。怀疑是天河的文件系统不稳定造成。
测试WPS编译出错。
make[1]: pathf90: Command not found
检查了下发现自己选错了architecture,并不是与前面相同的#15,而是#19.
Updated 2018-04-01
据CM大哥表示,天河不开NC4编译是不行的。果然,JL运行出错,测试NC4打开后是否能解决。
Updated 2018-04-03