我的服务器运行 Centos 7。每次我用每个用户登录(远程或本地)时,我都会收到错误。如果我以 root 身份登录,我会得到
-bash: /root/.bashrc: Permission denied
如果我以普通用户身份登录,我会得到
-bash: /home/normal_user/.bashrc: Permission denied
.bashrc 的权限是
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
而它的内容是
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
无法弄清楚发生了什么事。另外,一切都按预期进行。
编辑:@terdon
[root@dmbi-va ~]# grep -F .bashrc /root/.profile /root/.bash_profile /root/.bash_login /etc/profile /etc/bashrc
grep: /root/.profile: No such file or directory
/root/.bash_profile:if [ -f ~/.bashrc ]; then
/root/.bash_profile: . ~/.bashrc
grep: /root/.bash_login: No such file or directory
@roaima @ikkachu
[root@dmbi-va ~]# ls -Zld /etc /etc/bashrc .bashrc
-rw-r--r--. 1 system_u:object_r:admin_home_t:s0 root root 176 Dec 29 2013 .bashrc
drwxr-xr-x. 139 system_u:object_r:etc_t:s0 root root 8192 Jun 21 09:37 /etc
-rw-r--r--. 1 system_u:object_r:etc_t:s0 root root 2835 Aug 12 2015 /etc/bashrc
答案1
我也遇到了类似的问题,bash: 404: command not found
登录后就解决了。
长话短说,这是因为几天前,我在安装时犯了一个错字docker 撰写:
- 安装命令之一是
curl -L https://[...long URL...] -o /etc/bash_completion.d/docker-compose
- 该命令下载一些 bash 完成规则并将它们存储到 中
/etc/bash_completion.d/docker-compose
,该规则在 Bash 启动时自动包含在内,方法是读取/etc/bash_completion.d/*
- 由于我在该部分中输入错误
[...long URL...]
,因此我请求了一个不存在的 URL 以及任何内容卷曲收到一条404 not found
错误消息,最终变成/etc/bash_completion.d/docker-compose
- 之后,每当我登录时,
/etc/bash_completion.d/docker-compose
都会被获取,并尝试诸如逻辑上之类的“命令”,从而404 not found
导致bash: 404: command not found
错误。