VirtualBox

Ticket #18117 (new defect)

Opened 20 months ago

Last modified 20 months ago

vboxsf filesystem doesn't handle no extension file name

Reported by: Arirang Owned by:
Component: shared folders Version: VirtualBox 5.2.20
Keywords: vboxsf Cc:
Guest type: Linux Host type: Windows

Description

I am using VirtualBox version 5.2.20. My virtual machine (Ubuntu Linux) is running Windows 10. I set up shared folders and it mounted with -t vboxsf on the Ubuntu.

Here is error case with vboxsf filesystem: I created ".new.test1." file but it created ".new.test1" file.

chwon@chwon-VirtualBox:~/sandbox/tmp$ echo "hello" > .new.test1.
chwon@chwon-VirtualBox:~/sandbox/tmp$ ls -la
total 5
drwxrwxrwx 1 chwon chwon    0 Nov  8 15:12 .
drwxrwxrwx 1 chwon chwon 4096 Nov  8 15:11 ..
-rwxrwxrwx 1 chwon chwon    6 Nov  8 15:12 .new.test1
chwon@chwon-VirtualBox:~/sandbox/tmp$ 
chwon@chwon-VirtualBox:~/sandbox/tmp$ ls .new.test1.
ls: cannot access .new.test1.: No such file or directory
chwon@chwon-VirtualBox:~/sandbox/tmp$ ls .new.test1
.new.test1

I did same test on Linux ext4 filesystem.

chwon@chwon-VirtualBox:~/tmp/test$ echo "hello" > .new.test1.
chwon@chwon-VirtualBox:~/tmp/test$ ls -la
total 12
drwxrwxr-x 2 chwon chwon 4096 Nov  8 15:28 .
drwxrwxr-x 4 chwon chwon 4096 Nov  8 15:28 ..
-rw-rw-r-- 1 chwon chwon    6 Nov  8 15:28 .new.test1.
chwon@chwon-VirtualBox:~/tmp/test$ ls .new.test1. 
.new.test1.
chwon@chwon-VirtualBox:~/tmp/test$ ls .new.test1
ls: cannot access .new.test1: No such file or directory

Change History

comment:1 Changed 20 months ago by grawity

IMHO this is normal, because Windows itself (specifically the Win32 API) forbids filenames which end in a dot and automatically removes the dot on all operations.

If Virtualbox was changed to bypass this restriction, that'd fix the Linux side but then you wouldn't be able to access .new.test1. from the Windows side...

comment:2 Changed 20 months ago by Arirang

I have had this problem with recent version of VirtualBox. I don't know exactly which version.

If it removes the dot on all operations, the dot should be removed when Linux try to access it. For example, when run "cat .new.test1." on Linux, VirtualBox should remove the dot and access ".new.test1" file.

Here is testing procedure:

chwon@chwon-VirtualBox:~/sandbox/tmp$ echo "hello" > .new.test.
chwon@chwon-VirtualBox:~/sandbox/tmp$ ls -la
total 5
drwxrwxrwx 1 chwon chwon    0 Nov  9 11:36 .
drwxrwxrwx 1 chwon chwon 4096 Nov  9 11:36 ..
-rwxrwxrwx 1 chwon chwon    6 Nov  9 11:36 .new.test
chwon@chwon-VirtualBox:~/sandbox/tmp$ cat .new.test.
cat: .new.test.: No such file or directory
chwon@chwon-VirtualBox:~/sandbox/tmp$ cat .new.test
hello

Do you know why it changed and which version changed it?

Last edited 20 months ago by Arirang (previous) (diff)

comment:3 Changed 20 months ago by Arirang

Do you have any update? It looks for me this is VirtualBox problem.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use