RHEL 5.1 이상에서는 기본적으로 잡을 수 있는 최대 파티션의 크기가 16T로 확장이 되어 있다.

RHEL 버전에 따른 최대 파티션의 크기는 아래와 같다.

  • RHEL 4 단일 EXT3 파티션의 크기 8TB
  • RHEL 5의 경우 RHEL4와 동일
  • RHEL 5.1 단일 EXT3 파티션의 크기 16TB
먼저 시스템에 OS를 설치 한 뒤 디스크가 정상적으로 시스템에 인식이 되는지 확인 한다.

보통의 경우 fdisk -l을 하면은 확인이 가능하며 SAN을 사용하는 경우에는 경우에 따라 multipath를 사용하는 경우가 있는데 이 경우 multipath를 구성해야된다.(EMC의 경우 PowerPath, IBM의경우 RDAC, 기본적으로 없는 경우 RedHat의 multipathd)

디스크가 정상적으로 인식이 되었다면은 fdisk /dev/sdb 로 디스크 파티셔닝을 한다.
디스크를 파티셔닝 할때 파티션 타입은 8e(Linux LVM)을 선택해서 LVM으로 설정을 합니다.

일반적으로 1T이상은 fdisk로 파티셔닝을 할 수 없고 parted로 파티셔닝을 해야되기 때문에 LVM을 이용하여 설정을 합니다.

전체적인 설정은 아래와 같다.

A.    pvcreate /dev/sd{b,c,d,e,f,g,h,i,j,k}1

B.     vgcreate VolGroup01/dev/sd{b,c,d,e,f,g,h,i,j,k}1

C.     lvcreate –L 15.9T –n contentsVolGroup01

D.    vgdisplay Logical Volume 할당 확인

E.     lvcreate –l vgdisplay로 확인한 PE개수 –n contents_bak VolGroup01

F.     mkfs.ext3 –b 4096 –F/dev/mapper/VolGroup01-content

G.    mkfs.ext3/dev/mapper/VolGroup01-content_bak


mkfs.ext3로 ext3 파티션 만들때 block size는 4096으로 해야 16T에서 성능이 좋다는 이야기를 들어서 그렇게 포맷했는데 기역이 가물가물하다.
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
Linux에서 파일을 암/복호화 해야되는 필요가 발생할 수 있다.
Windows의 경우 자체적으로는 안되고 3rd-Party Application을 이용하여 파일 암/복호화를 할 수 있는데 Linux의 경우 자체적으로 들어 있는 OpenSSL을 이용하여 암/복호화를 할 수 있다.

알겠지만 OpenSSL은 SSL을 구현한 프로그램으로 대부분의 암/복호화를 해야되는 곳에 사용할 수 있다.

  • OpenSSL을 이용한 암호화 방법
    OpenSSL을 이용하여 파일을 암호화 하는 방법는 아래와 같다.

    $ openssl des3 -salt -in test.txt -out encrypt.txt
    enter des-ede3-cbc encryption password:
    Verifying - enter des-ede3-cbc encryption password:
    위와 같이 openssl을 실행하면은 des3 암호화 알고리즘을 이용하여 암호화를 진행합니다.

    암호화 알고리즘에는 여러가지가 있는데 AES랑 DES3를 많이 사용하는 걸로 알고 있습니다.

    -in에 암호화 하려는 파일 이름 -out에 암호화된 파일 이름을 입력하고 암호화 키 password를 입력하면은 됩니다.

    아시겠지만 이 password를 분실하시면은 복호화가 안됩니다.
  • OpenSSL을 이용한 복호화 방법
    이번에는 복호화를 하는 경우입니다.

    $ openssl des3 -d -salt -in encrypt.txt -out test.txt
    enter des-ede3-cbc decryption password:
    복호화의 방법은 기본적으로 암호화때의 옵션이랑 같으며 -d 옵션만 추가 하면은 됩니다.
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
RHEL 4 이상에서는 기본적으로 내부에서만 메일을 발송할 수 있게 설정이 되어 있다.

서비스를 위해 Sendmail을 사용하는 경우 /etc/mail/sendmail.mc 파일에 아래 부분을 수정해야된다.

  • 변경전
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
  • 변경후
DAEMON_OPTIONS('Port=smtp,Addr=0.0.0.0,Name=MTA')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
위와 같이 변경하고 m4 sendmail.mc > sendmail.cf 명령으로 작업하면은 외부에서도 메일 서비스를 이용할 수 이다.

밑에 2줄인 TRUST_AUTH_MECH와 define('confAUTH_MECHANISMS' 이것은 활성화 안하는 경우 유동 IP에서 메일 발송이 안될 수 있다.
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
최근에 출시되는 리눅스 베포판의 경우 기본 FTPD로 vsftpd를 사용하는 경우가 많다 그러나 RHEL WS나 Desktop 버전 처럼 FTPD 패키지가 없는 경우 혹은 기본 vsftpd가 이상동작하는 경우(이런 경우가 있겠냐고 말하겠지만 있다. 오늘 경험했다 --;) xinetd아래 있는 gssftp를 사용할 수 있다.

gssftp는 xinetd 하위로 동작하는 데몬이기 때문에 반드시 xinetd를 설치해야된다.

안하고 안된다고 나한테 뭐라고 그러시면은 난감하다...

서비스 활성화 방법은 레드헷 기반으로 만들어진 배포판(레드헷 엔터프라이즈  리눅스, 수세 리눅스)등은 아래의 명령으로 서비스 활성화를 할 수 있다.

  • chkconfig gssftp on
그러나 다른 리눅스 배포판(데비안 리눅스)의 경우에는 /etc/xinetd.d나 혹은 xinetd 서비스 설정 디렉토리에 gssftp를 수정해야 된다.

  • /etc/xinetd.d/gssftp(RHEL 기준) 에디터로 오픈
    disable = yes에서 disable = no 로 변경
이렇게 작업을 한 뒤 xinetd 데몬을 리스타트 해줘야 적용이 가능하다.

위와 같이 작업한 뒤 FTP를 접속해서 로그인을 하면은 로그인이 안된다.(뭐니 --;)

기본적으로 로그인이 안되도록 설정이 되어 있는데 이를 해제하는 방법은 아래와 같다.

  • /etc/xinetd.d/gssftp(RHEL 기준)
    server_args   = -l -a 부분을 server_args = -l 로 수정 저장
그럼 이만



저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
가끔 시스템을 이전하다가 보면은 예전에 EUC-KR 인코딩으로 작성한 문서들을 UTF-8로 이전해야되는 경우가 있다.

이럴때 쓰면은 유용한 스크립트다.

find . -type f -name "*.html" -or -name "*.php" -or -name "*.inc" | while read srcfile; do
    cp ${srcfile} ${srcfile}.bak
    iconv -c -f euc-kr -t utf-8 ${srcfile}.bak > ${srcfile}
    rm ${srcfile}.bak
done
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey

작업 취소


현재 편집중이라면 키보드의 Esc키를 눌러 명령 모드로 들어가서,
소문자 u 를 누르면 방금 했던 작업이 취소됩니다.
다시 편집을 계속하기 위해서는 i 키를 누릅니다.


현재 줄에서 수정한 내용만 취소


현재 편집중이라면 키보드의 Esc키를 눌러 명령 모드로 들어가서,
대문자 U 를 누르면, 현재 커서가 위치하고 있는 줄에서 했던 모든 작업만 취소됩니다. 현재 줄에서 아무리 복잡한 작업을 해도 원상태로 쉽게 돌아갑니다.


취소를 취소하기 (Redo)


위의 u 키로 취소했지만 마음이 바뀌어서, 취소하기 전으로 돌아가고 싶을 때는
Ctrl+R 키를 누릅니다.
뭔가를 취소(Undo)했을 때에만 Redo가 작동합니다. 취소한 적이 한번도 없다면, 취소에 대한 취소도 작동하지 않습니다.
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
TAG tip, vi
일반적으로 모니터링을 할때 사용하는 명령어로 vmstat나 iostat, sar같은 툴이 있지만 top을 사용하는 경우도 많을 것이다.

그러나 top의 경우 다른 명령어와는 다르게 명령어의 결과를 파일로 저장할 방법이 없다는 것이 단점일 것이다.

그러나 top명령어의 옵션 중에서 -b 옵션을 이용해서 손쉽게 파일로 top 결과를 저장할 수 있다.

top -b -n5 -d5 > file명
위와 같이 입력을 하면은 기술한 file을 덱스트 에디터로 열어 보면은 top 결과를 볼 수가 있다.

옵션을 설명하면은 -b는 배치모드로 프로그램을 실행하는 옵션이고

-n은 수행 횟수, -d는 수행 시간(초)이다.

위의 명령의 경우 5초간 5번을 배치모드로 수행하라는 의미이다
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
TAG tip

 parted를 이용하여 partition을 잡아보자.
/dev/sdb 가 3.5TB의 device로 잡혀 있다고 하자. 물론 Disk Contoller가 2TB 이상을 지원해야한다. Disk Contoller가 2TB이상 지원하지
못하면 이문서는 전혀 소용없는 문서이다.

parted /dev/sdb

 >> label을 만들자
(parted) mklabel gpt

 >> 확인
(parted) print                                                           
Disk geometry for /dev/sdb: 0kB - 3701GB
Disk label type: gpt
Number  Start   End     Size    File system  Name                  Flags

 >> partition을 primary로 3701GB full로 잡자.
(parted) mkpart primary 0 3701GB
 
 >> 확인
(parted) print                                                           
Disk geometry for /dev/sdb: 0kB - 3701GB
Disk label type: gpt
Number  Start   End     Size    File system  Name                  Flags
1       17kB    3701GB  3701GB                                    
(parted) quit                                                            
Information: Don't forget to update /etc/fstab, if necessary.            
 
metfarme:/data # fdisk -l
Disk /dev/sdb: 3700.5 GB, 3700551582208 bytes
255 heads, 63 sectors/track, 449899 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1      267350  2147483647+  ee  EFI GPT

이렇게 파티션이 잡힌것을 확인 할수가 있다.

그럼 포멧을 하자.

mkfs.ext3 /dev/sda1

  >> mount point를 만들자
mkdir /volume01

 >> mount하자
mount /dev/sda1 /volume01


* 원문출처 : http://www.eblove.com/rgboard/view.php?&bbs_id=web1004i01&doc_num=194
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey

screen 사용방법

OS/Linux 2007/10/05 11:09
screen은 한 접속 터미널을 통해 다수의 가상 터미널을 공유해서 사용합니다.

screen을 생성하기 위해서는 아래와 같이 screen -S 스크린이름 을 합니다.

$ screen -S myscreen

명령어를 입력하면은 기존에 프롬프트가 나올것입니다.
여기서 ls 합니다.
이제 Ctrl+a c 를 누릅니다. 다시 Ctrl+a a 를 누릅니다.

screen내에서 명령어는 Ctrl+a 로 시작합니다. 다시 Ctrl+a a
누르면 이전 창으로 변경됩니다.

이제 Ctrl+a d를 눌러보세요. 이 상태를 screen이 detach되었다고 합니다.
이제 컴맨드라인에서 screen -list 라고 쳐보세요.

mysession 이라는 이름의 screen 목록이 있을 겁니다.
이 screen을 다시 사용할 수 있는데 컴맨드라인에서 screen -r myses 라고
쳐보세요. detach 전 상태로 딱 붙어 있을 겁니다.

다음은 screen내에 몇개의 창이 있는지 보는겁니다.
Ctrl+a w 라고 쳐보세요. 맨 밑줄에 잠시동안 0*$bash 1-$ bash 이라는
표시가 나올겁니다. 사용하는 셀에 따라 bash는 다른걸로 표시될 수 있습니다.
만약 xterm을 사용하거나 root 인 경우 좀 틀릴 수 있습니다.
xterm인 경우 title 바에 잠시 나타나고 사라집니다.

창간에 이동할때는 Ctrl+a 0~9 으로 이동할 수 있습니다. 창이 2개만 있거나
자주 쓰는 2개 사이만 이동할때는 Ctrl+a a 를 이용하면 편리합니다.

screen을 쓰면 작업도중 logout해도 편합니다. screen을 죽이지 않고 접속만
끝으면 자동으로 screen은 detach된 상태이고 다시 로긴해서 attach하면
됩니다.

새창을 또 띄울때는 Ctrl+a c 를 누르면 됩니다. 한 screen에서 너무 많이 창을
뛰우면 관리상 좀 불편하더군요. 상태바를 두고 간단하게 이름을 붙여서 사용할
수도 있습니다.

Ctrl+a c : screen에서 새창 띄우기
Ctrl+a a : 바로 전 창으로
Ctrl+a 0 : 0번째 창으로
Ctrl+a 1 : 1번째 창으로
Ctrl+a 9 : 10번째 창으로
Ctrl+a d : screen 때어내기

screen이 실행될때 읽어 들이는 rc 파일이 있습니다.
$HOME/.screenrc 파일이 그것입니다.

대부분은 .screenrc 가 디폴트로 잘 설정되어 있을 겁니다.
일단 이 파일이 있다면 열어서 아래와 같이 해당 라인을 찾아 수정합니다.


defhstatus "<^En-^Et> ^EW [^EM/^Ed(^ED) ^Ec]"
hardstatus lastline

defscrollback 1000

defhstatus 는 hardstatus 을 어떻게 표시할까를 나타내는겁니다.
^En 은 현재 창번호를 ^Et는 현재 창 타이틀을 표시합니다.
^EW 는 나머지 창들에 대해서 표시합니다.
(버전에 따라 다르게 동작할 수 있습니다!)

그 다음 hardstatus lastline은 hardstatus를 화면상의 맨 아래에
표시하게 합니다. 창이 여려개 일때 편리하죠.

defscrollback은 screen의 개별 창마나 scroll 사이즈를 몇 라인으로
할것인지를 정하는 겁니다. scrollback을 좀 길게 사용하는 이유는 출력내용을
살펴 볼때 유용합니다. 터미널 자체의 스크롤백을 사용할 수도 있으나 창을
왔다갔다하면 좀 불편하고 어디것이 어떤 차의 것인지 분간이 잘 안가죠.
이때 해당 창의 스크롤백을 사용하면 편리합니다.

스크롤백화면으로 이동하는건 간단합니다. Ctrl+a [을 누르면 screen
의 copy mode로 변환 됩니다. copy mode에서 이동할땐 vi의 이동키를
그대로 사용할 수 있습니다. 빠져나올땐 Esc Esc로 빠져나올 수 있습니다.

copy mode는 copy & paste할때 주로 사용하는것인데요. copy mode 상태
에서 spacebar을 눌러 복사할 시작점을 선택하고 끝지점에서 다시
spacebar을 누르면 그당 블럭이 screen 내부 버퍼를 복사됩니다.
복사된 버퍼값을 다시 쓰고자 할때는 Ctrl+a ]을 눌려 주면 됩니다.
만약 쉘 컴맨드상에 있다면 셀 컴맨드로 이게 복사될 것이고 vim에서 에디팅
중일 경우 입력으로 들어 가겠죠.

사용하다 특정 창에서 실행중인 프로그램이 말썽을 일으켜 동작하지 않을
때가 있습니다. 저같은경우 디버깅하다 디버가까지 같이 먹어버리는 경우가
종종 있습니다. 이때 해당 창을 죽이는 명령이 있는데 Ctrl+a K
현재 활성화된 창을 강제로 죽이는 경우 입니다. 뭐 다른 창으로 이동해서
ps -el 한다음은 해당 프로세스를 죽여도 상관없지만요.

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey
TAG screen

sudo 사용방법

OS/Linux 2007/09/19 09:39
사용목적 : 관리자(root)가 특정 사용자(특정 그룹)에게 특정 명령(명령그룹)을 root계정으로 실행할 수 있는 권한부여

작동 원리 : sudo명령어 다음에 사용하고자 하는 명령어를 입력하면, sudo유틸리티는 구성파일인 /etc/sudoers 파일내에 현재 호스트에서 그 명령어를 사용하는 것이 허가 되어 있는지를 확인한뒤, 허가 되어 있으면 패스워드를 입력하여 사용하도록 함.

한번 sudo명령어를 사용하면 5분간동안 허용된 명령어를 사용할수 있는 권한이 부여되고, 다시 sudo명령어를 사용할때마다 그 시간은 갱신된다. 만약 시간이 지나면 다시 패스워드를 입력해야함.


예) sudo shutdown -g 5 -i 0 -y

* sudo명령어 옵션

-l : 사용자에게 허용됐거나 금지된 명령어 목록을 출력

-v : 사용자의 타임스탬프 필드를 확인한 뒤 timeout시간을 늘린다.
sudo를 사용하면 로그인 패스워드를 입력한 순간부터 타이머가 시작된다.
타이머가 만료되면 그 다음부터 sudo를 사용할 때는 동작을 멈추게 함

-k : 타임스탬프를 죽임. 즉 sudo타이머 동작을 멈추게 함

-b : sudo가 명령을 백그라운드로 실행하도록 함
permit

* 구성파일 : /etc/sudoers

1. 유저, 호스트, 커멘드를 정의 가능.

2. 유저, 호스트, 커멘드의 엘리어스도 지정 가능

3. 구조

user host=commads

user : 로그인 id나 엘리어스 네임
host : hostname, 엘리어스 호스트네임
commads : 콤마로 구분되어지는 명령어 리스트


참고. host네임필드는 한개의 sudo구성파일로 엔터프라이지 혹은 분산환경에

존재하는 모든 호스트를 지원하기 위한 방법으로, 단 각 host에 sudo 유틸리티가 설치되어 있어야함

주. 명령어의 풀패스가 구성파일에 꼭 정의되어 있어야한다. 이것은 트로잔 목마를 막는데 도움이 됨.


예)

1. root ALL=(ALL) ALL

루트유저가 모든 호스트 상에서 모든 명령어를 사용 가능

2. bob hostA=/usr/sbin/shutdown

밥이라는 유저가 호스트A 상에서 shutdown명령어를 사용 가능



* Aliases

예1)유저, 호스트, 명령어를 엘리어스로 정의하는 방법

Cmnd_Alias DOWN=/usr/sbin/shutdown,/usr/sbin/reboot
Host_Alias WORKSTATIONS=hostA,hostB
User_Alias ADMIN=alice,bob


alice ALL=/usr/sbin/init
bob penguin=DOWN
ADMIN ALL=DOWN


예2) 와일트카드가 적용이 됨

Cmnd_Alias USERADMIN=/usr/sbin/user*, !/usr/sbin/userdel
Cmnd_Alias PASSWD=/usr/sbin/passwd [A-Z]*

alice ALL=USERADMIN
ADMIN ALL=PASSWD


* Defaults

많은 수의 구성가능한 목록을 위한 기본값

#sudo -L -> default목록 확인

예)

Defaults secure_path=/bin:/usr/bin:/usr/sbin:/usr/local/bin

sudo명령어에 의해서 사용될수 있는 path값을 설정
이것은 유저들이 보안되지 않은 패스를 설정하는 것을 막고 사용할수 있는 명령어를
콘트롤 하는 것을 허용

Defaults:ADMIN !lecture

ADMIN 엘리어스 사용자들이 sudo명령어를 사용했을때 표준경고 배너가 안보여지도록 함.

Defaults:alice !authenticate

alice에게는 패스워드를 요구하지 않음


Defaults timestamp_timeout=0

sudo 명령어를 사용할때마다 패스워드를 입력


* Logging sudo activity

1. 기본적으로 선 프리웨어 패키지에서는 sudo유틸리티를 위해서 logging을 정의하고 있지 않음

2. syslog daemon을 설정해서 로깅이 가능하도록 할수 있음

3. sudoers 파일내에 엔트리를 추가함으로써 가능하도록 할수 있음



방법1

- sudoers파일내 syslogd

Defaults syslog=auth

-> sudo 로그인이 성공하면 notice, 실패하면 alert가 플래그됨


- /etc/syslog.conf 엔트리에 로긴실패를 추가

auth.alert /var/adm/auth.log


방법2

Defaults logfile=/var/adm/sudo.log
Defaults:ADMIN !logfile

-> ADMIN내 유저를 제외한 모든 사용자에게 logging을 적용


참고. sudo log정보는 sudo를 실행한 일시, 권한이 있었는지 아닌지,
사용했던 커맨드 라인등이 기록됨

또한, 인증되지 않은 유저가 sudo명령어를 사용할려고 시도시 기본적으로 root유저에게
이메일이 보내진다.



* sudo 유틸리니의 장단점

1. 한개의 구성파일에 간단한 문법으로 설정하기 때문에 사용하기 편하지만

한파일에 모든 설정이 가능하므로 달리보면 복잡성을 유발할수도 있다.

2. 이기종환경에서 작업하는 관리자들에게 sudo유틸리티의 이식성때문에 매력적임





*****************************************************************

테스트


1. [root@solaris203.nuxshool.org:/usr/local/sbin]#visudo

29 Defaults syslog=auth
30
31 Cmnd_Alias PWD=/usr/bin/passwd [A-Z0-9a-z]*, !/usr/bin/passwd root
32 Cmnd_Alias USERMOD=/usr/sbin/usermod,PWD
33 Cmnd_Alias USERADD=/usr/sbin/useradd
34
35 User_Alias ADMIN=wish
36 User_Alias USERADMIN=kim
37
38 ADMIN ALL=USERMOD,USERADD
39 USERADMIN ALL=USERMOD

상기 값들을 추가한다.


2. [root@solaris203.nuxshool.org:/etc]vi syslog.conf

24 mail.debug ifdef(`LOGHOST', /var/log/syslog, @loghost)
25
26 auth.crit;auth.notice;auth.info /var/adm/sc300log -> 추가
27 #


3. 구성요소 테스트


wish로 로그인후 테스트

$ pwd
/usr/local/bin
$ sudo -l
User wish may run the following commands on this host:
(root) /usr/sbin/usermod, PWD
(root) /usr/sbin/useradd

$ /usr/sbin/useradd
UX: /usr/sbin/useradd: ERROR: Permission denied.

$ sudo useradd -u 5004 -g 10 -d /export/home/sudotest -m -s /bin/ksh sudotest
Nov 22 00:10:10 solaris203.nuxshool.org sudo: [ID 702911 auth.alert] wish : command not allowed ; TTY=pts/3 ; PWD=/usr/local/bin ; USER=root ; COMMAND=useradd -u 5004 -g 10 -d /export/home/sudotest -m -s /bin/ksh sudotest
sudo: useradd: command not found

$ sudo useradd
Nov 22 00:10:24 solaris203.nuxshool.org sudo: [ID 702911 auth.alert] wish : command not allowed ; TTY=pts/3 ; PWD=/usr/local/bin ; USER=root ; COMMAND=useradd
sudo: useradd: command not found


$ sudo /usr/sbin/useradd -u 5004 -g 10 -d /export/home/sudotest -m -s /bin/ksh sudotest
64 blocks
$ sudo passwd sudotest
New Password:
Re-enter new Password:
passwd: password successfully changed for sudotest
$


참고! 콘쉘의 엘리어스 기능을 사용해서 타이핑 수를 줄일수 있음

가령

alias usermod='sudo /usr/sbin/usermod'



-----------------------------
/etc/sudoers 파일을 열어서

root=ALL(ALL) ALL
아래에 추가 해준다.

사용자ID=권한줄파일, 권한줄파일, 권한줄파일

wowpc=ALL(ALL) ALL

출처 : http://blog.wowpc.net/15
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rey