首页   注册   登录
 lzwt806 最近的时间轴更新
lzwt806

lzwt806

V2EX 第 323069 号会员,加入于 2018-06-16 09:28:46 +08:00
一心想为中国订制一个安全,可用,实用,稳定的操作系统
lzwt806 最近回复了
34 天前
回复了 input2output 创建的主题 Linux Linux 文件复制遇到的问题,求助!
楼主是问题见这里: http://kxs-co.gicp.net/linux/CDLinux.html

以下选取:

5,一个所有 Linux 发行版都有的不是 BUG 的 BUG
Linux 当初设计文件的读写时思想是:当用户复制 /剪切 /移动一个文件表面看起来瞬间就完成了,等待一定的时间如果用户不再操作时再在后台完成余下的工作,这样可以有效的避免产生大量的磁盘碎片,但因此带来的害处远远大于益处,如果应用场合是本地硬盘还算好,若使用的是移动存储设备就可能产生意外,结果就是使用外置存储设备时及易因误判断而损坏文件(两边的文件均是损坏的),从表象上看就是操作时的反馈进度信息不同步
实验过程:在 KDE/XFCE/LXDE 下复制一个 500M 的文件到 U 盘,看着进度条走完就拔出 U 盘,试试 U 盘里的文件是否是正常的?
解决办法:A,操作完成后多等会( 10 分钟?)。B,看着 U 盘的灯不再闪后才拔盘。C,在文件管理器里面弹出 U 盘,且提示成功才拔盘
危害等及:非常严重,对于不知情或心急的人,极易把文件损坏,后果严重,业界确对这种低级的设计视而不理
可修复性:难度大,曾和老赵商讨过此事,内核并不知道文件操作完没,因为对文件的操作很多文件管理器可以跳过内核直接对文件进行操作,整个反馈均在应用层,所以这是由 DE 引起的。在 CDLinux 的 xfce 环境里,曾试着解决这个问题,最开始是强制同步,每次写入后就同步到进度条,结果发现这样及易损坏存储设备(在测试中把一张 16G 的威刚内存卡写成了只读),后来改为不强制同步但尽量多次同步进度条,虽有改善但并不完美,与 Windows 的实时进度条相比,天差地别。
我只想对这种设计思维的人说一句:简直就是狗屎一样的设计!
@okudayukiko0 再换一种方式问,ext4 的更新提现在磁盘上还是提现在操作系统里面?
@okudayukiko0 不是这个意思,我是想问:几年前格式的 ext4 分区,是不是就没有最新的 ext4 特性(最近加入的补丁之类)。还是说,更新 linux 就能享受到最新的 ext4 而与什么时候格式化磁盘无关?
@okudayukiko0 “Reiser 现在好像用 Reiser4”,我试过在 GParted 里面格式为 reiser4,能格式化成功,但不能访问,是否还需要其它东西才能找开格式化好的 reiser4 磁盘?

另外 reiser4 的性能已经到什么程度了?能达到 ext4 的性能吗?
@Osk btrfs 也适用于我需求?大小文件混存,且数量巨大。另外去年我还看到论坛有人说 btrfs 到 2018 年了还有些 bug,可靠性有待完善,不知这种道听途说是否正确?
@feather12315 请教前辈:
“4. 当前各大发行版,ext4 是主流。使用得越多 bug 越少。ext4 在不断更新,一直有新 feature 加入。”
是编译了最新的内核就拥有了最新的 ext4 文件系统支持吗?还是说如果我想用最新的 EXT4 文件系统支持,需要使用储如 GParted 分区工具( mkfs.ext4 )来重新建立磁盘分区?

另一个问题是:如果我有个 U 盘是在 2015 年使用 Linux kernel 4.4 格式化为 ext4,那么这个 U 盘即不是最新的 ext4 文件系统,一些新加入的的特性就没有,这种理解对不对?

换个方式问:最新加入 ext4 的 feature 是在内核模块(*.ko )中,还是存在于已经格式化的磁盘中?
@love “而 reiserfs 不限制 inode 数,小文件随便存,可能这是这个文件系统唯一的好处了。”这句话,我能不能理解为:除此之外,其它方面都很差?
@liang96 请问前辈,“reiserfs 杀手文件系统”怎么理解?一直在用是用于什么场景?另外它的可靠性,性能如何?
@所有人 此帖到此为止,我已经找到自己想要的答案的了,感谢所有浏览以及参与回复本帖的朋友 /前辈们!
@msg7086 看了所有的回复,前辈的回复对我最有帮助,如果不是经验丰富或内部人士,不可能得到这些高深(偏门 /专业)见解的,所以深表感谢!

另外回复前辈,Debian 10 和 ubuntu 19.10 刚出来我就测试了,最少我发现的都有 3 个以上问题,Debian 维护了 2 年才发部的 stable 版本,还有存在一些很基础或很不应该存在的 bug,我认为他们做事不够严慎,或者说他们没有以前那么认真负责了,于是选择了放弃。

另外 2 年前,测试过 centos,gentoo,没几分钟桌面就挂了,印象极差。

我不否认:大多数发行版本安装在硬盘上以后,有足够的内存和强劲的 CPU 资源,都很稳定
也不否认:大多数 Linux 发版本只跑服务,就那么几个应用或进程,都很稳定

但是:跑桌面有时比跑服务器更考验技术,对稳定性要求更严苛,因为通用 PC 不管算力还是 RAM 都非常有限,而且软件多,软件相互之间竞争有限的硬件资源,加上软件开发者水平参差不齐,代码质量有优有劣,所以跑服务器很稳定的,装上 DE 后不一定经得起考验。

而:移动操作系统( LiveCD )比上面说的两种情况要求更严苛,因为他甚至不依赖硬盘,除了系统运行需要 RAM 之外,还要把很有限的 RAM 分一部份给用户当存储空间。

就以我自己维护的 CDLinux 来说可以选择只载入主要的文件到内存以最小内存占用的方式运行,也可以选择完全把 squashfs 包载入内存中运行,不依赖硬盘,所以不管是内核还是软件的选择上都是反复考量了的。就如前面所说,最新的不一定是最好的最稳定的,相反,一个能在自己系统上运行得很好的软件才是适合自己的。为了尽可能的让系统更稳定可靠,这个提问的目的就是想从基础上一步步抓起。
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1016 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 16ms · UTC 22:43 · PVG 06:43 · LAX 14:43 · JFK 17:43
♥ Do have faith in what you're doing.