似乎 exFAT 将成为可移动媒体的下一个标准文件系统。问题是,它是由微软设计的,并且是专有的。但是,它是即将推出的 SDXC 卡的标准 FS。
由于 exFAT 不适用于 Linux,它最终会到达那里吗?如果是这样,什么时候?
为 Linux、Windows 和 Mac OS X 格式化可移动媒体确实成为一个问题。有 FAT32,但文件大小限制也成为一个问题。
我希望 UDF 将是一个跨平台的文件系统,尤其是因为 UDF 的最新修订版明确说明了针对硬盘驱动器的目标。然而,微软似乎不太关心光媒体以外的其他任何东西的 UDF,所以我猜它最终会被放弃。
看起来,exFAT 将取代 FAT32,但由于它不适用于 Linux,我不应该在其中格式化我的 U 盘。我应该等到 exFAT 可用于 Linux 吗?此外,由于微软似乎并没有准备好为免费实现打开文件系统 - 涉及许可证等 - 我可能会等到无穷大......
大多数时候我仍然使用 FAT32,但有时由于文件大小限制,我必须使用其他东西。为此,我通常会在 NTFS 中重新格式化驱动器,但是,来回不断地格式化仍然很麻烦。
我想要完成的事情:
目前我选择了 Freebsd,我设法安装了它并配置了网络。下一步是从 Windows 到 Freebsd 共享一个文件夹,以便我可以轻松地在 Windows 和 Freebsd 上编辑文件。不幸的是,这似乎是一件可以做的事情。
我在网上翻了翻,发现了两种不同的方法:
我使用 安装了 freebsd 中的来宾添加pkg_add -r virtualbox-ose-additions
,安装进行得足够快,我编辑/etc/rc.conf
添加了两条建议的行:vboxguest_enable="YES"
和vboxservice_enable="YES"
并重新启动。
这没用。挂载系统的命令最终出现错误:
# mount -t vboxsf shared /home/myuser/shared
mount: shared : Operation not supported by device
Run Code Online (Sandbox Code Playgroud)
shared
我在这个 VM 的虚拟机设置中设置的文件夹的名称在哪里。
实际上可以
vboxsf
在 freebsd 中使用文件系统类型吗?一些评论似乎表明它不受支持,但很难找到最新信息。
接下来,我转向了 samba 方法。我基本上遵循了我链接的指南。不幸的是,结果是:
# mount_smbfs -N -I 192.168.56.1 //winuser@winmachinename/Shared /mnt/shared
mount_smbfs: unable to open connection: syserr = …
Run Code Online (Sandbox Code Playgroud) 我使用 Notepad++ 在 Windows 中编写了一个 Bash 脚本。
cxStopAllServicesOnSERVER.sh
#!/usr/bin/bash
cd "/some/path"
echo "Hi. Logs can be found at "`pwd`"/cxStartStopLogger.log"
echo "["`date`"]*** STOPPING ALL SERVICES ON SERVER ***" >> "cxStartStopLogger.log"
exit
Run Code Online (Sandbox Code Playgroud)
现在上传并设置所需的文件权限后,我尝试按如下方式执行它:
bash-3.00$ cat cxStopAllServicesOnSERVER.sh #Let's have a look at the code.
#!/usr/bin/bash
cd "/some/path/"
echo "Hi. Logs can be found at "`pwd`"/cxStartStopLogger.log"
echo "["`date`"]*** STOPPING ALL SERVICES ON SERVER ***" >> "cxStartStopLogger.log"
bash-3.00$ # Code and hashbang 'looks' correct,
bash-3.00$ # if there is any issue with the format (EOL …
Run Code Online (Sandbox Code Playgroud) 我在我的 Linux 系统上为 Windows 文件存储创建了一个 NTFS 逻辑卷,因为我想保留我的文件的创建日期(我可能会将它们压缩到一个存档中,然后解压缩它们,尽管我不知道这是否可行)。NTFS-3G 是否在 Linux 上保存文件的创建日期?如果是这样,我如何访问它?
阅读此线程,OP 链接了 NTFS 上的文档,该文档提供了用于查找创建日期的 shell 脚本。我修改它试图从十六进制值中获取秒数,但我相信我做错了什么:
#!/bin/sh
CRTIME=`getfattr -h -e hex -n system.ntfs_times $1 | \
grep '=' | sed -e 's/^.*=\(0x................\).*$/\1/'`
SECONDS=$(($CRTIME / 10000000))
echo `date --date=$SECONDS`
Run Code Online (Sandbox Code Playgroud) 我的网络上有一台名为 SUSAN 的 Windows 机器。从我的 Linux 机器上的 Windows VM,我可以简单地:
C:\>ping susan
Run Code Online (Sandbox Code Playgroud)
我已经按照本指南(并查看了其他几个类似的指南)从我的 Linux 机器本身解析了 NETBIOS 名称。
我安装samba
和samba-winbind
。我编辑了这一hosts
行/etc/nsswitch.conf
:
hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname
Run Code Online (Sandbox Code Playgroud)
到
hosts: files wins mdns4_minimal [NOTFOUND=return] dns myhostname
Run Code Online (Sandbox Code Playgroud)
显然,我现在应该可以通过她的名字 ping SUSAN(我已经可以通过她的 IP ping 她了)。但我得到:
user@localhost:~ $ ping susan
ping: unknown host susan
Run Code Online (Sandbox Code Playgroud) 我想知道,有没有办法在 Linux 和 Windows 之间轻松共享文件夹?
我最近购买了一台笔记本电脑,一台 Acer Aspire R15,具有以下规格:17 7500U、12GB DDR4、256GB SSD、GTX 940MX 2GB。
它预装了 Windows 10,但我想在双引导配置中安装 Debian 以进行编程。
无论如何,我在 C: 驱动器的一个单独分区上安装了 Debian,并安装了 grub。当我重新启动 PC 时,它直接进入了 Windows 10,而没有启动 grub。我做了几次谷歌搜索并最终尝试了这个,但这种方法不起作用,我的电脑再次直接启动到 Windows。然后我尝试了这个,这也不起作用。然后我尝试在使用refine的USB闪存驱动器启动到debian后直接通过debian安装reFIND,以尝试查看是否可以使用refind代替Grub,但这也没有任何作用。
TL;DR:我的电脑直接启动到 Windows 而不是加载 grub,我尝试了我找到的所有方法来解决这个问题,但没有一个有效。有人可以帮我让我的电脑用 grub 启动吗?
我在 Windows 10 机器上,启用/配置了适用于 Linux 的 Windows 子系统 (Ubuntu)。为了解释我的问题,让我向您展示两种情况:
场景一:
cmd.exe
提示bash
在cmd.exe
提示符下运行bash
)我运行给定的命令,dwiextract
在我的情况下调用(来自神经影像分析软件包)工作正常,表明软件包安装成功。
场景2:
cmd.exe
提示bash
from cmd.exe
:bash -c dwiextract
我明白了command not found
。
(注意我在bash -c
这里了解到并在其他场合成功使用了它。)
下图准确显示了我所做的:
我的问题:这两种情况不应该是等价的。为什么方案 1 有效而方案 2 无效?
非常感谢。
只要体系结构相同,Windows .exe 文件可以在 Linux 系统上运行也就不足为奇了(如果它正确加载到 RAM 上)。但Linux和Windows的系统调用完全不同。因此,当 .exe 文件在 Linux 上调用系统调用时,结果将不是我们所期望的。
我认为 Wine 将 Windows 系统调用转换为 Linux 系统调用,但我无法想象如何转换。也许系统调用是通过int、syscall、systenter等实现的。Wine是否通过某种方式直接hook这样的操作?
我是新来的,对 Linux 和软件开发还没有很多经验和知识。
我想开始学习软件和游戏开发,目前我正在构建一台 PC 以实现这一目标。我想开发支持三大平台(Windows、macOS 和 Linux)的软件或游戏。
我可以在一个操作系统上顺利开发支持三大平台的软件或游戏吗?就像如果我使用一个 Linux(其中有很多开发工具)并且想要开发也支持 Windows、macOS 和其他 Linux 发行版的软件或游戏,我可以做到这一点而不会在以后遇到诸如切换回操作系统之类的问题吗?来回测试它是否有效?或者我是否只需要安装所有操作系统(以及每个操作系统中的所有开发工具)并在每个操作系统中构建它们以获得每个支持?
windows ×10
linux ×3
bash ×2
boot-loader ×1
debian ×1
development ×1
dual-boot ×1
editors ×1
file-sharing ×1
filesystems ×1
freebsd ×1
games ×1
ksh ×1
macos ×1
netbios ×1
nsswitch ×1
ntfs ×1
ntfs-3g ×1
samba ×1
system-calls ×1
ubuntu ×1
virtualbox ×1
windows-subsystem-for-linux ×1
wine ×1