X.org working with no socket in chroot?How can I communicate with a Unix domain socket via the shell on...
How do we test and determine if a USB cable+connector is version 2, 3.0 or 3.1?
Angles between vectors of center of two incircles
What causes burn marks on the air handler in the attic?
Meaning of words заштырить and отштырить
Align (multiline text)-nodes with tikzlibrary 'positioning'
Hiker's Cabin Mystery | Pt. XV
From France west coast to Portugal via ship?
Can others monetize my project with GPLv3?
Where is this New York City Broadway location from Fall 1958?
Designing a prison for a telekinetic race
Show two plots together: a two dimensional curve tangent to the maxima of a three dimensional plot
Have only girls been born for a long time in this village?
iPad or iPhone doesn't charge until unlocked?
Why Won't my Serial Read value stay the same
Unbiased estimator of exponential of measure of a set?
Are there any OR challenges that are similar to kaggle's competitions?
Do predators tend to have vertical slit pupils versus horizontal for prey animals?
Why is the name Bergson pronounced like Berksonne?
Is it alright to say good afternoon Sirs and Madams in a panel interview?
Can sulfuric acid itself be electrolysed?
Starships without computers?
Can I check a small array of bools in one go?
Expand def in write18
What is the evidence on the danger of feeding whole blueberries and grapes to infants and toddlers?
X.org working with no socket in chroot?
How can I communicate with a Unix domain socket via the shell on Debian Squeeze?Preventing ChromeOS from blanking the screen when working on a different ttyX client forwarded over SSH “cannot open display: localhost:11.0”Network namespace, ssh, X11OEL6 Slow boot && Millions of socket files in /tmp/orbit-gdmHow do I list all sockets which are open to remote machines?CentOS 7 SDDM can't click GUI with mouse
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}
I have a chroot setup and I've been running graphical applications from it with no problem. The only setup I've done is set DISPLAY=:0
and it works. However I always thought Unix domain sockets were used for X11 so I couldn't figure out why this was working. I did a little digging and it turns out I was right. My X.org server is launched with the -nolisten tcp
flag and I have a unix domain socket in /tmp/.X11-unix
yet somehow my chroot can launch graphical applications on that X11 display without any socket. I never hard linked the socket to the chroot, in fact they're not even on the same file system. /tmp/.X11-unix
is completely empty on the chroot. How is it possible that my chroot can launch graphical applications on my X11 display?
linux x11 xorg chroot socket
add a comment |
I have a chroot setup and I've been running graphical applications from it with no problem. The only setup I've done is set DISPLAY=:0
and it works. However I always thought Unix domain sockets were used for X11 so I couldn't figure out why this was working. I did a little digging and it turns out I was right. My X.org server is launched with the -nolisten tcp
flag and I have a unix domain socket in /tmp/.X11-unix
yet somehow my chroot can launch graphical applications on that X11 display without any socket. I never hard linked the socket to the chroot, in fact they're not even on the same file system. /tmp/.X11-unix
is completely empty on the chroot. How is it possible that my chroot can launch graphical applications on my X11 display?
linux x11 xorg chroot socket
add a comment |
I have a chroot setup and I've been running graphical applications from it with no problem. The only setup I've done is set DISPLAY=:0
and it works. However I always thought Unix domain sockets were used for X11 so I couldn't figure out why this was working. I did a little digging and it turns out I was right. My X.org server is launched with the -nolisten tcp
flag and I have a unix domain socket in /tmp/.X11-unix
yet somehow my chroot can launch graphical applications on that X11 display without any socket. I never hard linked the socket to the chroot, in fact they're not even on the same file system. /tmp/.X11-unix
is completely empty on the chroot. How is it possible that my chroot can launch graphical applications on my X11 display?
linux x11 xorg chroot socket
I have a chroot setup and I've been running graphical applications from it with no problem. The only setup I've done is set DISPLAY=:0
and it works. However I always thought Unix domain sockets were used for X11 so I couldn't figure out why this was working. I did a little digging and it turns out I was right. My X.org server is launched with the -nolisten tcp
flag and I have a unix domain socket in /tmp/.X11-unix
yet somehow my chroot can launch graphical applications on that X11 display without any socket. I never hard linked the socket to the chroot, in fact they're not even on the same file system. /tmp/.X11-unix
is completely empty on the chroot. How is it possible that my chroot can launch graphical applications on my X11 display?
linux x11 xorg chroot socket
linux x11 xorg chroot socket
edited 2 days ago
imz -- Ivan Zakharyaschev
6,9069 gold badges44 silver badges99 bronze badges
6,9069 gold badges44 silver badges99 bronze badges
asked Oct 18 '16 at 21:46
ScooptaScoopta
5381 gold badge9 silver badges26 bronze badges
5381 gold badge9 silver badges26 bronze badges
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The X server also supports abstract sockets, which work identically to UNIX sockets, and have pathnames similar to UNIX sockets, but the pathnames start with a NUL character. See the documentation for "abstract" in the unix(7) manpage. An abstract socket effectively exists in all filesystem namespaces and chroots; you don't have to link anything into the chroot or namespace to use it.
Perhaps the X server and client are both using an abstract socket to communicate? X clients using the standard X client libraries will automatically attempt to use an abstract socket, before they try to use the default UNIX socket. In libxcb, see _xcb_open
and _xcb_open_abstract
in src/xcb_util.c.
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
Yep, that seems to be it.netstat
reveals a socket called@/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.
– Scoopta
Oct 20 '16 at 6:17
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linuxunix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."
– Andrew Henle
Oct 20 '16 at 12:35
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
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: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
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%2funix.stackexchange.com%2fquestions%2f317319%2fx-org-working-with-no-socket-in-chroot%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The X server also supports abstract sockets, which work identically to UNIX sockets, and have pathnames similar to UNIX sockets, but the pathnames start with a NUL character. See the documentation for "abstract" in the unix(7) manpage. An abstract socket effectively exists in all filesystem namespaces and chroots; you don't have to link anything into the chroot or namespace to use it.
Perhaps the X server and client are both using an abstract socket to communicate? X clients using the standard X client libraries will automatically attempt to use an abstract socket, before they try to use the default UNIX socket. In libxcb, see _xcb_open
and _xcb_open_abstract
in src/xcb_util.c.
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
Yep, that seems to be it.netstat
reveals a socket called@/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.
– Scoopta
Oct 20 '16 at 6:17
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linuxunix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."
– Andrew Henle
Oct 20 '16 at 12:35
add a comment |
The X server also supports abstract sockets, which work identically to UNIX sockets, and have pathnames similar to UNIX sockets, but the pathnames start with a NUL character. See the documentation for "abstract" in the unix(7) manpage. An abstract socket effectively exists in all filesystem namespaces and chroots; you don't have to link anything into the chroot or namespace to use it.
Perhaps the X server and client are both using an abstract socket to communicate? X clients using the standard X client libraries will automatically attempt to use an abstract socket, before they try to use the default UNIX socket. In libxcb, see _xcb_open
and _xcb_open_abstract
in src/xcb_util.c.
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
Yep, that seems to be it.netstat
reveals a socket called@/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.
– Scoopta
Oct 20 '16 at 6:17
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linuxunix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."
– Andrew Henle
Oct 20 '16 at 12:35
add a comment |
The X server also supports abstract sockets, which work identically to UNIX sockets, and have pathnames similar to UNIX sockets, but the pathnames start with a NUL character. See the documentation for "abstract" in the unix(7) manpage. An abstract socket effectively exists in all filesystem namespaces and chroots; you don't have to link anything into the chroot or namespace to use it.
Perhaps the X server and client are both using an abstract socket to communicate? X clients using the standard X client libraries will automatically attempt to use an abstract socket, before they try to use the default UNIX socket. In libxcb, see _xcb_open
and _xcb_open_abstract
in src/xcb_util.c.
The X server also supports abstract sockets, which work identically to UNIX sockets, and have pathnames similar to UNIX sockets, but the pathnames start with a NUL character. See the documentation for "abstract" in the unix(7) manpage. An abstract socket effectively exists in all filesystem namespaces and chroots; you don't have to link anything into the chroot or namespace to use it.
Perhaps the X server and client are both using an abstract socket to communicate? X clients using the standard X client libraries will automatically attempt to use an abstract socket, before they try to use the default UNIX socket. In libxcb, see _xcb_open
and _xcb_open_abstract
in src/xcb_util.c.
edited Oct 19 '16 at 18:37
answered Oct 19 '16 at 18:30
Josh TriplettJosh Triplett
864 bronze badges
864 bronze badges
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
Yep, that seems to be it.netstat
reveals a socket called@/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.
– Scoopta
Oct 20 '16 at 6:17
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linuxunix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."
– Andrew Henle
Oct 20 '16 at 12:35
add a comment |
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
Yep, that seems to be it.netstat
reveals a socket called@/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.
– Scoopta
Oct 20 '16 at 6:17
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linuxunix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."
– Andrew Henle
Oct 20 '16 at 12:35
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
This is interesting. I'll take a look and see if that's what's going on.
– Scoopta
Oct 19 '16 at 19:16
1
1
Yep, that seems to be it.
netstat
reveals a socket called @/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.– Scoopta
Oct 20 '16 at 6:17
Yep, that seems to be it.
netstat
reveals a socket called @/tmp/.X11-unix/X0
and from looking around the @ seems to symbolize it's abstract.– Scoopta
Oct 20 '16 at 6:17
2
2
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linux
unix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."– Andrew Henle
Oct 20 '16 at 12:35
Note that abstract sockets are a Linux-specific extension to portable Unix sockets. Per the Linux
unix.7
man page: "Linux also supports an abstract namespace which is independent of the filesystem." and "The abstract socket namespace is a nonportable Linux extension."– Andrew Henle
Oct 20 '16 at 12:35
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- 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%2funix.stackexchange.com%2fquestions%2f317319%2fx-org-working-with-no-socket-in-chroot%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