底层架构真的折磨死个人(急,在线等)
前面我提到了使用自己的闲置服务器跑10x单细胞转录组上游流程(10x的cellranger count 流程)特别慢,可能是Windows的ubuntu子系统,而不是纯正的ubuntu这样的Linux?所以就干脆重新安装一个ubuntu双系统。见:参考基因组用错了单细胞转录组流程照样可以走通
Windows的内置ubuntu子系统运行速度太慢了
本来是4~8个小时就可以跑完的,在Windows的内置ubuntu子系统运行了30个小时还看不到希望,果断杀掉进程!
从此不再碰Windows的内置ubuntu子系统。(主要是我们生物信息学领域的NGS数据处理,都对磁盘读写要求太高了)
安装Windows和ubuntu双系统
这个超级简单,烧录一个4G的U盘进去ubuntu20的系统即可,重新启动个人电脑时候在BIOS里面设置一下U盘启动,自动安装好ubuntu系统。
开启ubuntu双系统
需要把之前Windows的8T硬盘挂载上去,简单搜索就解决了。
但是我运行10x的cellranger count 流程的时候,发现它没办法调用cellranger软件包文件夹里面的打包好的python的各种模块,而是不停的使用我自己ubuntu里面的python环境。
每次运行10x的cellranger count 流程都失败,每次报错不一样,都是表面的那些错误,缺这个那个模块。可是我明明下载的就是cellranger软件包,理论上无需安装,解压即可使用!我对比了Windows的内置ubuntu子系统运行10x的cellranger count 流程,以及其它服务的 ,和这个ubuntu双系统,确实不明白问题出在哪里。
这样耗了大约两个小时,实在是受不了了,python模块不知道啥时候是尽头。我也思考过是不是这个软件需要注册,绑定了机器,我换了ubuntu就需要重新下载或者解压。
在自己的磁盘解压文件居然也需要sudo权限
然后我解压它的时候,奇迹出现了。满屏的报错,人生第一次啊, 在自己的磁盘里面解压居然也会报错!!!
cellranger-4.0.0/external/cellranger_tiny_ref/3.0.0/star/
tar: cellranger-4.0.0/external/cellranger_tiny_ref/3.0.0/pickle: Cannot utime: Operation not permitted
cellranger-4.0.0/external/cellranger_tiny_ref/3.0.0/star/Genome
tar: cellranger-4.0.0/external/cellranger_tiny_ref/3.0.0/star/Genome: Cannot utime: Operation not permitted
虽然我看到了 Cannot utime: Operation not permitted 这样的报错,但是我关心的是权限问题,所以解压的时候加上sudo,就解决了这个问题,而并没有去搜索这个关键词,也没有去思考,为什么解压也需要sudo呢?这个磁盘的权限明明就是我自己的啊!
果然,重新sudo解压后的cellranger软件包就可以使用了,不再报各种python模块错误了,从3点到7点,仅仅是5个小时就运行完毕了。
但是最后仍然是有一个报错:
Log message:
Operation not permitted (os error 1)
这个报错到底前面的5个小时都浪费了,因为最后的结果文件没有生成,都是各种各样的临时文件。
跑个软件你到底需要什么权限呢
看到这个报错,我顿时火大了,这就是我的磁盘,前面解压需要sudo权限就算了,现在跑个软件,明明都可以创建文件夹,写文件,你到底是需要什么权限?难道这个软件还顺便要挖矿吗????
那就只能是继续搜索权限,发现有人提到了居然是连root用户都有无权限修改文件,原因是chattr命令,用此命的功能更为强大,甚至可以锁定文件,即使root用户也操作不了此文件。就是给文件加上了i属性,查阅命令帮助文档可以看到有i属性的文件是不能修改的,更不可被删除,即使是root用户也不可。
我也尝试了chattr命令,发现我居然连chattr都没办法运行,报错如下;
chattr: Invalid argument while reading flags on
继续搜索,终于搞明白了, chmod和lsattr对windows的ntfs分区上的文件失效,而且是十年前的讨论:
最后看了看一眼我的磁盘,唉
报应啊!
我这8个小时,浪费的···
关键是,我这个8T硬盘里面是有文件的, 也不能随随便便格式化成为Linux支持的ext分区啊,在线求帮助,有什么捷径?
没有基础背景知识也能解决问题
我发朋友圈抱怨了这个问题,因为没有计算机背景,所以解决起来非常坎坷,但是好歹算是解决了大部分了。很多人评论说就跟她现在初学R语言一样,碰到的都是稀奇古怪难以理解的报错!
那么,对计算机或者统计学背景的朋友,做生物信息学ngs数据处理,其实也是缺乏生物学背景啊,难道就没有各种磕磕碰碰吗?