メールユーザー一括登録 注意点2012年10月25日 17時30分

関連 http://sakanade.asablo.jp/blog/2008/07/01/  
    http://sakanade.asablo.jp/blog/2008/07/03/3607821


1.既存のサーバーの受信済みメールを移行するために、USBメモリを用意する。USBメモリは「ext3」でフォーマットする。FAT形式では、「/Maildir/cur」ディレクトリにあるファイル名が長すぎてバックアップできない。

「cp: cannot create regular file `/mnt/usb/Maildir/cur/**********************.2,S': Invalid argument」

 というエラーがでる。

 fdisk /dev/sdb1 で「d」で削除、「n」で作成(プライマリp1)、「w」で書込み、「p」で確認。
 mkfs.ext3 /dev/sdb1 でフォーマット
 (*再度「fdisk -l」で確認しても表示はFATのままだが、普通にEXT3として使える)


2.サーバーのデータ「/home/ユーザー名/Maildir」はアクセス権を維持したままバックアップ

  cp -rp /home /mnt/usb/

3.Windows上で作るユーザーリストは2つ必要

 list1.txt  アカウント名1:ユーザーID1 
        アカウント名2:ユーザーID2 

 list2.txt  アカウント名1:パスワード1 
       アカウント名2:パスワード2 

  という形にする。
 ユーザーIDは新旧サーバーで一致させないと、データを移行したときに
 正しくアクセス権が反映されない。



4.Windows で作成したリストは2つともlinux上で改行コードを変更

  dos2unix ファイル名

5.ユーザーを一括で取り込むシェルスクリプト

for line in `cat list1.txt`

do

user=`echo $line |cut -d: -f1`
id=`echo $line |cut -d: -f2`

/usr/sbin/useradd -g mailuser -u $id -s /sbin/nologin $user
echo $user 
echo $id

/usr/sbin/setquota $user 20480 20480 0 0 -a

done

/usr/sbin/chpasswd < list2.txt

6.「2」でバックアップしたデータを新しいサーバーにコピー

  cp -rp /mnt/usb/* /home/

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
↓に「sakanade」と入力してください。

コメント:

トラックバック