rootユーザでファイル操作ができない?復旧方法や手がかりを教えてください

このQ&Aのポイント
  • linux-2.2.20でrootユーザがファイルの操作に制限を受けるパーミッションエラーが発生しています。この状態はセキュリティーが甘くHackされた結果です。
  • rootユーザでできないファイル操作はrm、mv、chown、chmodを含みます。復旧する方法または手がかりを教えてください。
  • rc.sysinitファイルのパーミッションを確認し、適切な権限を設定することで復旧できる可能性があります。rc.sysinitファイルの詳細はstatコマンドで確認できます。
回答を見る
  • ベストアンサー

rootでファイル操作ができないのですが

linux-2.2.20にてrootユーザでファイルの操作(rm,mv,chown,chmod)ができないの(パーミションエラー)ですが、復旧する方法もしくは手がかりを教えて下さい。 =>セキュリティーが甘くHackされたためこのような状態になりました。 #stat rc.sysinit File: "rc.sysinit" Size: 14512 Filetype: Regular File Mode: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Device: 3,2 Inode: 80455 Links: 1 Access: Fri Feb 8 08:28:49 2002(00000.00:20:51) Modify: Fri Feb 8 04:32:11 2002(00000.04:17:29) Change: Fri Feb 8 04:32:29 2002(00000.04:17:11) #

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

  • ベストアンサー
  • onosuke
  • ベストアンサー率67% (310/456)
回答No.1

(rm,mv,chown,chmod)のコマンドが置換されているのかもしれませんし,大本のライブラリが置換されている可能性もあります。バックアップとの差分を測らなければ,正確なところはわかりません。 別のシステムにディスクを繋ぐ,CD-ROMやFDのみでブートするLinuxを使うなどして,バックアップからの修復を試みましょう。この修復にはいくつもの手法がありますから,勉強がてら,少し調べてみると面白いですよ。 バックアップがなければ,現在のディスク内容を別媒体に写し,Linuxの再インストール。その別媒体から,データのみサルベージを行うのが良いと思います。

piyo_love
質問者

お礼

回答ありがとうございます。 再インストールの決心がつきました。

関連するQ&A

  • unable to change to sudoers gid: Operation not permitted

    apache権限で動くApacheサーバにて、root権限でadduserなどをしたくて、 /path/to/useradd.plを用意し、ファイルのオーナーはroot、パーミッションを755とします。 /etc/sudoersに apache ALL = (ALL) NOPASSWD:/path/to/useradd.pl を追加します。 で、perl-CGIより my $ret = `sudo ./useradd.pl xxxxxxxx 2>&1`; のように呼び出しているのですが、タイトルの通りのエラーが出てしまいます。 OSはCentOS5で、一時は動作していたのですが、再起動したらエラーが出るようになってしまいました。 useradd.plの中でやっていることは、systemコマンドで useradd username su username -c 'mkdir /foo' su username -c 'chmod /foo' chown -R username.username /foo/bar などをしています。 sudoers gidに変更できない、というエラーは、どのようなケースで起きるのでしょうか。もしヒントでもおわかりになる方がいらっしゃいましたら是非教えてください。 よろしくお願いいたします。

  • ext4形式パーティションフォーマット後の使用容量

    ext4形式のパーティションをフォーマット後、まだ何もファイルを置いていないのに約200MBほど容量が消費されているのはなぜでしょうか? [root@server ~]# tune2fs -l /dev/sda2 tune2fs 1.41.12 (17-May-2010) Filesystem volume name: <none> Last mounted on: <not available> Filesystem UUID: 85f4fa72-0564-4579-b827-4f72e2793222 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 30531584 Block count: 122095360 Reserved block count: 0 Free blocks: 120128458 Free inodes: 30531573 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 994 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Flex block group size: 16 Filesystem created: Thu Jan 30 13:57:48 2014 Last mount time: Thu Jan 30 14:05:05 2014 Last write time: Thu Jan 30 14:12:44 2014 Mount count: 1 Maximum mount count: -1 Last checked: Thu Jan 30 13:57:48 2014 Check interval: 0 (<none>) Lifetime writes: 7589 MB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 Default directory hash: half_md4 Directory Hash Seed: a4a1afe9-4072-4249-9afc-ea4dda7fc87a Journal backup: inode blocks [root@server ~]# du /media/85f4fa72-0564-4579-b827-4f72e2793222/ 4 /media/85f4fa72-0564-4579-b827-4f72e2793222/ [root@server ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_blvh0-lv_root 134176040 128575100 5498540 96% / tmpfs 8165016 372 8164644 1% /dev/shm /dev/cciss/c0d0p1 495844 102530 367714 22% /boot /dev/sda1 480715452 63027088 417637168 14% /media/b2868681-be05-43e7-abba-6f09b11deee9 /dev/sda2 480716496 202648 480513848 1% /media/85f4fa72-0564-4579-b827-4f72e2793222 宜しくお願い致します。

  • CGI作成ファイル所有者をEveryone等にしたい(Windows)

    CGI作成ファイル所有者をEveryone等にしたい(Windows) Windows XP SP2パソコン上で、ブラウザで自分のマシン上のファイルを閲覧したりプログラムを起動・制御しようと、Apache/2.2.4(Win32)でローカルにhttpdを立ち上げています。 ブラウザ表示文書からCGIとして呼び出されたPerl(ActivePerl 5.005_03)プログラムで、system関数からcygwinのcpコマンドを呼び出して、NTFSフォーマットされたCドライブ上で、ファイルAを新しく(既存の上書きでも同じ)ファイルBにコピーしました。 system("c:/cygwin/bin/cp -uf '$fr_file' '$to_file'"); という感じで、正常復帰してきます。 ところが、コピー先ファイルは、その所有者がSYSTEMになってできてしまいます。 こうなると、AdministratorsやEveryoneに属している自分では属性読み取り以外許されません。 いろいろなプログラムからそのファイルを開こうとしても削除しようとしても、エラーになってしまいます(ブラウザでApache経由だけは読めます)。 CGIで呼ばれたプログラムやそこから呼ばれるサブルーチンその他のソフトがどうファイルを操作しても、作られるファイルの所有者がEveryoneまたはAdministratorsになるようにする方法か、 そうでなくても誰からでも読み書き実行等フルコントロールがつくようにする方法は何かないでしょうか? この原因と対策がお分かりになる方、教えてください。 (chmod, chown, umask…全部関係ないですよね。Windows上で0777にしようとしても所有者が変わらないので状況は変わりません。Perlのstatでファイルを見るとuidもgidも0が返ってきます。) (Windowsのプロパティのセキュリティタブのところで所有者を変えてパーミッションを変える方法や、Windowsのcacls, icaclsコマンドを実行して所有者を変える方法も知っていますが、そんなことをせずに、ファイルができる前に包括的に対処したいのです。) (自分がSYSTEMに参加することもできないですよね。)

    • ベストアンサー
    • CGI
  • rootファイルについて

    素人がここに質問して申し訳ございません。 「Norton Ghost」を使ってリカバリーポイントまで復元しようとしたところ、次のエラー画面が出て、何度電源を入れても起動しなくなりました。 <エラー> 次のファイルが存在しないか、または壊れているためWindowsを起動できませんでした。 Windows root \system32\hal.dll 上記のファイルをインストールし直して下さい。 Norton Ghostを使っていたということで大切なデータのバックアップを取っていなかったのですが、もうなんともならないのでしょうか・・・?

  • ファイル操作を教えてください

    #include <stdio.h> #include <stdlib.h> /* (1)構造体の型枠の宣言 */ struct seiseki { int no[50]; int A[50]; int B[50]; }a; 構造体をこう定義した時に 1 2 3 1 2 3 1 2 3 と3列に書き込まれているtxtファイルがあったときに 1列目を a.no 2列目を a.A 3列目を a.B に入れるプログラムを教えてください

  • ファイル操作

    私はレス機能付きの掲示板を作成しました。 そこで質問なんですが、親記事に対してレスが付けられた場合、その親記事をトップへソートしたいんですが、どうすればよろしいでしょうか? ソースコードはこれです。 http://daisykatsura.dip.jp/bbs.txt

    • ベストアンサー
    • Perl
  • file操作について

    読み込んだファイルが空のファイルだったとき、 つまり、ファイルは存在するがファイルは0バイトのモノを読み込んだとき エラーをだすのはどんな条件で分岐させれば良いでしょうか。 ちなみにperlです。

    • ベストアンサー
    • CGI
  • ファイル操作について

    作りたいものとして、あるサーバーから元となるファイルをコピーして、そのコピーしたファイルの特定の文字列を置換したものを上書きしたいのですが。 現在、サーバーからサーバーへのコピーまではうまくいってるのですが、そのファイルを読み込んで値を書き換えて保存というところができません。 $all=fread(fopen($file,"rb"),filesize($file)); これだと読み込んで書き込むという処理にはならないのでしょうか?

    • ベストアンサー
    • PHP
  • 教えて!ファイルの操作

    下記のテキストファイルを読み出したいです。 四つの変数に値を与えて、後の処理に使いたい。 データの間スペースで分かれた、最後に改行。 やり方を教えて! お願いします。 ******************* temp.txt ******************* 沖縄県 那覇市 26.12 127.41 鹿児島県 鹿児島市 31.33 130.33 宮崎県 宮崎市 31.54 131.25

  • ファイル操作

    ファイル操作について、プログラムがうまくできないので教えていただきたいです。 作っているのは、txtファイルを読み込んで、置換の処理をした結果を、test.txtファイルに書き出したいのです。 質問なのですが、ここでtest.txtはあらかじめ作成しておかなければならないのでしょうか。自動で作成させる方法があれば、教えてください。 -----------------data.txt------------------------ rabbitうさぎappleりんごcoffeeコーヒー ------------------------------------------------ -----------------apple.pl----------------------- open(FILEHANDLE,"data.txt"); while($str=<FILEHANDLE>){ $str=~s/apple/青りんご/; } close(FILEHANDLE); open(FILEHANDLE,"test.txt"); print FILEHANDLE $str; close(FILEHANDLE); ------------------------------------------------- また、コマンドプロンプトの結果は次のとおりです。 C:\Perl>perl -cw apple.pl apple.pl syntax OK C:\Perl>perl apple.pl C:\Perl> Perl初心者なため、詳しく教えていただけると助かります。よろしくお願いします。

    • ベストアンサー
    • Perl