我需要我的linux机器中的一个用户在.bash_profile中执行一些命令。但我不希望这个用户能够访问sftp、ftp和任何其他协议。此外,除了.bash_profile中的一些命令之外,任何命令都不能执行。
因此,我想要创建一个用户,他不能使用除ssh以外的任何协议,并且不能执行除来自.bash_profile的命令之外的任何命令。我该怎么办?
更新:
我尝试过rbash,但是我似乎可以通过输入bash来摆脱它。
[root@centos-7 ~]# which rbash
/usr/bin/rbash
[root@centos-7 ~]# ls
a anaconda-ks.cfg
[
当我通过ssh登录或从控制台登录时,我看到的是:
Linux sensu.lbox.com 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/L
我使用能运行shell文件的express和hbs在node.js中编写了以下web服务器,但是当我在web浏览器中输入这个url时,我一直收到以下错误
这里的 linux用户名被我的linux用户名所取代。
http://127.0.0.1:3000/run?file="/home/linux username here/nasServer/GameServers/minecraft/1.16.2 server/run.sh"
stderr: bash: <path to .sh file here>: No such file or directory.
ch
我和我的整个团队一起使用Linux服务器。我们都有自己的许可。
正如我们所知道的,我们可以很容易地将某人踢出去:who -u会列出所有带有PID的ssh登录,然后再列出kill -9任何人。
现在,假设某个坏人编写了一个bash脚本,它将循环所有登录用户并启动所有用户:
while true
do
# kill -9 each PID in `who -u`
done
另外,坏蛋将bash脚本配置为systemd,以便在启动或重新启动时自动启动。
现在,我想没有人可以远程登录了。
我的问题是,在不重新安装操作系统的情况下,是否有什么技术可以解决这个问题。
正在尝试编写ansible playbook以在计算机上安装snowsql。获取以下错误:
line 1: syntax error near unexpected token `newline'\n/bin/snowsql-1.2.0-linux_x86_64.bash: line 1: `<?xml version=\"1.0\" encoding=\"UTF-8\"?>'"
尝试手动运行snowsql-1.2.7-linux_x86_64.bash,但出现错误:
ec2-user@ip-xx-xx-xx-xx ~]$ b
我是linux中的新手,我正在尝试将路径赋值到一个变量中,如下所示
#! /bin/bash
path=/usr/local/driveworks/tools/capture
cd path
./video_exporter ///media/uuresin/SSD3/last_record/input.lraw ~/records/output.mp4
上面的bash文件会产生以下错误:
./trial.sh: line 5: cd: path: No such file or directory
./trial.sh: line 7: ./video_exporter: No suc
我的组织正在整个系统中使用Rundeck来执行简单的批处理作业。我们最初将其配置为在Linux上运行,以便在Linux、Solaris和Windows机器上执行作业。我们没有看到任何问题。
然而,我们最近被要求将Rundeck移动到Windows主机上。不幸的是,我无法让它在我的测试节点(Solaris)上运行一个简单的命令。每次尝试时,我都会收到以下错误:
Failed: IOFailure: [ssh-exec] Cannot run program "/bin/bash": CreateProcess error=2, The system cannot find the
我找不到任何参考资料来解释bash 3.2和4.2在函数参数处理方式上的差异,这可以解释下面的差异。我需要一些东西,归结到这个问题上,以在两个版本上工作相同,谁有解决方案,解释或参考?
$ bash --version | head -1
GNU bash, version 3.2.52(1)-release (x86_64-apple-darwin13)
$ foo() { echo "One: $1 Two: $2"; }
$ foo $(echo a b)
One: a b Two:
vs
$ bash --version | head -1
GNU bas
我试图在linux上用python3.6编写一个脚本,该脚本接受用户的输入(以URL的形式),然后对所提供的输入执行“whois”终端命令。我正试着把它从闲置中启动。我得到的最好的是:
import os
os.system("clear")
os.system("gnome-terminal -e 'bash -c \'")
w = ""
w = (input("Who is your target?" ))
os.system("whois " + w)
似乎在接受输入后,gnome终端没有打开
我正在编写一些使用javaps ( )的脚本。
大部分开发都是在linux上进行的,但现在我们需要通过GIT Bash切换到在Windows XP上运行它们,我得到了以下响应。
$ javaps
/c/Documents and Settings/xxxx/bin/javaps: must be executed on Linux system (found MINGW32_NT-5.1)
除了不切换到windows之外的任何想法。