标签: linux

如何以 /usr/sbin/nologin 作为 Shell 的用户身份运行命令?

我需要做的就是以特定用户身份运行特定脚本,该用户nologin/false/etc/passwd.

我会以 root 身份运行脚本,这应该以另一个用户身份运行。跑步:

~# su -c "/bin/touch /tmp/test" testuser
Run Code Online (Sandbox Code Playgroud)

会工作,但我需要一个有效的测试用户外壳。我知道我可以禁用密码passwd -d testuser并将外壳保留为/bin/bash这种方式会安全一点,但我需要有nologin/false外壳。

基本上我需要的是crontab当我们将作业设置为以特定用户身份运行时会做什么,而不管这个用户是否有nologin/falseshell。

ps 我发现这个线程Executing a command as a nologin user,但我不知道如何concatenate将命令su -s /bin/sh $user发送到我需要运行的脚本。

linux su login shell bash

104
推荐指数
3
解决办法
14万
查看次数

是否可以在 Linux 中为主机名设置别名?

是否可以在 Linux 中为主机名设置别名?

jmillikin 在各种 Ubuntu 论坛上提出的问题如下:


是否可以创建主机名别名?有点像 /etc/hosts,但使用其他主机名而不是 IP 地址。因此,对于这样的文件,您可以 ping “fakehost1”,然后将其重新映射到“realhost”,然后将“realhost”解析为 IP 地址。

# Real host        # Aliases
realhost           fakehost1 fakehost2 fakehost3
Run Code Online (Sandbox Code Playgroud)

有人回答了 ssh,但没有回答 ping 等问题。我的主要目的是将它用作Subversion服务器的别名。就我而言,realhost 位于动态 IP 地址下。因此,“/etc/hosts”别名不起作用。我想访问我的 Subversion 服务器svn://my_svnserver/my_repos而不是 svn://realhost/my_repos.

linux hostname alias

102
推荐指数
7
解决办法
19万
查看次数

保护 LAMP 服务器的技巧

这是一个关于保护 LAMP 堆栈的规范问题

保护 LAMP 服务器的绝对准则是什么?

security linux lamp

102
推荐指数
4
解决办法
2万
查看次数

如何列出加载的 Linux 模块参数值?

有没有标准的方法来列出加载的 Linux 模块的参数值?我基本上是在探索这个Linux 内核模块参数问题的另一个答案,因为我感兴趣的模块没有/sys/modules/<module_name>/parameters接口。

linux kernel

100
推荐指数
4
解决办法
11万
查看次数

如何在 Linux 中显示文本文件中的某些行?

我想每个人都知道有用的 Linux cmd 行实用程序headtail. head允许您打印文件的前 X 行,tail执行相同的操作但打印文件的末尾。打印文件中间的好命令是什么?类似于middle --start 10000000 --count 20(打印第 10'000'000 行到第 10'000'010 行)。

我正在寻找可以有效处理大文件的东西。我试过了tail -n 10000000 | head 10,它慢得可怕。

linux command-line-interface tail sed

100
推荐指数
3
解决办法
28万
查看次数

与 SSH 会话断开连接会杀死您的程序吗?

所以,说我从一个SSH会话断开连接,我已经开始之后rsynccp或其他任何命令,可以是长期运行。在我断开连接后,该命令会一直运行直到完成还是只是被杀死?

一直想知道这个。

linux ssh systemd

100
推荐指数
3
解决办法
7万
查看次数

如何获取刚刚启动的进程的pid

我想启动进程(例如 myCommand)并获取它的 pid(以允许稍后杀死它)。

我试过 ps 并按名称过滤,但我无法按名称区分进程

myCommand
ps ux | awk '/<myCommand>/ {print $2}' 
Run Code Online (Sandbox Code Playgroud)

因为进程名称不是唯一的。

我可以通过以下方式运行进程:

myCommand &
Run Code Online (Sandbox Code Playgroud)

我发现我可以通过以下方式获得这个 PID:

echo $!
Run Code Online (Sandbox Code Playgroud)

有没有更简单的解决方案?

我很乐意执行 myCommand 并通过一行命令获取其 PID。

linux unix bash process pid

99
推荐指数
6
解决办法
21万
查看次数

你可以有多个 ~/.ssh/config 文件吗?

我们有一个堡垒服务器,我们用来连接到多个主机,我们的 .ssh/config 已经增长到一千多行(我们有数百个我们连接到的主机)。这开始变得有点笨拙,我想知道是否有办法将 .ssh/config 文件分成多个文件。理想情况下,我们会在某处指定其他文件将被视为 .ssh/config 文件,可能如下所示:

~/.ssh/config
  ~/.ssh/config_1
  ~/.ssh/config_2
  ~/.ssh/config_3
  ...
Run Code Online (Sandbox Code Playgroud)

我已阅读有关 ssh/config 的文档,但我认为这是不可能的。但也许其他人也遇到了类似的问题并找到了解决方案。

linux unix ssh bash

98
推荐指数
4
解决办法
5万
查看次数

如何防止用户登录,但在 Linux 中允许“su - user”?

您如何允许用户使用“ su - user ”登录但阻止用户使用 SSH 登录?

我试图将外壳设置为/bin/false但是当我尝试su它时不起作用。

有几种方法只允许登录su

SSH 是AllowUser要走的路吗?(如果这是要走的路,我会怎么做)

linux su login

97
推荐指数
3
解决办法
11万
查看次数

在一个大分区上安装 Linux 到底有多糟糕?

我们将在新服务器上运行 CentOS 7。我们在服务器内部的 raid6 中有 6 个 300GB 驱动器。(存储主要以 40TB RAID 盒的形式在外部存储。)如果格式化为单个卷,则内部卷大约为 1.3TB。我们的系统管理员认为将操作系统安装在一个 1.3TB 的大分区上是一个非常糟糕的主意。

我是生物学家。我们不断安装新软件来运行和测试,其中大部分都在 /usr/local 中。然而,因为我们有大约 12 位不精通计算机的生物学家在使用该系统,所以我们也在 /home 中收集了很多数据。我们的最后一个服务器有一个 200GB 的 / 分区,2.5 年后它已满 90%。我不希望这种情况再次发生,但我也不想违背专家的建议!

我们如何才能最好地使用 1.3TB 可用空间来确保空间在需要的时间和地点可用,但又不会为系统管理员带来维护噩梦?

linux partition centos partition-table raid6

97
推荐指数
5
解决办法
3万
查看次数