こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

SFTP/FTPで受信するファイルのパーミッションについて

Radhat Linux7.1 でFTP/SFTPでファイルを受信時のファイルパーミッションを設定したく、umaskを.bash_profileに設定したのですが駄目でした。どのようにすれば良いのでしょうか。
御存知の方御教示下さい。

投稿日時 - 2001-11-07 11:40:52

QNo.164513

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

recursive:回帰的、再帰的とかの意味です。
一つのことが終われば、また戻ってくる。ぐるぐると処理をするといいうことで、コンピュータの世界では、よく使用される言葉だと思いますよ。

投稿日時 - 2001-11-09 16:55:16

補足

有難う御座います。
以下のコマンドで試しました。
chmod -R --recursive 777 *.xml
しかし
bash: /bin/chmod: Argument list too long
のエラーが出ました。
1つ上のディレクトリ配下で
chmod -R --recursive 777 該当ディレクトリ名
とやったらうまくいきました。
ワイルドカードを使用するとやはり駄目なようです。
とりあえずディレクトリ配下の全てのファイルのバーミッションを変更しようと思います。

投稿日時 - 2001-11-09 17:36:24

ANo.2

うむ、10,000ものファイルのパーミッションを変えたい。本当に全部一斉に変えてもいいのですか?

# chmod -R --recursive XXX *.*

ファイルを再帰的に変更します。ワイルドカードも使用可能なはずです。
XXXは、パーミッションの8進の値です。

まず、数個で試してから、自己責任で残りを変更してください。

投稿日時 - 2001-11-09 15:38:28

補足

有難う御座います。
chmod -R --recursive XXX *.*
とありますが、--recursiveとは何でしょうか
申し訳有りませんが教えて頂けませんか。

投稿日時 - 2001-11-09 16:25:26

ANo.1

Secure ftpでは確認していませんが、
.bash_profile
に、umask 011(ディフォルトは、umask 022です。)
をセットして、ファイルをgetすると、以下のようになります。

元ファイル:-rw-r--r-- (umask 022でput)
getしたファイル:-rw-rw-rw- (umask 011でget)

ご存知とは思いますが、おさらいです。
ディレクトリの場合は、777-022=755 (8進数の引き算)
ファイルの場合は、666-022=644(8進数の引き算)

なを、umaskを設定したあとは、ログインをしなおすか、source /~.bash_profileで、システムに反映されます。

投稿日時 - 2001-11-09 10:43:50

お礼

有難う御座います。
getはOkですが。
相手からputされ場合が駄目です。
相手側からsftpでファイルをputしchmodでパーミッションを変更できる事は分ったのですが、これだと相手任せになってしまいます。
また、自分でchmodでパーミッションを変更する場合にファイル数が10000位ある為、ワイルドカードを使用してchmodよりパーミッションを変更しようとするとchmodがエラーとなってしまいます。
何か方法は無いものでしょうか。

投稿日時 - 2001-11-09 12:51:12

あなたにオススメの質問