火曜日, 6月 24, 2008

「USBの安全な取り外し」アイコンが出なくなった時の対処

[概要]
タスクトレイに「USBの安全な取り外し」アイコンが出なくなった時の対処方法を記述しています。
[詳細]
次の手順で、「USBの安全な取り外し」を起動します。
  1. [スタート]→[ファイル名を指定して実行]を選択して、ダイアログを表示する。

  2. ダイアログに"rundll32 shell32.dll,Control_RunDLL hotplug.dll"と入力し、"OK"を押す。


  3. 「ハードウェアの安全な取り外し」画面が表示される。


月曜日, 3月 31, 2008

Promise SmartStar NS4300Nのtelnetを有効にする

[概要]
Promise社のNAS Kit SmartStar NS4300Nの
telnetでのアクセスを有効にする方法を説明しています。
[詳細]
NS4300Nでは、ポート番号2380でtelnetが起動していますが、
adminや作成したアカウントでは、ログインできないようになっています。
しかし、アプリケーションプラグインをhackすることで、telnetでアクセスできるようにすることが出来ます。
  1. 事前の準備
    アプリケーションプラグインを作成するために次の環境が必要です。
    Linuxがインストールされたパソコン。もしくは、Cygwin(dd, tar, gzip, cat, bash, chmodが必要)をインストールしたWindowsパソコン。(筆者は試してません。理論上の話です。)

  2. 正規のDLNAプラグインのインストール

    1. DLNAプラグインをPromise社のサイトからダウンロードします。

    2. ダウンロードしたファイルをNS4300N上にコピーします。

    3. 「管理」→「システム更新」のページに進み、「アプリケーションプラグイン」のタブを選択します。

    4. 保存したファイルを指定して「OK」を押し、アップロードを行います。


      更新中、"System busy. Please waite...."が表示され、


      しばらくするとアップロード成功のダイアログが表示されます。


  3. Hack用のアプリケーションプラグインを作成

    1. 空のディレクトリ(フォルダ)を作成します。

    2. 作成したディレクトリに"rev"という名前で次のファイルを作成します。
      PKGNAME=DLNA
      PKGVERSION=1.0.9999.0
      FWVERSION=010105

    3. ディレクトリ"./DLNA/DLNA/.server"を再帰的に作成し、fuppesというファイルを作成します。
      #!/bin/ash

      echo "admin ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
      echo "admin" >> /etc/telnet.user
      cp /etc/sudoers /data/etc
      cp /etc/telnet.user /data/etc

    4. 作成したファイルに実行権を付与します。
      chmod +x ./DLNA/DLNA/.server/fuppes

    5. 作成したディレクトリをアーカイブします。
      tar cvfz telnet-hack.tgz ./rev ./DLNA

    6. プラグインアプリケーションのファイルを作成します。
      dd if=/dev/urandom of=telnet-hack bs=97k count=1

    7. アプリケーション・ファイルに、アーカイブを追加します。
      cat telnet-hack.tgz >> telnet-hack


    作成が難しい方は、私が作成したイメージをここからダウンロードして使ってください。
    使用については、あくまで自己責任でお願いします。
  4. 作成したアプリケーションプラグインのインストール

    1. 作成したファイルをNS4300N上にコピーします。

    2. 正規のプラグインと同様に、ファイルを指定して「OK」を押します。


      しばらくするとアップロード成功のダイアログが表示されます。


  5. アプリケーションプラグインの実行

    1. 「ファイルとプリンタ」→「プロトコル制御」のページで、「情報」のタブを開きます。

    2. 登録したアプリケーション「DLNA Server」の「有効」ボタンを押します。

      しばらくするとアプリケーション開始成功のダイアログが表示されます。




    3. 以上で設定は終了です。DLNAを使用したい時には、正規版を再インストールしてください

  6. 接続確認
    telentコマンドで、ログインできることを確認します。
    [root@linux ~]# telnet ns4300n 2380
    Trying 192.168.1.9...
    Connected to ns4300n (192.168.1.9).
    Escape character is '^]'.
    NS4300N R1.5 A1 (Version 01.05.0000.03) - Promise Technology, INC.
    lukather login: admin
    Password:


    BusyBox v1.00-rc2 (2006.11.07-01:55+0000) Built-in shell (ash)
    Enter 'help' for a list of built-in commands.

    admin is allowed to login.
    [admin@ns4300n]#

もとのネタは、こちらにありましたが、リンクが切れてしまいました。

linuxパッケージからのファイルの取り出し

[概要]


linuxのパッケージの中から必要なファイルを
取りだすための方法を説明しています。

[詳細]

・Debian GNU/Linuxの場合


Debinanのパッケージを解凍する場合には、arコマンドを使用します。

ar xv package.dep
x - debian-binary
x - control.tar.gz
x - data.tar.gz

ファイルを解凍すると'data.tar.gz', 'control.tar.gz', 'debian-binary'の
3つのファイルが作成されます。
この中の'data.tar.gz' に、インストールされるファイルが、
アーカイブされていますので、
さらに、'data.tar.gz'を解凍します。
tar xvfz data.tar.gz

"/"ディレクトリから構造で、ファイルが展開されています。
必要なファイルをfindコマンドなどで、検索してください。

ちなみに、control.tar.gz には preinst, postinst など、
パッケージのインストール時やアンインストール時に
実行されるスクリプトなどが
アーカイブされています。

・RPMの場合


RPMの場合は、rpm2cpioとcpioコマンドを使用します。

rpm2cpio package.rpm | cpio -id

"/"ディレクトリから構造で、ファイルが展開されています。
必要なファイルをfindコマンドなどで、検索してください。

金曜日, 2月 22, 2008

LinuxでMBRの初期化 (削除)

[概要]

DOSが使用できないPCで、代わりにLinuxを
使ってMBRを初期化(削除)する方法を説明しています。

[詳細]
Linuxをインストールしたディスクを、もう一度、Windowsで使いたい場合、
そのままだとGRUBがMBRが残ってしまっていて、
インストールやブートが出来ないことがあります。
その時は、再インストールの前にMBRを初期化します。

フロッピーがあれば、FDISK /MBRで、
簡単にクリアできますが、最近、フロッピーがないことも多いですね。

そんなときは、linuxのddコマンドを使います。

Linuxのインストールディスクか、
"knoppix"のようにCDだけで動作するディストリビューションを使って、
ddコマンドを実行します。

まず、
  1. DVDやCDからレスキュー・モードで起動します。
    Redhat,CentOSの場合は、"boot:"のプロンプトで、"linux rescue"と入力します。

    linux rescue

  2. 以前にマウントしてあったパーティションを



  3. HDDの先頭512バイトにパーティションテーブルを
    含むMBRが確保されていますので、ここをddコマンドで初期化します。
    dd if=/dev/zero of=ディスク・デバイス bs=512 count=1


以上で終了です。
インストール・ディスクの代わりに、
KnoppixのようなCDで動作するディストリビューションを
使用するのもよいでしょう。

SSH over HTTP-Proxy with TeraTerm Pro

[概要]
UTF-8 TeraTerm Pro with TTSSH2を使用して、
Firewallの外側にあるサーバへsshで接続する方法を、説明しています。

[詳細]
UTF-8 TeraTerm Pro with TTSSH2がインストールされていることを前提とします。
UTF-8 TeraTerm Pro with TTSSH2は、ベクター窓の杜

  1. メニューのSetupからProxyを選びます。

  2. Proxyの設定画面がポップアップしたら、TypeをHTTPに設定し、Proxyサーバの名前とポート番号を指定します。

  3. 後は、普通に、つなぐだけです。

Cygwin でSSHD

[概要]
SSHを使って、Windowsにリモートアクセスをする方法を説明しています。
CywinのSSHをインストールすると、クライアントだけでなく、
サーバも同時にインストールされます。

[詳細]
  1. Cygwinの"setup.exe"を実行し、"ssh"をインストールします。
    デフォルトではインストールされないので、自分で選択する必要があります。

  2. Cygwinのシェル起動し、"ssh-host-config "を実行します。
    後は、図のように、質問に答えていきます。
    特に変更がなければ、デフォルトで進めます。



    "Host configuration finished. Have fun!"が表示されて、
    コマンドを抜ければインストールは成功です。

  3. net start sshdで、サービスを起動します。

  4. XPの場合、ファイアウォールの設定で、sshのポート(22番)が閉じられているので、
    ポートを開放します。
    1. "コントロール パネル"→"セキュリティセンタ"→"ファイアウォール"を起動します。

    2. "例外"のタブを選択し、"ポートの追加"押してください。


    3. "ポートの追加"では、名前とポート番号を入力します。
      名前は任意ですが、わかりやすいようにサービス名の"ssh"がよいでしょう。
      ポート番号は"22"です。



  5. 必要に応じて"/etc/ssh/sshd.conf"を編集します。
    編集後は、サービスを再起動してください。

土曜日, 2月 16, 2008

Windowsカーネルの変更 ユニプロセッサからマルチプロセッサーへ

[概要]
VMWareなどでCPUをシングルからデュアルに変えた時に、
Windowsから追加したCPUを認識させる方法を説明してます。
[詳細]
Windowsは、シングルCPUで動作している時には、ユニプロセッサー・カーネルで動作しています。
そのため、VMWareなどで、CPUをシングルからデュアルに変更しても、
そのままでは2つ目のCPUが認識されません。

マルチプロセッサー・カーネルへの変更することで、2つ目以降のCPUを認識させます。

  1. コンピュータの管理を開き、デバイスマネージャを選択します。

  2. [コンピュータ]→[APCIユニプロセッサPC]を選択します。


  3. 右クリックで、ドライバの更新を選びます。

  4. [一覧または特定の場所からインストールする]を選び、次へ進みます。


  5. [検索しないでインストールするドライバを選択する]を選び、次へ進みます。


  6. [ACPIマルチプロセッサPC]を選択して、次へ進みます。



あとは画面の指示に従い、ドライバのインストールを進め、
マシンのリブートを行います。


リブート後、タスクマネージャやデバイスマネージャで、
CPUが増えていることを確認してください。




なお、元に戻すには、同様の手順で[APCIユニプロセッサ]を選択してください。