How to make Guest OS follow symlinks from shared folder
I have Ubuntu Desktop as my main OS and Ubuntu Server as my Guest OS in VirtualBox 4.2.16.
I created a shared folder called /shared and put in it several symlinks to different folders across my main OS. Of course, my guest OS sees only broken symlinks - because these locations exist only in the main OS.
How can I make my Guest OS see the actual content of them?
Creating another shared folder is not an option.
virtualbox virtualization symbolic-link
add a comment |
I have Ubuntu Desktop as my main OS and Ubuntu Server as my Guest OS in VirtualBox 4.2.16.
I created a shared folder called /shared and put in it several symlinks to different folders across my main OS. Of course, my guest OS sees only broken symlinks - because these locations exist only in the main OS.
How can I make my Guest OS see the actual content of them?
Creating another shared folder is not an option.
virtualbox virtualization symbolic-link
1
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06
add a comment |
I have Ubuntu Desktop as my main OS and Ubuntu Server as my Guest OS in VirtualBox 4.2.16.
I created a shared folder called /shared and put in it several symlinks to different folders across my main OS. Of course, my guest OS sees only broken symlinks - because these locations exist only in the main OS.
How can I make my Guest OS see the actual content of them?
Creating another shared folder is not an option.
virtualbox virtualization symbolic-link
I have Ubuntu Desktop as my main OS and Ubuntu Server as my Guest OS in VirtualBox 4.2.16.
I created a shared folder called /shared and put in it several symlinks to different folders across my main OS. Of course, my guest OS sees only broken symlinks - because these locations exist only in the main OS.
How can I make my Guest OS see the actual content of them?
Creating another shared folder is not an option.
virtualbox virtualization symbolic-link
virtualbox virtualization symbolic-link
edited Jan 4 at 17:45
clearkimura
3,86511954
3,86511954
asked Apr 11 '14 at 7:15
dev9dev9
215237
215237
1
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06
add a comment |
1
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06
1
1
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06
add a comment |
2 Answers
2
active
oldest
votes
It is a problem in virtualBox and has to do with security. Before 4.1.8 symlinks worked but was seriously flawed. And the discision was made to remove symlink support.
See this comment:
Symbolic link creation from within a guest has been disabled in VirtualBox 4.1.8 for security reasons. A guest could create symbolic links which point outside the assigned host directory. This has nothing to do with any ext3/ext4 bug. And the guest is still able to read symlinks which are created on the host.
Sorry for the late statement.
If you do
VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
Then your guest will be able to create symlinks again. But for security reasons (see above) this is disabled by default. The fix to prevent dangerous symlinks from the guest is very complicated, therefore we decided to not allow any guest to create any symlink to work around the security problem.
(I took the liberty to fix a bug in the comment ;) )
- and also take note that you need to restart vBox for the change to activate.
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
|
show 3 more comments
Short answer is it cannot be done.
The following ticket on virtualbox.org has some clarification:
This change is intentional, and fixes a problem with the current
implementation of shared folders. For compatibility with guest OSes
which have no idea what a symlink is it is at the moment interpreted
on the host side, and this means one get unexpected behavior with
guest OSes which know what a symlink is (e.g. if a symlink on a shared
folder mounted at /foo would point to /bar/file it's impossible to do
the right thing on the host side).
It's of course fixable, but far from trivial as the separation of
symlink processing between guest OS side and host side needs to be
redesigned. This can't be done quickly, so the only option was to
disable symlink creation. Too many users/applications were caught by
surprise by the non-standard behavior.
Source
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "89"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f446317%2fhow-to-make-guest-os-follow-symlinks-from-shared-folder%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
It is a problem in virtualBox and has to do with security. Before 4.1.8 symlinks worked but was seriously flawed. And the discision was made to remove symlink support.
See this comment:
Symbolic link creation from within a guest has been disabled in VirtualBox 4.1.8 for security reasons. A guest could create symbolic links which point outside the assigned host directory. This has nothing to do with any ext3/ext4 bug. And the guest is still able to read symlinks which are created on the host.
Sorry for the late statement.
If you do
VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
Then your guest will be able to create symlinks again. But for security reasons (see above) this is disabled by default. The fix to prevent dangerous symlinks from the guest is very complicated, therefore we decided to not allow any guest to create any symlink to work around the security problem.
(I took the liberty to fix a bug in the comment ;) )
- and also take note that you need to restart vBox for the change to activate.
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
|
show 3 more comments
It is a problem in virtualBox and has to do with security. Before 4.1.8 symlinks worked but was seriously flawed. And the discision was made to remove symlink support.
See this comment:
Symbolic link creation from within a guest has been disabled in VirtualBox 4.1.8 for security reasons. A guest could create symbolic links which point outside the assigned host directory. This has nothing to do with any ext3/ext4 bug. And the guest is still able to read symlinks which are created on the host.
Sorry for the late statement.
If you do
VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
Then your guest will be able to create symlinks again. But for security reasons (see above) this is disabled by default. The fix to prevent dangerous symlinks from the guest is very complicated, therefore we decided to not allow any guest to create any symlink to work around the security problem.
(I took the liberty to fix a bug in the comment ;) )
- and also take note that you need to restart vBox for the change to activate.
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
|
show 3 more comments
It is a problem in virtualBox and has to do with security. Before 4.1.8 symlinks worked but was seriously flawed. And the discision was made to remove symlink support.
See this comment:
Symbolic link creation from within a guest has been disabled in VirtualBox 4.1.8 for security reasons. A guest could create symbolic links which point outside the assigned host directory. This has nothing to do with any ext3/ext4 bug. And the guest is still able to read symlinks which are created on the host.
Sorry for the late statement.
If you do
VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
Then your guest will be able to create symlinks again. But for security reasons (see above) this is disabled by default. The fix to prevent dangerous symlinks from the guest is very complicated, therefore we decided to not allow any guest to create any symlink to work around the security problem.
(I took the liberty to fix a bug in the comment ;) )
- and also take note that you need to restart vBox for the change to activate.
It is a problem in virtualBox and has to do with security. Before 4.1.8 symlinks worked but was seriously flawed. And the discision was made to remove symlink support.
See this comment:
Symbolic link creation from within a guest has been disabled in VirtualBox 4.1.8 for security reasons. A guest could create symbolic links which point outside the assigned host directory. This has nothing to do with any ext3/ext4 bug. And the guest is still able to read symlinks which are created on the host.
Sorry for the late statement.
If you do
VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1
Then your guest will be able to create symlinks again. But for security reasons (see above) this is disabled by default. The fix to prevent dangerous symlinks from the guest is very complicated, therefore we decided to not allow any guest to create any symlink to work around the security problem.
(I took the liberty to fix a bug in the comment ;) )
- and also take note that you need to restart vBox for the change to activate.
answered Apr 11 '14 at 7:35
RinzwindRinzwind
205k28391526
205k28391526
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
|
show 3 more comments
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
I executed this command and restarted VB. The color of the symlink has changed, but now I cannot even cd into it. I see it when I use ls, but bash stopped showing me it on TAB.
– dev9
Apr 11 '14 at 7:49
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Hmm sounds like it is not executable?
– Rinzwind
Apr 11 '14 at 7:53
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
Well, ls shows me lrwxrwx---, so it should be fine. When I try to cd into it, bash tells me no such file or directory.
– dev9
Apr 11 '14 at 7:56
3
3
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
What is SHARE_NAME? Nobody explains it clearly where do we get it.
– Meglio
Jul 14 '15 at 12:21
3
3
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
The folder you use for the share.
– Rinzwind
Jul 14 '15 at 12:24
|
show 3 more comments
Short answer is it cannot be done.
The following ticket on virtualbox.org has some clarification:
This change is intentional, and fixes a problem with the current
implementation of shared folders. For compatibility with guest OSes
which have no idea what a symlink is it is at the moment interpreted
on the host side, and this means one get unexpected behavior with
guest OSes which know what a symlink is (e.g. if a symlink on a shared
folder mounted at /foo would point to /bar/file it's impossible to do
the right thing on the host side).
It's of course fixable, but far from trivial as the separation of
symlink processing between guest OS side and host side needs to be
redesigned. This can't be done quickly, so the only option was to
disable symlink creation. Too many users/applications were caught by
surprise by the non-standard behavior.
Source
add a comment |
Short answer is it cannot be done.
The following ticket on virtualbox.org has some clarification:
This change is intentional, and fixes a problem with the current
implementation of shared folders. For compatibility with guest OSes
which have no idea what a symlink is it is at the moment interpreted
on the host side, and this means one get unexpected behavior with
guest OSes which know what a symlink is (e.g. if a symlink on a shared
folder mounted at /foo would point to /bar/file it's impossible to do
the right thing on the host side).
It's of course fixable, but far from trivial as the separation of
symlink processing between guest OS side and host side needs to be
redesigned. This can't be done quickly, so the only option was to
disable symlink creation. Too many users/applications were caught by
surprise by the non-standard behavior.
Source
add a comment |
Short answer is it cannot be done.
The following ticket on virtualbox.org has some clarification:
This change is intentional, and fixes a problem with the current
implementation of shared folders. For compatibility with guest OSes
which have no idea what a symlink is it is at the moment interpreted
on the host side, and this means one get unexpected behavior with
guest OSes which know what a symlink is (e.g. if a symlink on a shared
folder mounted at /foo would point to /bar/file it's impossible to do
the right thing on the host side).
It's of course fixable, but far from trivial as the separation of
symlink processing between guest OS side and host side needs to be
redesigned. This can't be done quickly, so the only option was to
disable symlink creation. Too many users/applications were caught by
surprise by the non-standard behavior.
Source
Short answer is it cannot be done.
The following ticket on virtualbox.org has some clarification:
This change is intentional, and fixes a problem with the current
implementation of shared folders. For compatibility with guest OSes
which have no idea what a symlink is it is at the moment interpreted
on the host side, and this means one get unexpected behavior with
guest OSes which know what a symlink is (e.g. if a symlink on a shared
folder mounted at /foo would point to /bar/file it's impossible to do
the right thing on the host side).
It's of course fixable, but far from trivial as the separation of
symlink processing between guest OS side and host side needs to be
redesigned. This can't be done quickly, so the only option was to
disable symlink creation. Too many users/applications were caught by
surprise by the non-standard behavior.
Source
edited Mar 20 '17 at 10:18
Community♦
1
1
answered Apr 11 '14 at 7:35
Sylvain PineauSylvain Pineau
48.6k16106150
48.6k16106150
add a comment |
add a comment |
Thanks for contributing an answer to Ask Ubuntu!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f446317%2fhow-to-make-guest-os-follow-symlinks-from-shared-folder%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
FYI if your host is windows7,8,10 then you need to follow the instructions in the answer AND then also sudo start the VM (aka "run as administrator") as seen in this blog post about linux guest VM shared folders with symlinks on windows host.
– Trevor Boyd Smith
Feb 14 '16 at 19:06