微软对 Ubuntu Bash on Windows 进行了“巨大改进”,支持 Tmux
创始人
2024-03-01 17:10:57
0

昨天,微软针对 Insiders 测试人群发布了 Windows 10 build 14361 更新版本,在这个版本中,微软带来了几个重要的改进,其中我们最关注的是对 Bash on Ubuntu on Windows 的“巨大改进”。

在这个版本中,极大地增强了 TTY/PTY 支持,换言之,现在 Tmux 这样的需要 伪终端 Pseudo Terminals (PTY)支持的应用可以工作了!此外,可以对 TTY 设备进行 chmod 和 chown 操作了。

Bash on Windows 中的 DrvFs 支持大小写敏感。在 /mnt/c 中你可以存储仅是大小写不同的多个文件,比如说 case.txt 和 CASE.TXT 就是两个不同的文件。不过,离开 Bash on Windows 环境,这两个文件虽然依旧存在,但是对它们的操作“也许会发生不可预料的错误”。这是因为 NTFS 虽然可以存储大小写不同的同名文件,但是大部分 Windows 下的应用并不能正确识别,它们会从中选择一个进行处理,具体可以参阅这篇文章

此外,对于 DrvFs 还有一些改进,比如用户可以从 DrvFs 中删除和 chmod 只读文件,DrvFs 下会隐藏 %LOCALAPPDATA%\lxss 目录。

此外还有一些改变:

  • 为了保持和 Linux 的习惯一致, 0.0.0.0 和 :: 可以用来指代 localhost 了。
  • 修复了某些情况下断开终端连接时挂起的问题
  • sendmsg/recvmsg 现在可以处理 IO 向量长度大于1的情况
  • 关闭时 socket 会得到 epoll 可读的提示
  • 用户可以脱离自动生成的 hosts 文件。
  • 安装 Ubuntu on Windows 时,自动根据 NT locale 来设置 Linux 下的 locale 。
  • lxrun /uninstall 在删除文件和文件夹时工作的更好
  • 修复了当用户已经存在时的安装问题
  • 为 df 命令实现了 /proc/mountinfo
  • 增加了 /proc/sys/vm/swappiness
  • 允许通过 /proc/self/fd 重新打开管道
  • strace 可以正确工作了
  • 更好的支持了“~”,比如现在支持 bash ~ -c ls
  • 改进支持 X11 应用,比如 xEmacs
  • 优化了命令参数结构,运行超长参数列表
  • ps -f 工作正常
  • 更新了初始线程堆栈大小以匹配 Ubuntu 的默认设置,并正确地报告该大小给 get_rlimit 系统调用
  • 改进了 pico 进程镜像名称的输出
  • 修复了子目录名 . 和 .. 的符号链接错误代码
  • 等等……

如果你还不知道如何使用 Bash on Ubuntu on Windows,可以参阅我们之前的文章

相关内容

Debian与Ubuntu...
在众多Linux发行版中,Debian和Ubuntu无疑是最受欢迎...
2025-12-05 10:46:28
多家Linux厂商拥抱Ub...
在最近举办的Ubuntu峰会上,多家Linux相关厂商展示了他们的...
2025-11-08 06:16:18
Ubuntu认证新平台上线...
在如今的数字时代,掌握Linux系统的技能已成为许多求职者和专业人...
2025-10-26 08:16:30
Ubuntu将原生支持英伟...
来源:IT之家 【Ubuntu 系统将原生支持英伟达 CUDA】U...
2025-09-18 08:44:06
基础Ubuntu网络代理的...
Ubuntu系统的网络代理配置是许多用户日常使用中的必备技能,从基...
2025-08-24 16:46:06
Ubuntu网络代理的故障...
Ubuntu系统的网络代理配置不仅涉及系统层面的基础设置,更需要针...
2025-08-21 22:13:39

热门资讯

《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...