분석 용으로 받은 프로젝트가 5년 전의 레거시인 탓에 ubuntu의 버전이 상당히 낮은 버전이었고,
14, 16 버전으로는 테스팅이 되었지만 18 버전 이후로는 테스트가 된적이 없었다.
현재 microsoft shop 을 통해 다운 받을 수 있는 우분투는 18 20 22 등이 쉬운 편인데,
그 밑으로 다운 그레이드는 생각보다 많은 시간이 소요될 것 같아 18 환경에서 돌려보기로 결정했고
프로젝트 분석을 하던 와중에... 예기치 못한 문제에 마주치게 되었다.
>>> /etc/sudoers: syntax error near line 30 <<<
sudo: parse error in /etc/sudoers near line 30
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
이 문제가 정말 사람 골때리게 만든다...
이 문제를 아직 close 하지는 못했지만 wsl로 설치한 우분투이기에 윈도우에서 root에 접속해서 비밀번호를 바꾸고
su
이 명령을 사용해서 작업할 수 있게 만들어서 작업은 진행할 수 있었다.
처음엔 다중 리눅스 운영 체제 환경 속에서 default만 수정 되는 줄 알았는데 다음의 명령어를 치니 18.04 LTS에 접근할 수 있었다.
wsl -d Ubuntu-18.04
// 윈도우의 cmd에서 실행, 설치된 ubuntu의 18.04 환경으로 진입합니다.
여기까지 왔다면 다음에 올 명령들은 간단하다.
sudo -i
// 루트 권한으로 실행 중인 셀을 시작하기 위한 명령어
// 루트 권한으로 접속
passwd
// 비밀번호를 바꿉니다.
pkexec visudo 명령으로도
etc/sudoers 를 다시 수정할 수 없는 문제를 close 하지는 못했지만, 이 방식으로
스크립트에서 실행될 mkdir 이 문제 없어지니 컴파일 및 실행도 문제 없이 잘 되었다.
chmod 777로 sudoers의 권한을 바꿔버렸을 경우 pkexec visudo 명령으로도 해결되지 않을 때의 해결법은
close하는대로 추가 포스팅할 예정입니다.
'코딩이야기 > Linux' 카테고리의 다른 글
가상서버에 ssl 수동으로 적용하기 (cafe24 가상서버 호스팅에서 수동으로 ssl 연동하기) (0) | 2025.03.27 |
---|---|
[Linux] Ubuntu 오픈소스 리눅스 배포판 입문 (0) | 2023.03.14 |