Inconsistent data in default synced folder (`/vagrant`)

Hi! I’ve been scratching my head over an issue that I’m experiencing with moving files from my host to a box.

I’ve got a workflow in which a compile and package an application on my host. The resulting artifacts are then copied to a subdirectory of the directory that holds my Vagrantfile on the host. Next, from within the box, I use those files (available in /vagrant/mysubdir/) to “do things.”

From within the box, I make it a point to remove the artifacts from the /vagrant/mysubdir/ to make sure that I’m using a fresh copy whenever I’m consuming them.

I’ve been using the workflow described above for years, although the issue that I’m experiencing is with a new box.

When copying in new files from the host, I’ve noticed that the changes that I’ve put in them aren’t available in the box. It’s as if an earlier version of the files are being shared. That is not only puzzling, but also very annoying, as the whole point of the exercise is to bring in updated versions.

When doing a directory listing from within the box, I notice that many, but not all, of the files have epoch as their timestamp. Those that do not, seem to have a timestamp that’s still not the same as the file has in the host. The reported file sizes are equal, but as I mentioned: I’m not seeing the updated content from the files from within the box.

This is a listing from within the box

root@vagrant:/vagrant# ll plugins/
total 181028
drwxrwxr-x 1 vagrant vagrant     4096 Jan  1  1970 ./
drwxrwxr-x 1 vagrant vagrant     4096 Mar 14 15:10 ../
-rw-rw-r-- 1 vagrant vagrant  3569675 Jan  1  1970 adminstats.jar
-rw-rw-r-- 1 vagrant vagrant    12225 Mar 14 15:14 alertnotifier.jar
-rw-rw-r-- 1 vagrant vagrant    15056 Jan  1  1970 certificateManager.jar
-rw-rw-r-- 1 vagrant vagrant  3650315 Mar 14 15:14 componentmanager.jar
-rw-rw-r-- 1 vagrant vagrant     2342 Jan  1  1970 core.jar
-rw-rw-r-- 1 vagrant vagrant     2009 Jan  1  1970 dataconsole.jar
-rw-rw-r-- 1 vagrant vagrant  5119936 Jan  1  1970 devicemanager.jar
-rw-rw-r-- 1 vagrant vagrant 28746959 Jan  1  1970 elasticsearch.jar
-rw-rw-r-- 1 vagrant vagrant  3559337 Jan  1  1970 filetransfer.jar
-rw-rw-r-- 1 vagrant vagrant  3749690 Jan  1  1970 finder.jar
-rw-rw-r-- 1 vagrant vagrant  3570296 Jan  1  1970 foomanager.jar
-rw-rw-r-- 1 vagrant vagrant  4858513 Mar 14 15:14 helpdesk.jar
-rw-rw-r-- 1 vagrant vagrant     1938 Jan  1  1970 helpdeskconsole.jar
-rw-rw-r-- 1 vagrant vagrant    62219 Jan  1  1970 iperf.jar
-rw-rw-r-- 1 vagrant vagrant  4900764 Jan  1  1970 keycloak.jar
-rw-rw-r-- 1 vagrant vagrant  3529886 Jan  1  1970 logging.jar
-rw-rw-r-- 1 vagrant vagrant  3516397 Jan  1  1970 maintenance.jar
-rw-rw-r-- 1 vagrant vagrant  4330634 Jan  1  1970 operatormanager.jar
-rw-rw-r-- 1 vagrant vagrant  5602542 Jan  1  1970 packagemanager.jar
-rw-rw-r-- 1 vagrant vagrant     7864 Jan  1  1970 pagerestriction.jar
-rw-rw-r-- 1 vagrant vagrant   101973 Jan  1  1970 pairing.jar
-rw-rw-r-- 1 vagrant vagrant  3815746 Jan  1  1970 pluginmanager.jar
-rw-rw-r-- 1 vagrant vagrant     6451 Jan  1  1970 privacy.jar
-rw-rw-r-- 1 vagrant vagrant  3518161 Jan  1  1970 proxyaudit.jar
-rw-rw-r-- 1 vagrant vagrant  6496600 Jan  1  1970 publicserver.jar
-rw-rw-r-- 1 vagrant vagrant  4004395 Jan  1  1970 registration.jar
-rw-rw-r-- 1 vagrant vagrant 14245291 Jan  1  1970 restapi.jar
-rw-rw-r-- 1 vagrant vagrant  7067926 Jan  1  1970 restapiadditions.jar
-rw-rw-r-- 1 vagrant vagrant  4410383 Jan  1  1970 scriptmanager.jar
-rw-rw-r-- 1 vagrant vagrant  5679133 Jan  1  1970 servermanager.jar
-rw-rw-r-- 1 vagrant vagrant  4140891 Jan  1  1970 serverstatus.jar
-rw-rw-r-- 1 vagrant vagrant  5188300 Mar 14 15:14 servicemanager.jar
-rw-rw-r-- 1 vagrant vagrant  3535393 Jan  1  1970 syslog.jar
-rw-rw-r-- 1 vagrant vagrant  3536131 Jan  1  1970 systemscriptsmanager.jar
-rw-rw-r-- 1 vagrant vagrant  3859253 Jan  1  1970 taskscheduler.jar
-rw-rw-r-- 1 vagrant vagrant 17625130 Jan  1  1970 testing.jar
-rw-rw-r-- 1 vagrant vagrant  3557718 Jan  1  1970 threaddump.jar
-rw-rw-r-- 1 vagrant vagrant  3958027 Jan  1  1970 ab259.jar
-rw-rw-r-- 1 vagrant vagrant  3539954 Jan  1  1970 tunnelmanager.jar
-rw-rw-r-- 1 vagrant vagrant  4460683 Jan  1  1970 usermanager.jar
-rw-rw-r-- 1 vagrant vagrant  3728245 Jan  1  1970 uspmanager.jar

This is a listing created in the host

guus@octarine:/data/myproject-vagrant/myproject123$ ll plugins/
total 181028
drwxrwxr-x 2 guus guus     4096 mrt 14 15:19 ./
drwxrwxr-x 7 guus guus     4096 mrt 14 15:26 ../
-rw-rw-r-- 1 guus guus  3569675 mrt 14 15:19 adminstats.jar
-rw-rw-r-- 1 guus guus    12225 mrt 14 15:19 alertnotifier.jar
-rw-rw-r-- 1 guus guus    15056 mrt 14 15:19 certificateManager.jar
-rw-rw-r-- 1 guus guus  3650315 mrt 14 15:19 componentmanager.jar
-rw-rw-r-- 1 guus guus     2342 mrt 14 15:19 core.jar
-rw-rw-r-- 1 guus guus     2009 mrt 14 15:19 dataconsole.jar
-rw-rw-r-- 1 guus guus  5119936 mrt 14 15:19 devicemanager.jar
-rw-rw-r-- 1 guus guus 28746959 mrt 14 15:19 elasticsearch.jar
-rw-rw-r-- 1 guus guus  3559337 mrt 14 15:19 filetransfer.jar
-rw-rw-r-- 1 guus guus  3749690 mrt 14 15:19 finder.jar
-rw-rw-r-- 1 guus guus  3570296 mrt 14 15:19 foomanager.jar
-rw-rw-r-- 1 guus guus     1938 mrt 14 15:19 helpdeskconsole.jar
-rw-rw-r-- 1 guus guus  4858513 mrt 14 15:19 helpdesk.jar
-rw-rw-r-- 1 guus guus    62219 mrt 14 15:19 iperf.jar
-rw-rw-r-- 1 guus guus  4900764 mrt 14 15:19 keycloak.jar
-rw-rw-r-- 1 guus guus  3529886 mrt 14 15:19 logging.jar
-rw-rw-r-- 1 guus guus  3516397 mrt 14 15:19 maintenance.jar
-rw-rw-r-- 1 guus guus  4330634 mrt 14 15:19 operatormanager.jar
-rw-rw-r-- 1 guus guus  5602542 mrt 14 15:19 packagemanager.jar
-rw-rw-r-- 1 guus guus     7864 mrt 14 15:19 pagerestriction.jar
-rw-rw-r-- 1 guus guus   101973 mrt 14 15:19 pairing.jar
-rw-rw-r-- 1 guus guus  3815746 mrt 14 15:19 pluginmanager.jar
-rw-rw-r-- 1 guus guus     6451 mrt 14 15:19 privacy.jar
-rw-rw-r-- 1 guus guus  3518161 mrt 14 15:19 proxyaudit.jar
-rw-rw-r-- 1 guus guus  6496600 mrt 14 15:19 publicserver.jar
-rw-rw-r-- 1 guus guus  4004395 mrt 14 15:19 registration.jar
-rw-rw-r-- 1 guus guus  7067926 mrt 14 15:19 restapiadditions.jar
-rw-rw-r-- 1 guus guus 14245291 mrt 14 15:19 restapi.jar
-rw-rw-r-- 1 guus guus  4410383 mrt 14 15:19 scriptmanager.jar
-rw-rw-r-- 1 guus guus  5679133 mrt 14 15:19 servermanager.jar
-rw-rw-r-- 1 guus guus  4140891 mrt 14 15:19 serverstatus.jar
-rw-rw-r-- 1 guus guus  5188300 mrt 14 15:19 servicemanager.jar
-rw-rw-r-- 1 guus guus  3535393 mrt 14 15:19 syslog.jar
-rw-rw-r-- 1 guus guus  3536131 mrt 14 15:19 systemscriptsmanager.jar
-rw-rw-r-- 1 guus guus  3859253 mrt 14 15:19 taskscheduler.jar
-rw-rw-r-- 1 guus guus 17625130 mrt 14 15:19 testing.jar
-rw-rw-r-- 1 guus guus  3557718 mrt 14 15:19 threaddump.jar
-rw-rw-r-- 1 guus guus  3958027 mrt 14 15:19 ab259.jar
-rw-rw-r-- 1 guus guus  3539954 mrt 14 15:19 tunnelmanager.jar
-rw-rw-r-- 1 guus guus  4460683 mrt 14 15:19 usermanager.jar
-rw-rw-r-- 1 guus guus  3728245 mrt 14 15:19 uspmanager.jar

I’m using Vagrant 2.4.3 on Ubuntu 24.04.2 LTS, and am working with a box based on bento/ubuntu-24.04 (version 202404.26.0, using VirtualBox 7.0.16).

What can I do to prevent this problem?

I’ve just errors like this in the dmesg output of the box. I’m not sure if it is related:

[   38.795787] ------------[ cut here ]------------
[   38.795790] UBSAN: array-index-out-of-bounds in /tmp/vbox.0/dirops.c:495:13
[   38.795806] index 25 is out of range for type 'char [1]'
[   38.795814] CPU: 0 PID: 3279 Comm: bash Tainted: G        W  OE      6.8.0-31-generic #31-Ubuntu
[   38.795817] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
[   38.795818] Call Trace:
[   38.795819]  <TASK>
[   38.795822]  dump_stack_lvl+0x48/0x70
[   38.795828]  dump_stack+0x10/0x20
[   38.795830]  __ubsan_handle_out_of_bounds+0xc6/0x110
[   38.795834]  vbsf_dir_iterate+0x6e6/0x700 [vboxsf]
[   38.795841]  iterate_dir+0x114/0x200
[   38.795845]  __x64_sys_getdents64+0x84/0x130
[   38.795846]  ? __pfx_filldir64+0x10/0x10
[   38.795849]  ? do_syscall_64+0x8c/0x180
[   38.795852]  x64_sys_call+0x1b43/0x25c0
[   38.795854]  do_syscall_64+0x7f/0x180
[   38.795857]  ? syscall_exit_to_user_mode+0x86/0x260
[   38.795860]  ? do_syscall_64+0x8c/0x180
[   38.795862]  ? exc_page_fault+0x94/0x1b0
[   38.795864]  entry_SYSCALL_64_after_hwframe+0x73/0x7b
[   38.795868] RIP: 0033:0x7ddeaeaed937
[   38.795876] Code: b6 fa ff 4c 89 e0 5b 41 5c 5d c3 0f 1f 84 00 00 00 00 00 f3 0f 1e fa b8 ff ff ff 7f 48 39 c2 48 0f 47 d0 b8 d9 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 8b 15 b1 54 11 00 f7 d8 64 89 02 48
[   38.795878] RSP: 002b:00007ffd9828b968 EFLAGS: 00000293 ORIG_RAX: 00000000000000d9
[   38.795881] RAX: ffffffffffffffda RBX: 0000586aa2aee750 RCX: 00007ddeaeaed937
[   38.795882] RDX: 0000000000008000 RSI: 0000586aa2aee780 RDI: 0000000000000003
[   38.795883] RBP: 00007ffd9828b9a0 R08: 00007ddeaec03b20 R09: 0000000000000000
[   38.795884] R10: 0000000000000001 R11: 0000000000000293 R12: 0000586aa2aee754
[   38.795885] R13: 0000586aa2aee780 R14: ffffffffffffff88 R15: 0000000000000000
[   38.795888]  </TASK>
[   38.795889] ---[ end trace ]---
[   38.795890] ------------[ cut here ]------------

The problem seems to have been resolved by any one or a combination of these actions:

  • recreated the box from scratch
  • updated the box to use the newer version 202502.21.0 of bento/ubuntu-2404
  • updated VirtualBox to 7.1.6
  • added the user that’s running VirtualBox to the group vboxusers