PassThru運用

ファイル受け渡し用としてのftp運用。

・昔は、フロッピーでファイルを受け渡ししていた。

・今は、ネットワーク接続されている状況が当たり前となった。

・USBメモリも良いが、フロアが離れていたり、東京-大阪など距離があるときにネットワークは便利。

・ネットワーク上のフォルダは、すぐに満杯になってしまうので、定期的に削除して運用する。

 

■サーバで共有サービスを開始する

サーバ側で、FTP、WebDAV、SMB等のファイル共有のサービスを提供する。

(例)公開ディレクトリ: /export/home/foo/PassThru/

 

■サーバ運用のためのスクリプトを用意する

一週間に一度、以下のスクリプトを実行する。 

・バックアップをとる。(ユーザが、とっても大切なファイルを受け取り忘れたときのために)

・ファイルを削除して、フォルダ内を空っぽにして月曜日を迎える。

#!/bin/sh

# 先週のバックアップを削除する。
rm /export/home/foo/PassThru.tar


# バックアップを実行する。
cd /export/home/foo
tar cfp - PassThru > /export/home/foo/PassThru.tar

 
# 第二階層のファイルを削除する。(Solaris用のコマンド)
find /export/home/foo/PassThru/*/* -print | xargs -i rm -rf {}

# 第一階層のファイルを削除する。(削除する必要があれば)
find /export/home/foo/PassThru/* -type f -print | xargs -i rm -f {}


# ファイルを削除する。(Solaris用のコマンド。別バージョン)
#find /export/home/foo/PassThru/*/ -type d -print | xargs -i rm -rf {}*
#find /export/home/foo/PassThru/*/* -name "*" -exec rm -rf {} ¥;
 
# ファイルを削除する。(Solarisではなく、Macをサーバにしているとき)

#find /Shared¥ Items/Public/PassThru/*/* -name "*" -print > delete_files.txt
#/usr/bin/xargs rm -rf {}


# END

 

定期的に実行するためにcronに追加する。
#  minute (0-59),
#  hour (0-23),
#  day of the month (1-31),
#  month of the year (1-12),
#  day of the week (0-6 with 0=Sunday).

55 7 * * 1 /export/home/dtp/Scripts/delete_passthru.sh > /dev/null 2>&1 

 

 

■クライアントからファイル共有を利用する

Macの場合、ファインダーから、

メニューバー > 移動 > サーバへ接続…

ftp://FTPサーバ名

smb://SMBサーバ名

http://WebDAVサーバ名

で接続する。

 

 

■メンテナンス用として1台のクライアントMacを設定する

サーバをWindowsのSMBファイル共有で運用している場合、サーバ上でメンテナンス用のシェルスクリプトを走らせる方法がよく分からないので手元のMacでその役割りを果たしてもらう。

クライアントのある1台をメンテナンス用として利用する。

役割として、

・定期的に接続する。

・定期的にお掃除をする。

・定期的にファイルを削除する。(Mac独特の._から始まる隠しファイルを削除する)

crontabに以下を登録する。

4 9 * * 1-5 /bin/mkdir -m 777 /Volumes/PassThru
5 9 * * 1-5 /sbin/mount_smbfs //ユーザ名:パスワード@サーバ名/PassThru 
/Volumes/PassThru > /dev/null 2>&1
7 9 * * 1 /usr/bin/find /Volumes/PassThru/*/* -name "*" -exec rm -rf {} \;
0,10,20,30,40,50 * * * * /usr/bin/find /Volumes/PassThru/ -name "._*" -exec rm -rf {} \;