visudo와 vi /etc/sudoers 차이가 있나요?

yschoinet의 이미지

사용자가 root권한 사용하고 싶다고 해서 visudo로 root권한 추가를 해 줬습니다.
=======================================
visudo

(대문자시작)아이디 ALL=(ALL) NOPASSWD : ALL
=======================================
위와 같이 추가해 저장을 하면 아래와 같이 Warning 메시지가 뜹니다
(참고로 아래 메시지 뜨고 난후 일반계정 후 root로 전환 잘 되더라구요)

visudo: Warning: Runas_Alias `SOME_USER' referenced but not defined

구글링을 해보니 대문자라서 그렇다고 해서 소문자로 하니 위 메시지는 안 나옵니다

첫번째 질문인데요

1. 정말 대문자라서 warning 메시지가 뜬 건가요?

그리고 vi /etc/sudoers로 위와 같이 대문자시작 아이디로 하니 특별한 메시지 없이 저장 됐습니다 .

2. visudo 와 vi /etc/sudoers가 동일한 명령인 줄 알았는데..다른가요?

당연한 건 줄 알았는데..혹시 아시는 분들 답변 좀 부탁드립니다.

감사합니다.

세벌의 이미지

https://www.sudo.ws/man/1.8.17/visudo.man.html
visudo 쓰는 게 더 안전하다네요.

김정균의 이미지

다릅니다. "vi /etc/sudoers" 는 말 그대로 vi 로 /etc/sudoers 를 편집 하는 것이고, visudo 는 /etc/sudoers 파일을 관리를 하기 위한 application 입니다.

일단, /etc/sudoers 의 기본 파일 퍼미션은 440 입니다. 즉 쓰기 권한이 없기 때문에 그냥 vi 로 편집을 하려면 퍼미션을 변경해 주거나 저장할 때 강제 옵션(!)을 사용해야 합니다.

visudo 는 이 문제를 해결해 주며, 저장 시에 설정의 정합성 및 syntax 체크를 해 줍니다.

visudo: Warning: Runas_Alias `SOME_USER' referenced but not defined

의 의미는 SOME_USER 가 없다는 얘기죠. linux 는 대소문자 구분을 하기 때문에 user 와 USER는 서도 다른 account 가 됩니다.

dontdieych의 이미지

visudo는 사실 vi/vim하고 관련 없습니다.

현재 EDITOR 환경 변수에 설정된 에디터/프로그램으로 sudoers 파일을 열어서 편집할 수 있게 해주더군요.

짧은 지식이지만 sudoers 파일 변경하려면 무조건 visudo 써야 합니다. 직접 파일 편집은 인정 안하는 걸로.

dontdieych의 이미지

아마 vi가 폭발적으로 많이 쓰이기 시작한 시기에 너무도 당연히 에디터는 vi이니까 그 명령어 이름을 visudo로 짓지 않았나 싶네요.

추측 입니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.