• ベストアンサー

/etc/bashrc について

CentOSを使っています。 /etc/bashrcは、シェルが立ち上がったときに読み込まれるもの、という認識なのですが、もしこの中にメールを送信するコマンドを書いておけば、サーバにログインされた時のアラートメールの設定をしたことになるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.1

bashは、ログインシェルとして起動された時、/etc/profile の内容を実行し、そのあと ~/.bash_profile(か ~/.bash_login か ~/.profile)を実行します。普通のLinuxのデフォルト設定だと~/.bash_profile から ~/.bashrcを呼び出しているようです。さらに、~/.bashrcから/etc/bashrcを呼び出しているようです。 ログインシェルではない対話シェルとして起動された時、~/.bashrc の内容を実行します。普通のLinuxのデフォルト設定だと、~/.bashrcから/etc/bashrcを呼び出しているようです。 ということが理解出来れば、それを利用してメールコマンドを埋め込むのもいいかと思います。 「ログインシェルがbashであるユーザがログインした時にメールを出したい」が目的なら、/etc/profile に書くんでしょうね。

関連するQ&A

  • linuxでaliasをbashrcに記載してsh

    linuxでaliasをbashrc(bashrcでなくともログイン時に読み込まれるprofile)に記載してあるコマンドを設定したいのですが、これが上手くいきません。 やりたいことは、bashrcで設定したコマンド内容をshスクリプトで実行したいのですが、これはどうやれば出来るのでしょうか? 以下に.bashrcの内容とshスクリプトの内容を記載します。 .bashrcの内容 # .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi alias log='tail -f /var/log/messages' test01.shの内容 #! /bin/bash log 実行すると ./test01.sh: line 2: log: command not found となってしまいます。 ちなみに、shの中ではなく、ログイン後にコマンド(log)だけプロンプトに打つとちゃんとtail -f /var/log/messagesの内容が出力されます。 shの作りが悪いのでしょうか? どなたかご教授いただけますとありがたいです。 osはlinux redhat5.4です。 どうぞよろしくお願いいたします。

  • .bashrcの設定が反映されない

    rootでログインした際に、プロンプトが[-bash-3.2#]になってしまうので インストール時の設定に戻す方法を教えてください。 HDDを追加し、/homeにマウントしたらその辺の設定が全部消えてしまったようです。 ほかのユーザは一度削除して、再度作成したところ元に戻りました。 ちなみにログイン後、 cd /root source .bashrc で正常になるのですが、exit後再度ログインすると [-bash-3.2#]に戻ってしまいます。 echo $PS1 とすると \s-\v\$ と表示されます。 /root の中の.bash_profileと.bashrcの内容は正常に表示される他のユーザと同じです。 原因や直し方が分かる方宜しくお願いします。

  • アクセス権の設定

    Debian/GNUのSargeを使用しています。 ファイルタイプがext3で使用しています。 ログインシェルでbashを使用していますので~/.bashrcでumaskの設定を 0007設定しているのですが作成したファイルは755のアクセス権になってしまいます。 /etc/fstabでも設定できるようですが見つかったサイトはどこもFATかNTFSだったのでログインシェルで設定しています。 お分かりになる方がいらっしゃいましたらご教授願います。

  • 【CentOS7】/etc/hostsは直接入力?

    CentOS7で /etc/hostsは直接手入力しかできないですか? /etc/resolv.conf などは、tuiコマンドから編集できます。 直接設定ファイルをエディットしても結果同じかもしれませんが、 CentOS7は、直接エディットしたファイルが書き戻る場合もありますので、極力直接設定ファイルをエディットしないと決めました。 /etc/hostsに関しては直接手入力しかできないですか?

  • Linuxにおけるパーミッションに関して

    Linux(Redhat)に関して質問します。 /etc/passwdファイルの第7フィールド(ログインシェル指定の箇所)にて /sbin/nologin指定をしているアカウントに関して、このアカウントで作成 されるディレクトリもしくはファイルのデフォルトでのパーミッションは、 どのようになりますでしょうか? 例えば、第7フィールドに/bin/bashの指定があり、/etc/bashrcにumask の値を設定していれば、ログイン時に/etc/bashrcが読み込まれumask の値によってパーミッションが決定されると思いますが、/sbin/nologin 指定をしているアカウントに関しては、umaskの値が有効になるのか どうか質問している次第です。

  • sendmailコマンドでの送信についてよろしくお願いいたします。

    sendmailコマンドでの送信についてよろしくお願いいたします。 現在、次の環境にてメールサーバーの作成をしています。 OS   [CentOS 5] メール [postfix] このような、メールサーバの作成(転送設定)で、Thunderbirdといわ れます、メールソフトからのメールの送信は可能になったのですが、 sendmailコマンドでの送信が出来なくて困っています。 よろしければ、原因や問題を、教えて頂けましたらと思っています。 よろしくお願いいたします。 (現在の状況では次のようになっております。) ・メールサーバーには、(main.cf)ファイルに、 relayhost = [SMTPサーバー] を記述して、転送の設定をしています。 ・また、  smtp_sasl_password_maps = hash:/etc/postfix/isp_account  の記述と、(isp_account)ファイルの中には、  [SMTPサーバー]:25 ユーザー名:パスワード  の作成をしています。 ※telnet localhost 25 で入りましての送信は行えています。

  • メールサーバーの運用の質問です。

    centOS5でメールサーバーpostfix dovecotを動かしています。 centOS5のサーバーないの端末からコマンドで、 mail hoge@hoge.localに送信すると hogeユーザーでログインしmailコマンドでメールを見ることができるようにまでなったのですが、 他のWindowsPCのThunderbirdにそのcentOS5でメールサーバーのアカウント設定を行い 受信しようとするとアカウントが見つかりませんでした と表示されます Thunderbirdだとうまくいかないのかと思い 他のメールソフトnPOPでやってみたところ レスポンスが解析できませんでした。 -ERR Cannot connect to POP server 192.168.xxx.xxx (192.168.xxx.xxx),NB connect errot 1460 と表示され受信することができませんでした。 これは考えられる原因は何でしょうか? よろしくお願いします

  • sendmailのアクセス制限がうまくいきません。

    Centos5.2(VirtualPC上)とsendmail8.13、dovecotを使ってメールサーバを構築しようとしています。 以下のようなコマンドでアクセス制限をためして、Centos自身からしか メールを送れなくしたつもりでいます。 ですがOutlookExpress(WindowsXP実機 IPアドレス 172.16.12セグメント)からCentosサーバ上のアカウントにメールが送信できて OutlookExpressで受信できてしまいます。 どこが間違っていますでしょうか。 ご教授願えませんでしょうか。 [root@centos53 mail]# cat /etc/mail/access localhost.localdomain RELAY localhost RELAY 127.0.0.1 RELAY #172.16.12 RELAY [root@centos53 mail]# makemap -v hash /etc/mail/access.db </etc/mail/access key=`localhost.localdomain', val=`RELAY' key=`localhost', val=`RELAY' key=`127.0.0.1', val=`RELAY'

  • /etc/group ファイルについて

    はじめまして。 現在、RHEL5.5でサーバを構築しているのですが、 権限の設定に付きましてご教授ください。 現在、同じ構成のサーバを2台構築しており、 インストール時に"admin"というユーザを作成している状態です。 ある程度サーバの設定を行なった後、/etc/passwdや/etc/group ファイルを確認したところ、以下のような状態になっておりました。 ---------------------- SV1#cat /etc/group admin:!!:501: SV2#cat /etc/group admin:x:500: --------------------- "/etc/group"の二番目のカラムが"!!"となっており なぜこのようになったのか分かりません。 ログが残っているわけでは有りませんが、構築当初は どちらも"admin"のgidは500だったと記憶しております。 また、二番目のカラムの意味を調べましたが"x"に関する事については パスワードが暗号化されている等の説明がありましたが、"!!"については 特に明記されている情報を見つけられることが出来ませんでした。 ※adminユーザのログイン等に問題はございません。 尚、gidを合わせる為に設定を変更したいと思っているのですが 単純にファイル内容を"admin:!!:501:"を"admin:x:500:"へ変更して "find / -gid 501 -exec chgrp admin {} \;"コマンドを実行して 強引に権限をあわせようと考えております。 上記問題につきまして、何か情報をお持ちの方 教授の程お願い致します。

  • bashの設定ファイル

    起動順番がハッキリしないので質問させていただきます。bashの設定ファイルの起動順番として下記の順番が正しいでしょうか?Fedora3です。 1./etc/bashrc(システム全体用)<---起動時に実行 2.~/.bashrc(各ユーザー用)<---起動時 3./etc/profile(システム全体用)<---ログイン時 4.~/.bash_profile(各ユーザー用) <---ログイン時 ご存知の方よろしくお願いします。