我的 Linux 内核在构建时必须使用user_namespaces进行配置,但它们的使用在启动后受到限制并且必须显式启用。我应该使用哪个 sysctl?
(如果它被打开,这将允许运行像 一样的隔离命令unshare --user --map-root-user --mount-proc --pid --fork
,然后在chroot
没有 root身份的情况下执行——这是 Linux 备受期待的特性。)
我nix
在我不是 root 的系统中以“单用户模式”使用(有关我的 nix 设置的描述,请参见下文)。
我想快速运行我的一个二进制文件,它与系统中不存在的库动态链接。
所以,我已经安装了库nix
:
$ nix-env -qa 'gmp'
gmp-4.3.2
gmp-5.1.3
$ nix-env -i gmp-5.1.3
Run Code Online (Sandbox Code Playgroud)
但是链接器仍然找不到该库:
$ ldd -r ../valencies
../valencies: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by ../valencies)
../valencies: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ../valencies)
linux-vdso.so.1 => (0x00007fffbbf28000)
/usr/local/lib/libsnoopy.so (0x00007f4dcfbdc000)
libgmp.so.10 => not found
libffi.so.5 => /usr/lib64/libffi.so.5 (0x00007f4dcf9cc000)
libm.so.6 => /lib64/libm.so.6 (0x00007f4dcf748000)
librt.so.1 => /lib64/librt.so.1 (0x00007f4dcf540000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4dcf33c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4dcf11f000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4dced8b000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4dcfde7000)
undefined …
Run Code Online (Sandbox Code Playgroud) 我正在通过 ssh 连接到远程系统,其中使用了不同的文件名编码(以及用户的语言环境)。这会导致一些问题。
在我开始讨论文件名问题之前,我想说,通过设置远程语言环境使其与本地语言环境相匹配,可以解决此类 ssh 会话的一些编码问题,即,
[imz@localhost ~]$ locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
[imz@localhost ~]$ echo ??????
??????
[imz@localhost ~]$ echo ???
???
[imz@localhost ~]$ ssh -vv ivan@example.com
Last login: Fri Nov 25 13:44:56 2011 from NN.NN.NN.NN
[ivan@dell ~]$ locale
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES=POSIX
LC_PAPER="ru_RU.KOI8-R"
LC_NAME="ru_RU.KOI8-R"
LC_ADDRESS="ru_RU.KOI8-R"
LC_TELEPHONE="ru_RU.KOI8-R"
LC_MEASUREMENT="ru_RU.KOI8-R"
LC_IDENTIFICATION="ru_RU.KOI8-R"
LC_ALL= …
Run Code Online (Sandbox Code Playgroud) 我有一个旧的 Xorg 服务器,其“渲染”扩展似乎有问题(如果启用,大多数字体都是不可见的,除非将鼠标悬停在它们上 - 在使用 X 客户端和库升级包之后)。
因此,通过添加以下内容,可以解决 Xorg 服务器的新实例的问题/etc/X11/xorg.conf
:
Section "Extensions"
Option "RENDER" "Disable"
EndSection
Run Code Online (Sandbox Code Playgroud)
但是,如果我想继续 X 会话,但让新客户端不使用该扩展,该怎么办?(当然,从逻辑上讲,不能让老客户不使用它;但是新客户呢?)一些选项是:
我想配置我的系统,以便在触摸板上禁用点按。(它使用 xorg-server-1.4.2-alt10.M41.1 运行相当旧版本的 ALTLinux 发行版。)
我对无需synclient
在每个 X 会话中运行的解决方案感兴趣。
也许,我的X服务器太旧了,这样不理解“InputClass”部分xorg.conf
的,由文森特Nivoliers另一个答案建议:
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Option "MaxTapTime" "0"
EndSection
Run Code Online (Sandbox Code Playgroud)
我得到一个错误;来自 Xorg.*.log:
(==) Using config file: "/etc/X11/xorg.conf"
Parse error on line 71 of section InputClass in file /etc/X11/xorg.conf
"InputClass" is not a valid section name.
(EE) Problem parsing the config file
(EE) Error parsing the config file
Run Code Online (Sandbox Code Playgroud)
此外,我的xorg.conf
没有任何明确的“InputDevice”部分(带有注释:“使用 libXiconfig,我们不需要 ps 和 usb 鼠标的配置。”)。
如何将“MaxTapTime”选项放入我xorg.conf
的输入设备(包括触摸板)的配置中?(如果我编写明确的“InputDevice”部分,我可能会破坏自动获得的正确配置..)
也许, 的输出 …
我想配置我的系统,以便在触摸板上禁用点按。(它使用 xorg-server-1.4.2-alt10.M41.1 运行相当旧版本的 ALTLinux 发行版。)
我发现的最流行的建议是synclient MaxTapTime=0
在用户的 X 会话中执行。
我可以接受这个解决方案,但问题是这并不适用于所有具有不同首选 X“环境”的用户。
第一个用户已登录 linux 控制台,然后运行startx
. 他的会话的 X 服务器已经占用了第 7 个虚拟 linux 控制台。他使用裸鼠药。
第二个用户已经登录,运行startx
。他的会话的 X 服务器已经占用了第 8 个虚拟 linux 控制台。他使用WindowMaker。
synclient MaxTapTime=0
已在第二个用户的 X 会话中产生影响,但在第一个用户的 X 会话中执行时没有影响。
那么,这个设置是否可以在系统范围内完成,对于 X 服务器,也许在xorg.conf
?