CentOS 6.8 서버에 GNOME을 설치했고 Windows에서 NOMACHINE NX 소프트웨어를 통해 로그인했습니다. 로그인할 때 일반 사용자와 비밀번호를 사용했는데도 루트입니다. 나는 루트가되고 싶지 않습니다. 이 동작을 얻으려면 Linux 구성을 일부 변경해야 했습니다. 나는 항상 암호를 묻는 것에 지쳤기 때문에 이전에 "admin", "root" 및 "wheel"과 같은 그룹에 내 사용자를 추가했다는 것을 알고 있습니다. sudoers를 편집하고 주석 처리를 해제했습니다.
%wheel ALL=(ALL) NOPASSWD: ALL
그러나 어느 시점에서 나는 더 이상 내 사용자가 아니며 내 자격 증명을 사용하여 로그인했지만 항상 루트라는 것을 깨달았습니다. 이제 일반 사용자로 되돌리려고 하는데 되돌릴 수 없습니다.
나는 sudoers에게 응답했습니다. 내 sudoers.d가 비어 있습니다. 사용자 그룹을 제외한 모든 그룹을 사용자에서 제거했습니다. SSH를 통해 시도했고 sudo su
다음을 얻었습니다.
user is not in the sudoers file. This incident will be reported.
일반 사용자로 그놈에 로그인하기 위해 또 무엇을 할 수 있는지 모르겠습니다.
요청된 정보:
grep myuser /etc/passwd
myuser:x:502:502::/home/myuser:/bin/bash
정보 요청 2:
grep 루트/etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
# .bash_config 파일
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
# .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
# /etc/bashrc
# System wide functions and aliases
# Environment stuff goes in /etc/profile
# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.
# are we an interactive shell?
if [ "$PS1" ]; then
if [ -z "$PROMPT_COMMAND" ]; then
case $TERM in
xterm*)
if [ -e /etc/sysconfig/bash-prompt-xterm ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm
else
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi
;;
screen)
if [ -e /etc/sysconfig/bash-prompt-screen ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
fi
;;
*)
[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prompt-default
;;
esac
fi
# Turn on checkwinsize
shopt -s checkwinsize
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
# You might want to have e.g. tty in prompt (e.g. more virtual machines)
# and console windows
# If you want to do so, just add e.g.
# if [ "$PS1" ]; then
# PS1="[\u@\h:\l \W]\\$ "
# fi
# to your custom modification shell script in /etc/profile.d/ directory
fi
if ! shopt -q login_shell ; then # We're not a login shell
# Need to redefine pathmunge, it get's undefined at the end of /etc/profile
pathmunge () {
case ":${PATH}:" in
*:"$1":*)
;;
*)
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
esac
}
# By default, we want umask to get set. This sets it for non-login shell.
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
umask 002
else
umask 022
fi
# Only display echos from profile.d scripts if we are no login shell
# and interactive - otherwise just process them to set envvars
for i in /etc/profile.d/*.sh; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. "$i"
else
. "$i" >/dev/null 2>&1
fi
fi
done
unset i
unset pathmunge
fi
# vim:ts=4:sw=4
답변1
이는 Linux와 관련이 없으며 NoMachine 서버 구성, 특히 다음과 같이 설정한 경우 server.cfg 파일입니다.
CreateDisplay 1
DisplayOwner root
GNOME의 루트 권한을 얻으려면 다음을 참조하십시오.https://www.nomachine.com/TR04N06814&tn=DisplayOwner
아무래도 내가 직접 변경한 내용을 잊어버린 것 같습니다...