루트 사용자로 전환하지만 동일한 디렉토리에있는 방법


10

최근 Ubuntu로 전환했으며 다음 명령을 사용하여 루트 사용자로 전환 할 때 한 가지 사항을 관찰했습니다.

sudo su - root

루트의 집 ( /root)으로 직접 이동 하므로 파일 시스템 (이 명령을 실행 한 디렉토리)에서 내 자리를 잃어 버립니다. 현재 디렉토리를 잃지 않고 루트로 전환하는 방법이 있습니까?

답변:


16

우선을 사용하지 마십시오 sudo su. 그것은 잘못이 아니거나 위험하거나 아무것도 아닙니다 . 단순하고 무의미 합니다. 하나의 작업을 쉽게 처리하기 위해 두 개의 별도 프로그램을 실행하고 있습니다. 셸을 루트로 시작하려면 sudo할 수 있습니다.

로그인 셸을 시작하려면 ( sudo su -)을 사용하십시오 sudo -i. 그러나 로그인 쉘을 시작하므로 기본적으로 루트의 홈 디렉토리로 이동합니다.

비 로그인 일반 셸을 시작하려면을 사용할 수 있습니다 sudo -s. 그러면 루트 쉘이 시작되고 루트 디렉토리에서 실행됩니다.

terdon@tpad ~ $ pwd
/home/terdon
terdon@tpad ~ $ sudo -i  ## changes directory
[root@tpad ~]# pwd
/root
[root@tpad ~]# logout
terdon@tpad ~ $ sudo -s  ## doesn't change directory
[root@tpad terdon]# pwd
/home/terdon

따라서 루트 쉘을 시작하고 동일한 디렉토리에 머무르는 방법은 sudo -s입니다.


1
문제는 sudo -s로그인 쉘이 아니기 때문에 대상 사용자의 프로필을 실행하지 않는 것일 수 있습니다 . 따라서 실제 질문은 sudo디렉토리를 변경하지 않고 로 로그인 쉘을 얻는 방법이 있는지 여부 입니다. 아마 아닙니다.
— Barmar

@Barmar 아니오,하지만 sudo -i않습니다. -sOP가 로그인 쉘을 원하지 않기 때문에 사용했습니다 (로 이동하고 싶지 않았습니다 $HOME). 로그인 쉘을 원하면을 사용하십시오 sudo -i. 나는의 환경의 비교를 게시 한 sudo -i, su -, sudo -s그리고 su내 질문에 여기 당신이 모습을 갖고 싶어.
— terdon

방금이 명령 sudo -s에 대해 매우 나쁜 경험을했습니다. 심지어 디렉토리를 변경하지는 않지만 전체 루트 액세스 권한을 부여하지 않았습니다. 내 파일 중 일부가 디렉토리에 있지만이 방법으로 일반 사용자 및 루트 사용자로 볼 수 없습니다 (sudo -s). 그런 다음 이전 방법 (sudo su-root)을 사용하여 디렉토리로 이동하면 파일이 나에게 표시됩니다. sudo -s가 왜 액세스를 제한 했습니까?
— Hammad Hassan

@HammadHassan 당신이 묘사 할 수있는 방법은 없습니다. 다른 일이 일어나고 있어야합니다. 파일을 "볼 수 없음"이란 무엇입니까? " 파일 을 읽을 수 없음"을 의미 합니까? 암호화를 사용하고 있습니까?
— terdon

"볼 수 없음"은 간단한 명령 "ls"를 의미합니다. 내 파일을 보여주지 않았습니다. 전혀 암호화가 없습니다. 내 파일은 간단합니다. 그리고 이것은 실제로 일어난 일입니다.
— Hammad Hassan

8

이것은 매우 간단합니다. 그냥 입력

sudo su

대신에

sudo su - root

루트와 같은 폴더에 유지됩니다.


9
이것은 잘못된 것이 아니며 작동한다는 의미이지만 사용하는 sudo su것이 의미가 없습니다. 그게 다야 sudo -s. 왜 그렇게 많은 Ubuntu 튜토리얼이 제안하는지 이해하지 못했습니다 sudo su.
— terdon

@terdon 나는 그것을 이해하지 못했지만 모든 Linux 사용자에게 널리 퍼져있는 것 같습니다. 어쩌면 Alliteration이 더 기억에 남을 수도 있습니다.
— Barmar

@Barmar는 개인적으로 우분투 세계에서만 보았습니다. 대부분의 Linux 시스템에는 기본적으로 일반 루트 계정이 있으므로 쉘이 필요할 때 su(단독, no sudo)해야합니다. 그러나 우분투는 기본적으로 루트 계정을 비활성화하기 때문에 sudo su자연스럽게왔다. 또한,되어 분명히 , 유닉스 세계의 일부 코너의 경우도 있지만, 리눅스, 난 단지 우분투에서 그것을 보았다.
— terdon

@terdon 나는 수십 년 동안 그것을 보았으며, 우리가 어떤 분포를 사용하고 있는지조차 확실하지 않습니다. 우리는 현재 회사에서 데비안을 사용하고 동료들이 사용합니다.
— Barmar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.