具体AllowUsers参数:
例如转换这个
AllowUsers user1 user2 user3 user4
Run Code Online (Sandbox Code Playgroud)
对此
AllowUsers
user1
user2
user3
user4
Run Code Online (Sandbox Code Playgroud) 我正在考虑一个系统,在/etc远程 git 存储库中跟踪的位置。我正在考虑 git 工作流程,其中每个主机都有一个不同的分支。
每台机器上的每个以前的版本都可以轻松跟踪、比较和合并。
如果/etc必须在多台机器上提交修改,则可以通过一些合并脚本轻松完成。
如果发生“不需要的”/etc更改,这可能很明显(甚至可以调整警报脚本以查看)。
有人用过这样的配置吗?它有任何安全问题吗?
如何使用我的 ./ssh/config 文件建立反向 ssh 隧道?
我正在尝试重现此命令
ssh -R 55555:localhost:22 user@host
Run Code Online (Sandbox Code Playgroud)
在我的 .ssh/config 文件中,这样当我输入时,ssh host我会以用户身份和反向隧道通过 ssh 连接到主机。配置文件接受的命令是命令行标志的更详细的对应物。根据 ssh 手册页和 ssh_config 手册页,似乎相应的设置是 BindAddress。
在我的 .ssh/config 文件中,我有:
Host host
Hostname host
User user
BindAddress 55555:localhost:22
Run Code Online (Sandbox Code Playgroud)
当我尝试时,这个和轻微的变化导致连接被拒绝
ssh localhost -p 55555
Run Code Online (Sandbox Code Playgroud)
一旦登录到主机。如果我在第一次 SSH 到主机时在顶部明确给出命令,同样的工作正常。我的配置文件在没有反向隧道命令的情况下也能工作;ssh host我以用户身份登录到主机。
我想知道是否有办法在 shell 脚本中找出当前用户的默认 shell?
用例:我正在编写一个为命令设置别名的脚本,这个别名是在 shell 脚本中设置的。
!# /bin/bash
alias = 'some command to set the alias'
Run Code Online (Sandbox Code Playgroud)
脚本中有一个逻辑,它尝试查找执行脚本的用户的默认 shell 并将此别名添加到相应的 ~/.bashrc 或 ~/.zshrc 文件中
但是当我在脚本前面添加一个shebang并明确要求它使用bash时,这里发布的答案总是按预期返回bash,尽管我是在ZSH终端上执行这个脚本的。
有没有办法获取执行脚本的 shell 类型,而不管 shebang 设置如何?
我正在寻找一种适用于 Mac 和所有基于 linux 的小酒馆的解决方案。
我正在为我们的平板共享运行一个小型服务器。它主要是带有一些附加服务的文件服务器。客户端是 Linux 机器(主要是 Ubuntu,但也有其他一些发行版)和介于两者之间的一些 Mac(-Book)(但它们对于问题并不重要)。服务器运行的是Ubuntu 11.10 (Oneiric Ocelot)“服务器版”,我从中进行设置和测试的系统运行的是 11.10“桌面版”。我们使用 Samba(我们更熟悉)运行我们的共享很长一段时间,然后迁移到NFS(因为我们在 LAN 中没有任何 Windows 用户并想尝试一下),到目前为止一切正常.
现在我想使用autofs设置自动挂载以平滑一切(到目前为止,每个人都在需要时手动挂载共享)。自动安装似乎也有效。问题是我们的“服务器”不是 24/7 全天候运行以节省能源(如果有人需要服务器上的东西,他/她会打开它然后关闭它,所以它每天只运行几个小时)。但是由于 autofs 设置客户端挂断时服务器没有运行时经常退出。
即使服务器没有运行,我也可以很好地启动所有客户端。
但是,当我想显示一个目录(在终端或 nautilus 中)时,该目录包含指向共享的符号链接,/nfs而服务器未运行时,它会挂起至少两分钟(因为 autofs 无法连接到服务器但保持尝试,我假设)。
/nfs?我认为不是,但也许有可能不尝试访问它这么长时间?只需给我一个空目录或“无法找到/连接到该目录”或类似的内容。当服务器运行时,一切正常。
但是当服务器关闭时,在卸载共享之前,工具(如df或ll)挂起(假设是因为他们认为共享仍然存在但服务器将不再响应)。
此外,当服务器关闭并且它们仍然安装了共享时,客户端也不会关闭或重新启动。它们在“杀死剩余的进程”中挂起(看起来是无限的)并且似乎什么也没发生。
我认为这一切都归结为安装和卸载的简洁超时值。并且可能在与服务器的连接丢失时删除所有共享。
所以我的问题是:如何处理这个?作为奖励:是否有一种/nfs无需挂载真实共享即可在内部链接的好方法(autofs 选项或可能使用/nfs在挂载发生或类似情况时被替换的伪 FS )?
在NFS设置是非常基本的,但我们很好,到目前为止(使用服务的NFSv4):
/etc/default/nfs-common
NEED_STATD=
STATDOPTS=
NEED_IDMAPD=YES
NEED_GSSD=
Run Code Online (Sandbox Code Playgroud)
/etc/idmapd.conf
[General]
Verbosity = 0
Pipefs-Directory = …Run Code Online (Sandbox Code Playgroud) 有时我使用非常小的终端窗口并需要每一块可用空间。所以我想隐藏vim状态行。
我已经set laststatus=0隐藏了状态行之一。但是还有另一个内容-- INSERT --和"filename.ext" 22L 500C。
我怎样才能隐藏这条线?
几个月前,meld开始表现得很奇怪。常见的行几乎无法阅读,并显示为黑色背景上的深灰色文本。

奇怪的是,以 root 身份运行它很好(使用kdesudo meld),尽管主题不那么漂亮。

如何为 meld 指定文本的颜色选项?
我正在使用:
meld使用 GTK3,所以我摆弄系统设置 > 通用外观和行为 > 应用程序外观 > GTK > 选择一个 GTK3 主题。这种变化反映在 meld 中,但我选择的三个选项都没有改变文本。(可用的选项是 Default、Emacs 和oxygen-gtk;后者在上面的屏幕截图中使用。)
我查找~了gtk以他们的名字命名的文件。
~/.gtkrc-2.0
~/.gtkrc-2.0-kde4
~/.config/gtk-2.0
~/.config/gtk-3.0
~/.kde4/share/config/gtkrc
~/.kde4/share/config/gtkrc-2.0
Run Code Online (Sandbox Code Playgroud)
有趣的是gtk,它的名字中没有任何东西/root。因此,我尝试删除一些~文件,看看是否可以为我的用户获得相同的效果。我认为所有gtkrc-2.0文件都与融合无关。
首先,我删除了~/.config/gtk-3.0,但这没有效果,并在我打开 meld 时重新创建。
唯一的其他选项似乎是~/.kde4/share/config/gtkrc,因此删除了它并开始融合,这不受影响。但是,该文件并未重新创建,并且它包含一些可能相关的行(例如text[ACTIVE] = { 1.000, 1.000, 1.000 })。我不确定(丢失的)文件是否已加载。我试过了kbuildsycoca4 …
当我昨天打开我的 Ubuntu 18.04 并想启动 GitKraken 时,它不起作用。单击它的图标后,我看到该进程如何尝试在左上角(“活动”旁边)启动,但几秒钟后,该进程似乎停止了,什么也没有发生。尝试从控制台启动 GitKraken 也失败,并显示以下两条消息:
/snap/gitkraken/58/bin/desktop-launch: line 23: $HOME/.config/user-dirs.dirs: Permission denied
ln: failed to create symbolic link '$HOME/snap/gitkraken/58/.config/gtk-2.0/gtkfilechooser.ini': File exists
Run Code Online (Sandbox Code Playgroud)
不幸的是,我的 Linux 技能太有限,无法解决这个问题。我尝试过的唯一一件事是chmod 777 $HOME/.config/user-dirs.dirs因为Permossion denied但这并没有帮助。
编辑:正如terdon在他的评论中所建议的那样ls -ld ~/.config/user-dirs.dirs,这是它的输出:
-rwxrwxrwx 1 myusername myusername 633 Mai 6 10:30 /home/mayusername/.config/user-dirs.dirs
然后,我发出了mv ~/snap/gitkraken/58/.config/gtk-2.0/gtkfilechooser.ini gtkfilechooser.ini.bak命令,然后尝试启动 GitKraken。我没有再开始显示:
/snap/gitkraken/58/bin/desktop-launch: line 23: /home/myusername/.config/user-dirs.dirs: Permission denied
ln: failed to create symbolic link ...我最初的帖子中的错误没有出现。ll目录中的exe 剪切~/snap/gitkraken/58/.config/gtk-2.0给了我以下输出:
drwxrwxr-x 2 myusername myusername 4096 Jun 3 16:44 …Run Code Online (Sandbox Code Playgroud) 我想在 Debian 系统上为 Geany 编辑器设置一个插件。这是一个主题更改插件,所以我正在遵循本手册。它说:
最简单的方法是将存档的内容复制到 ~/.config/geany/filedefs/ 文件夹中。
我不明白这个。他们是什么意思~/.config?那是安装 Geany 的默认目录吗?我有它的文件,/usr/lib/geany但这似乎不是他们谈论的位置。
我正在尝试通过没有 nc 的服务器设置自动 SSH 跳转。
这从命令行工作:
ssh -A gateway ssh steve@target
Run Code Online (Sandbox Code Playgroud)
(我已将我的公钥添加到 SSH 代理中)。
但是,将其添加到 ~/.ssh/config 不会:
Host target
User steveb
ProxyCommand ssh -A gateway ssh steve@targetip
$ ssh target
Pseudo-terminal will not be allocated because stdin is not a terminal.
^CKilled by signal 2.
Run Code Online (Sandbox Code Playgroud)
试图强行解决问题-t很有趣但无济于事。
ProxyCommand ssh -A -t gateway ssh steve@targetip
$ ssh target
Pseudo-terminal will not be allocated because stdin is not a terminal.
Pseudo-terminal will not be allocated because stdin is not a terminal. …Run Code Online (Sandbox Code Playgroud) configuration ×10
ssh ×3
autofs ×1
automounting ×1
debian ×1
file-server ×1
geany ×1
git ×1
gtk ×1
gtk3 ×1
kde ×1
nfs ×1
permissions ×1
rhel ×1
shell ×1
tty ×1
vim ×1