• ベストアンサー

トレースファイルの削除スクリプト

entreeの回答

  • entree
  • ベストアンサー率55% (405/735)
回答No.2

Oracleもしくはrootユーザで実行する。セキュリティ的にもこれで全然OKだと思いますが。。 それ以外の方法としては以下が考えられますが・・・。  1. setuid (oracle) を行うラッパを書いて配置する  2. diag/rdbms配下にアクセスできるようにパーミッションを変更する 1 はsetuidを使用するためセキュリティ的にあまり望ましくないでしょう。 2 は削除するユーザを oinstall にしてディレクトリをg+wするわけですが、 削除するユーザに oinstall 権限を付与するためセキュリティ的にあまり 望ましくないでしょう。

devid
質問者

お礼

有難う御座います。やはりoracleユーザーで検討してみます。

関連するQ&A

  • シェルスクリプトでファイル削除したい

    シェルスクリプト初心者です 今回、Linuxサーバ側にある複数のファイルを削除する 必要が出てきました このため、シェルスクリプトを書いて複数(2000程度) のファイルを削除しようとして試験をしています 試験のLinuxサーバ側の/root の中にfile1,file2・・・ 等々を置いています そこに次のようなスクリプトを記載して ファイルが置かれている場所と同じ/rootに置いて実行させるのですが ************** スクリプト ******** #!/bin/sh echo "start" # # rm F1010002.JPG rm F1010003.JPG rm F1010004.JPG echo "end" ****************************** 下記のようなエラーが出ます ****************************************** start rm: cannot lstat `F1010002.JPG\r': そのようなファイルやディレクトリはありません rm: cannot lstat `F1010003.JPG\r': そのようなファイルやディレクトリはありません rm: cannot lstat `F1010004.JPG\r': そのようなファイルやディレクトリはありません end ****************************************** サーバ側にSSHで入って、 # rm F1010002.JPG とひとつひとつ打鍵していくとファイルは削除されます スクリプトの間違い等あるのでしょうか 教えていただければ幸いです なお、ファイル数2000件程度のスクリプトを記載する方法は 別のソフトを利用して作成できるので・・・その件はいいのですが・・・

  • SQLトレースファイルについて( Oracle )

    SQL文の実行時間を計測するため以下のような作業をしております。 (1)現在のセッションのみSQLトレースを適用  alter session set sql_trace=true; (2)現在のセッションのみCPU時間や経過時間を取得  alter session set timed_statistics=true; (3)計測したいSQL文を実行する。 (4)SQLトレースを止める。  alter session set sql_trace=false; 上記、手順にて、UNIXサーバのudumpディレクトリ配下に以前までは、ora_xxx.trcというファイルが生成されていたのですが、その.trcファイルを削除し、新たにトレースをしようとしたところ、ファイルが生成されなくなってしまいました。この状況の回避策をご教示頂きたくお願いします

  • linux権限について

    CentOS5系を使用しています。 あるディレクトリ(下記のような権限を持つディレクトリ) の配下でのみrootと同様の権限を持つユーザを作成したいと思っています。 drwxr-xr-x 15 root root ディレクトリ名⇒Hoge グループの権限はrwxにしても良いと考えていますが、 useraddで新規ユーザを作成して usermod -Gでrootグループにユーザを追加してしまうと そのユーザは他のディレクトリでもrootと同様の権限を持てることとなってしまいます。 あくまでHogeディレクトリ配下でのみrootユーザと同様の権限を持たせたいと思っています。 どなたか知恵をお貸しください。

  • VBScriptで削除処理

    初めまして。 VBScriptを今回初めて使用しながらスクリプトを作成しようとしています。 〔質問〕 以下のような削除処理をVBScriptにて実施したいのですが、どのような構文を書けばいいのでしょうか? ご教授お願いします。 以下、例を挙げ記述致します。 (例)処理日が2008/3/22の場合。 「AAAA」ディレクトリ配下の以下のログファイルを二日前までの日付になっているログファイルのみ残し、あとは全て削除するという処理をしたい。 AAAAディレクトリの配下 ・aa080319.log→削除 ・aa080320.log→削除 ・aa080321.log→残す ・aa080322.log→残す 上記例を用いますが、自分で考えた処理フローとしまして、 (1)「AAAA」ディレクトリ配下のファイル一覧をテキストファイルに書き込む。 (2)「(1)」で作成したテキストファイルを読み込み、「2008322」と「2008321」に一致しないログファイルを削除。 以上、宜しくお願いします。

  • シェルスクリプトでファイルの解凍と削除の繰り返し

    皆様、宜しくお願いいたします。 シェルスクリプト初心者です。 今回、負荷テストを実施するにあたり、NFSでマウントしたディレクトリで10_Recommeded.zipファイルの解凍し、解凍してできたファイルを削除をする動作を複数回 or 一週間繰り返したいと考えております。そこで、シェルスクリプト作成したいのですが、作成に大変悩んでいます。どうかご教授いただけますでしょうか。

  • ディレクトリを削除するシェルスクリプト

    Linuxにて、あるディレクトリ内の子ディレクトリの作成日が1ヶ月以上前のものを削除するシェルスクリプトを作成したく思っております。 対象のディレクトリには名前の一部に作成日(YYYYMMDD)を付与していますのでそれを利用してどうにかできないかと考えております。ただ実際にどう実現すればいいか分からず困っています。何か良い案がある方がいらっしゃればご教授願いたく思っております。 OS:REDHAT Enterprise Server4(カーネル:2.6.9-67)

  • ローカルユーザー削除スクリプト作成(VBScript)

    ローカルユーザー削除スクリプト作成(VBScript) 先日、ネットワーク上のWindowsXPに、任意の管理者権限付きユーザーをVBScriptを用いて作成しました。(スクリプトは自身で作成しました) 本日、このユーザーは必要なくなったので、削除するスクリプトを作成しようとしましたが、うまく動かないのでご教授いただければ幸いです。 スクリプトを下記に記します。 スクリプトのユーザー作成部分です。うまく動いてくれました。 Set objComputer = GetObject("WinNT://" & strComputer & ",Computer") Set objNewUser = objComputer.Create("user", strUserName ) Set objAdminGroup = GetObject("WinNT://" & strComputer & "/Administrators,group") *strComputerは、ネットワーク上のPC名。strUserNameは、任意のユーザー名です。 スクリプトのユーザー削除部分です。 Set objComputer = GetObject("WinNT://" & strComputer & ",Computer") Set objNewUser = objComputer.Delete("user", strUserName ) *strComputerは、ネットワーク上のPC名。strUserNameは、任意のユーザー名です。 ユーザー作成の情報は、数多く見つけたのですが、削除の方法は見つけることは出来なかったです。ですので、objComputer.Delete("user", strUserName )この辺は自身の推測で記述しました。 作成がこの記述なら、削除はこんな感じかなって思いまして…。 情報でもよろしいので、ご教授お願いします。

  • 複数のsqlファイルを実行するスクリプト

    シェルスクリプトで特定のディレクトリ配下にあるsqlファイルを実行したいのですが、 どのようにすればいいのでしょうか? 今まではsqlファイルが決まっていた為、明示的にファイルを指定出来たのですが、ファイル名が固定でなくなった 為、悩んでいます。 以前は以下のような形で行っていました。 ----------------------------------------- #!/bin/sh #sqlplusでDB接続 sqlplus /nolog <<EOF conn USER (パスワード入力) #ユーザ確認 show user #sql実行 @/home/hoge/sql_01 @/home/hoge/sql_02 @/home/hoge/sql_03 commit; exit EOF ---------------------------------- ここでsql実行したいファイルの特定のディレクトリ配下にある全てのsqlファイル にして実行するようにしたいです。 もし、分かる方いれば教えてください。 よろしくお願いします。

  • 誤って/home配下を削除してしまいました;;

    CentOS5.0で/home/hogehoge配下にMaildir/とMaildir /とういうディレクトリがあったので、Maildir /を削除しようと思い以下のコマンドを実行しました。 [root@111 ~]# cd /home/hogehoge [root@111 hogehoge]# rm -rf Maildir / 後日hogehogeユーザでログインしたところ, -bash: dircolors: command not found -bash: /usr/bin/id: No such file or directory -bash: [: =: unary operator expected -bash: /sbin/consoletype: そのようなファイルやディレクトリはありません 確認してみると/home配下が全て削除されてしまっていました。 rootユーザでのコマンドもパスが通っていないようでだいぶ使えないコマンドがあります。 色々試すも復旧にいたっていません。 お分かりなる方、復旧方法を教えてください。 よろしくお願いします。

  • Oracle10gのUTL_FILEについて

    Win2000 Oracle10gにて、 PL/SQLのUTL_FILEパッケージを使用して、 TEXTファイルを操作しようとしています。 ところが、FOPEN時、 ORA-29280: 無効なディレクトリ・パスです。 となってしまいます。 Oracleのsysユーザにて、 ディレクトリオブジェクトを作成し、 READ,WRITE権限をPUBLICに与えました。 これで出来そうなのですが…。 なぜにできないのでしょうか? どなたか解決方法をご存知ではないですか・