오늘은 대한입니다.
sun's longitude:299 35 47.42 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
2159 번 글의 답장글: Re: 유저 이설 작업
글쓴이: 산이 [홈페이지] 글쓴날: 2004년 09월 06일 22:54:30 월(저녁) 조회: 1427

[이현철]님이 남기신 글:

>-----------------------------------------
>답변자가 기본적으로 참고할 내용입니다.
>- 배포판(옵션)    : 
>- 커널버전(옵션)
  : 
>- 데몬버전(예:apache
 1.3.27) : 
>- 데몬설치유형(RPM/컴파일/기타)
 : 
>-----------------------------------------
>기존에 있는 서버의 유저 어카운트와 shadow 화일을
가지고
>새로운 서버에 유저를 등록하려고 합니다..
>
>cat /etc/shadow
>##################################################
>test:$1$p5Zu7Kem$d2K7XDeWp5Qn41ZCctjyo.:12565:0:99999:7::
>testuser:H6.CGThArD.GE:12657:0:99999:7:::                         
iga-test:$1$xvI/cF/w$Jb/a82rLBq6VyZRMRtxES.:12663:0:99999:7:::
>##################################################
>
>만일 위와 같다면 위에 내용중에 유저id와 shadow를 
>파일로 뽑아 내려고 합니다.
>
>이것을 뽑아서 
>
>cat list.txt
>##################################################
>test:$1$p5Zu7Kem$d2K7XDeWp5Qn41ZCctjyo
>iga-test:$1$xvI/cF/w$Jb/a82rLBq6VyZRMRtxES
>##################################################
>이런씩으로 뽑을려고 합니다.
>어떤씩으로 하면 될지요?
>

shell> awk -F":" '{printf "%s:%s\n",$1,$2}' /etc/shadow | tee -a
new.pwd

이런식으로 하면 new.pwd 에 생성됩니다.

그러나 사용자를 추가할 경우는 이런 방법은 좋지 않습니다.

>그리고 위와같이 뽑은 파일을 새로운 서버에 자동으로 유저가
등록
>되도록할려고 합니다.
>
>chpasswd 를 이용해서 할려고하는데요.

>아래의 스크립트를 이용해서 위에 가져온 list.txt파일을
이용할수 없는지요.
>[root@oracle home]# vi add.sh
>############################
>#!/bin/bash
>useradd -g 1000 -c web -d /export/home/$1 -m -s /bin/bash -k /etc/skel
$1
>chmod 755 /export/home/$1
>mkdir /export/home/$1/html
>chown $1 /export/home/$1/html
>chgrp  customer /export/home/$1/html
>echo $1:$2 | chpasswd
>##############################
>
>
> 아니면 어디 좋은 방법을 좀 일러 주십시요...
>
>..좋은 하루되세요.. 

일단 사용자가 많다면 passwd shadow group gshadow
을 복사한 다음에 새로운 시스템에 그대로 추가(append)해 주면
됩니다.

예를 들어(passwd 파일인 경우)

 - 기존의 passwd 파일을 복사한 파일(이하 'A') :
   500 이하의 ID 는 무시하고 500 이상만 남도록 편집
 - 새로운 시스템의 passwd(이하 'B'):
   500 이하의 ID 만 남도록 하고 나머지는 모두 삭제

위와 같이 각각 편집한 다음에 A 파일을 B 서버로 옮겨놓고

sheel> cat A >> B

이런식으로 append 하면 됩니다.
나머지 shadow, group gshadow 도 마찬가지로,

그 다음 계정 홈디렉토리를 만들어 줘야 하는데
useradd 명령어로 만들어 주면 안됩니다. 이미 passwd 파일에 있기
때문에, 따라서 이런 경우는 shell 스크립트로 짜서 돌리면
됩니다.

만약 기존의 시스템 A 와 똑같은 홈디렉토리이면
 기존의 A passwd
파일에서 홈 디렉토리 이름을 뽑아서 mkdir 로 만들어 주고,
그렇지 않아면 아주 다른 새로운 홈디렉토리이면,
 apppend 된 passwd
파일을 일괄적으로 먼저 수정해줘야 합니다.

간단하게 하는 방법은

------------------
#!/bin/sh
IFS='
'

for line in `cat /etc/passwd` ; do
  ACCOUNT=`echo "$line" | awk -F ":" '{print $1}'`
  UID=`echo "$line" | awk -F ":" '{print $3}'`
  GID=`echo "$line" | awk -F ":" '{print $4}'`
  HOMEDIR=`echo "$line" | awk -F ":" '{print $6}'`

  if [ $UID -ge 500 ] ; then
      echo "account : $ACCOUNT , $UID:GID  $HOMEDIR"
  fi

done

------------------

위의 스크립트를 수정해서 사용해 보세요

 
이전글 : 유저 이설 작업
다음글 : Re: Re: 유저 이설 작업  
 from 61.254.75.29
JS(Redhands)Board 0.4 +@

유저 이설 작업 Re: Re: 유저 이설 작업
인쇄용 


apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.02(server) + (network) + (browser) seconds