Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

루트 사용자의 홈 디렉토리가 /root를 가리킴 – 빠른 Linux 수정

cd 또는 cd ~를 입력하면 홈 디렉토리가 있는 것으로 보이는 /home 디렉토리 내부의 항목 대신 /root로 이동하는 오류를 발견했을 수 있습니다. 이 오류가 발생한다면 Linux에서 슈퍼유저로 작업할 때마다 이 오류를 발견했을 것입니다. 실제로는 전혀 오류가 아니기 때문에 수정하는 것은 매우 간단합니다.

오히려 이는 Linux가 홈 디렉토리 배치를 처리하는 방식의 특이성으로 인해 발생합니다. 예상되는 동작이지만 이전에 본 적이 없다면 여전히 매우 혼란스러울 수 있습니다.

터미널에서 cd 또는 cd ~ 명령을 입력하면 Linux 디렉터리 계층 구조의 어디에 있든 홈 디렉터리로 돌아갑니다. 이는 별도의 파티션에 있거나 완전히 다른 외부 파일 구조에 있는 경우에도 마찬가지입니다. 디렉토리를 올라가는 동안 위치를 잃어버린 경우 간단히 cd를 입력하면 터미널을 여는 순간 시작했을 가능성이 높은 곳으로 바로 이동합니다.

Linux에서 루트 사용자의 홈 디렉터리는 일부 선택 배포판에서 /home/root이지만 일반적으로 파일 구조 시작 부분의 최상위 수준에 있는 /root에 위치하는 것을 볼 수 있습니다. 구성 가능하지만 이는 대다수 Linux 배포판의 상황입니다. cd /root 명령을 입력해 보세요. 터미널에서 일반 사용자로. 슈퍼유저의 홈 디렉터리이기 때문에 "bash:cd /root:Permission failed"라는 오류 메시지가 표시됩니다.

이제 이 작업을 완료했으므로 gksu x-terminal-emulator를 입력하여 그래픽 루트 터미널 창을 엽니다. 터미널에서. 관리자 비밀번호를 묻는 메시지가 표시됩니다. 이는 완전히 승격된 명령 프롬프트를 인스턴스화하기 때문입니다.

많은 Linux 배포판, 특히 Ubuntu 기반 배포판에서는 루트 사용자 이름을 해시 처리하므로 해당 사용자로 로그인할 수 없습니다. Ubuntu 또는 다른 유사한 배포판에서 이런 종류의 오류가 발생하는 경우 이 명령을 사용하면 이 해시 시스템에 대해 걱정하지 않고 루트로 로그인할 수 있습니다. 어쨌든, 이렇게 하면 지금까지 작업했던 터미널 창이 아닌 별도의 터미널 창이 열립니다.

bash 프롬프트가 나타나면 바로 whoami; 명령을 입력하세요. CD; 비밀번호 그리고 엔터키를 누르세요. 먼저 로그인한 사람이 누구인지 식별한 다음 현재 사용자의 홈 디렉터리로 변경합니다. 루트 사용자로 로그인했으며 해당 사용자의 홈 디렉터리는 /home/root가 아니라 /root 자체임을 알 수 있습니다. Linux 배포판에서는 일부 사람들이 전체 /home 디렉토리를 최상위 / 마운트 지점과 별도의 파티션에 설치하기를 원하기 때문에 이렇게 합니다.

루트 창 사용이 모두 완료되면 exit를 입력하고 싶을 것입니다. 당신은 아직 루트 사용자이기 때문에 이 창에서 나가려면 명령을 실행하세요.

/home 디렉토리 구조가 다른 디스크에 설치되어 있고 물리적으로 실패한 경우, 다른 곳에 /root가 있으면 최소한 복구 목적을 위해 슈퍼 사용자로 시스템을 부팅할 수 있는 기능을 잃지 않게 됩니다. 대부분의 배포판에서는 서로 다른 일반 사용자의 디렉터리를 서로 읽을 수 있도록 만듭니다. 그들에게는 각각 755개의 Unix 권한이 부여됩니다. /root 디렉토리는 700개의 권한을 가지고 있기 때문에 특별합니다. 즉, 루트 슈퍼유저만이 이 디렉토리에서 읽을 수 있다는 의미입니다.

~ 기호가 표시되면 이는 위치에 관계없이 쉘이 사용자의 홈 디렉토리를 나타내는 데 사용하는 대체 기능이므로 위와 유사하거나 동일한 출력을 얻는 한 수정할 오류가 없습니다. 때때로 이 기호의 문자 그대로 이름이자 동일한 의미를 갖는 물결표라는 용어를 접하게 될 수도 있습니다.

저자 소개

루트 사용자의 홈 디렉토리가 /root를 가리킴 – 빠른 Linux 수정

케빈 애로우

Kevin Arrows는 10년 이상의 업계 경험을 보유한 경험이 풍부하고 지식이 풍부한 기술 전문가입니다. 그는 MCTS(Microsoft Certified Technology Specialist) 인증을 보유하고 있으며 최신 기술 개발에 대한 최신 정보를 얻으려는 깊은 열정을 가지고 있습니다. Kevin은 소프트웨어 개발, 사이버 보안, 클라우드 컴퓨팅과 같은 분야에서 자신의 전문 지식과 지식을 보여주면서 광범위한 기술 관련 주제에 대해 광범위하게 글을 썼습니다. 기술 분야에 대한 그의 공헌은 동료들로부터 널리 인정받고 존경받고 있으며, 복잡한 기술 개념을 명확하고 간결하게 설명하는 능력으로 높은 평가를 받고 있습니다.