WebminのapsupsdモジュールをRHEL/CentOS6対応にしてみた


RHEL/CentOS 6.4にて、Webminを使って管理をおこなおうとしている。

サーバはapcupsdを使って停電対策をとることにした。
apcupsdの中には、WebでUPSの状態を確認できるようにcgiが添付されている。
これをWebminに組み込めないか確認した。

公式サイトでは「http://download.webmin.com/download/modules/apcupsd-0.81-2.wbm.gz」にそれっぽいものがある。

とりあえず、これを使ってみたところ、以下の問題点があった。

・cgiのパスが、apcupsd-0.81-2.wbm.gzの標準設定では/etc/apcupsd/
・WebminでUPSステータスを見ると、ヘッダが見える形で表示されてしまう。

これをとりあえず解消したものを作成した。

http://blog.osakana.net/sw/apcupsd/apcupsd-mod4.wbm.gz

SoftNASという仮想マシンとして立てるCentOS+ZFSのNAS


2021/02/10追記

2020/04/21にSoftNAS社Buurst社となっていた(Learn the new rules of cloud storage)。
プロダクトとしては引き続きSoftNASという名称のままである。

2021年1月にCentOS8.2ベースにsamba 4.12を載せたSoftNAS 5がリリースされていた(Announcing SoftNAS 5 – a Modern Approach to Cloud NAS)。

これまでのリリースノート一覧ドキュメントなども見やすい形で公開されるようになっていた。

ただ、以前あったDeveloper Editionは消えて、Demo版がAWSAzure上で展開できる、という形がメインになっている模様で、ローカルのvSphere上で展開する用のファイル提供の入手は面倒になっているようだ。



2019/01/23追記

2019年1月現在、SoftNAS Essentialsは有償プランの1つとなり、無償で使えるものは「SoftNAS Developer Edition」となった。使用可能容量も250GBまでと大きく制限されている。Amazon AWS, Microsoft Azureのマーケットプレイスにイメージが並んでいるので、そこからデプロイできる他、スタンドアローンのvSphere上にデプロイするためにSoftNAS-4.0.1.ovaが提供されている。

以下は2013年3月記載の古い記述となります。


SoftNASというものがあるらしい。

・CentOS6ベース
・ファイルシステムはZFS
・vSphereやHyper-Vの上に仮想マシンとして動作させる
・Amazon EC2用も用意されている
・検証用にVMware Workstation 8.xもサポート
・割り当てるCPUリソースは2vCPU~8vCPU
・割り当てるメモリリソースは2GB~32GB
・Dedupe機能あり(1TBにつきメインメモリ1GB追加使用)
・Thinprovisionおよび圧縮
・NFS/CIFS/iSCSIを提供できる
・Volumeスナップショット
・レプリケーション機能あり
  → Amazon EC2上に立てたサーバにレプリケーションできる
・ZFS L2ARCを利用したSSD利用の高速化

SoftNAS Essentials」という機能限定版は無償利用可能。
限定の内容の抜粋
・1TBまで
・以下の機能が使えない
 ・SSD利用の高速化
 ・iSCSI機能
 ・レプリケーション
 ・スナップショットのスケジューリング

詳細の違い

まぁ、おもしろそうではあるので、ちょっと試しに使ってみるかな


インストールしてみた

・CentOS 6.3 x86_64
・kernelはCentOS標準を利用している
ZFS on Linux利用
zfs-0.6.0-rc14.x86_64, zfs-modules-dkms,zfs-dracut,zfs-test
・独自Web GUI+Webmin
・NFSやCIFS設定はWebmin画面という感じ
・独自Web GUIは、iconCubeを使って暗号化処理をおこなっている
・独自Web GUIは多言語対応を考慮に入れてないっぽい
・LinuxはGUIログイン
・Chromeインストール&yum repo登録済
・sysctlに特にコレといったパラメータが入れられてない
・/etc/sysconfig/nfsとか/etc/init.d/nfsにも特にパラメータが入ってない
・「Software Updates」は、あくまでSoftNASに関するモジュールのみで、CentOS自体のアップデートは対象外


微妙だなぁ、と感じた、もっとも大きな点は、管理UIの不徹底です。

新規で使う際、以下の順序で操作をおこなっていきます。

1. Webにログイン
main-001
独自のAJAXなUIです。

2. 「Disk Devices」にて空きディスクにパーテーション設定
disk-dev
この画面はWebminそのままです。

3. 「Storage Pools」にてディスクの登録
storagepool
独自のAJAXなUIです。

4. 「Volumes and LUNs」にてボリューム作成
volume
独自のAJAXなUIです。
ここでボリュームを作成すると、マウントされるようになります。

5. 「NFS Exports」にてNFSマウントの設定
nfs-export
この画面はWebminそのままです。
NFSv4対応のwebmin設定画面はPseudofilesystemの関連でちょっとわかりにくいのですが、放置です。

6. 「CIFS Shares」にてCIFS関連設定
cifs-share
この画面もWebminそのままです。
なお、説明書を見ると、CIFS設定は、別途コマンドおよびファイル編集が必要、と書いてあります。

というわけで、使いやすそうな雰囲気がするGUIのわりに、手を抜いてる場所が結構あるせいで、操作感の統一がされておらず、説明も足りてないので、非常に使いにくい感じになっています。

はたして、これは修正されていくのでしょうか・・・???

SmartArray P410のfirmwareをCentOS6でアップデートしてみた


Smart Array P410をRAIDカードだけ入手して、CentOS6.3のサーバにさしてみた。
認識はしたんだが、firmwareが古い。

また、おそらくマザーボードの問題で、P410からのブートは無理だったので、USBメモリにbootパーテーションを作って、そこから起動させる形でLinuxをインストールした。

インストール完了後、 hpacucliをインストールして、ステータスを確認してみる。

# hpacucli
HP Array Configuration Utility CLI 9.40.12.0
Detecting Controllers...Done.
Type "help" for a list of supported commands.
Type "exit" to close the console.

=>ctrl all show config detail

Smart Array P410 in Slot 6
   Bus Interface: PCI
   Slot: 6
   Serial Number: PACCRID??????RQ
   Cache Serial Number: PAAVPID??????KDX
   RAID 6 (ADG) Status: Disabled
   Controller Status: OK
   Hardware Revision: C
   Firmware Version: 3.00
   Rebuild Priority: Medium
   Expand Priority: Medium
   Surface Scan Delay: 3 secs
   Surface Scan Mode: Idle
   Queue Depth: Automatic
   Monitor and Performance Delay: 60  min
   Elevator Sort: Enabled
   Degraded Performance Optimization: Disabled
   Inconsistency Repair Policy: Disabled
   Wait for Cache Room: Disabled
   Surface Analysis Inconsistency Notification: Disabled
   Post Prompt Timeout: 15 secs
   Cache Board Present: True
   Cache Status: OK
   Cache Ratio: 25% Read / 75% Write
   Drive Write Cache: Disabled
   Total Cache Size: 512 MB
   Total Cache Memory Available: 400 MB
   No-Battery Write Cache: Enabled
   Cache Backup Power Source: Batteries
   Battery/Capacitor Count: 1
   Battery/Capacitor Status: Failed (Replace Batteries)
   SATA NCQ Supported: True
   Array: A
      Interface Type: SAS
      Unused Space: 0  MB
      Status: OK
      Array Type: Data
      Spare Type: dedicated

      Logical Drive: 1
         Size: 205.0 GB
         Fault Tolerance: 5
         Heads: 255
         Sectors Per Track: 32
         Cylinders: 52687
         Strip Size: 256 KB
         Full Stripe Size: 768 KB
         Status: OK
         Caching:  Enabled
         Parity Initialization Status: In Progress
         Parity Initialization Progress: 79.64% complete
         Unique Identifier: 600508B100103130333?????????????
         Disk Name: /dev/sda
         Mount Points: /boot 500 MB
         OS Status: LOCKED
         Logical Drive Label: A23B2853PACCRID???????????F
         Drive Type: Data

      physicaldrive 1I:0:3
         Port: 1I
         Box: 0
         Bay: 3
         Status: OK
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 10000
         Firmware Revision: 0603
         Serial Number: 0422???Y            3??????Y
         Model: SEAGATE ST973402SSUN72G
         PHY Count: 2
         PHY Transfer Rate: 3.0Gbps, Unknown

      physicaldrive 1I:0:4
         Port: 1I
         Box: 0
         Bay: 4
         Status: OK
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 10000
         Firmware Revision: 0603
         Serial Number: 0422???1            3??????1
         Model: SEAGATE ST973402SSUN72G
         PHY Count: 2
         PHY Transfer Rate: 3.0Gbps, Unknown

      physicaldrive 2I:0:5
         Port: 2I
         Box: 0
         Bay: 5
         Status: OK
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 10000
         Firmware Revision: 0603
         Serial Number: 0522???3            3??????3
         Model: SEAGATE ST973402SSUN72G
         PHY Count: 2
         PHY Transfer Rate: 3.0Gbps, Unknown

      physicaldrive 2I:0:6
         Port: 2I
         Box: 0
         Bay: 6
         Status: OK
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 10000
         Firmware Revision: 0603
         Serial Number: 0422???7            3??????7
         Model: SEAGATE ST973402SSUN72G
         PHY Count: 2
         PHY Transfer Rate: 3.0Gbps, Unknown

      physicaldrive 2I:0:7
         Port: 2I
         Box: 0
         Bay: 7
         Status: Predictive Failure
         Drive Type: Spare Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 10000
         Firmware Revision: 0603
         Serial Number: 4922???W            3??????W
         Model: SEAGATE ST973402SSUN72G
         PHY Count: 2
         PHY Transfer Rate: 3.0Gbps, Unknown


   SEP (Vendor ID PMCSIERA, Model  SRC 8x6G) 250
      Device Number: 250
      Firmware Version: RevC
      WWID: 500143800??????F
      Vendor ID: PMCSIERA
      Model:  SRC 8x6G

#

ディスクが1本死にかけてるとか、バッテリーモジュールが死んでるとか、RAID構築中とか、あるけれど、firmware はv3.0であることを確認。

バージョンアップしようとしたところ、エラーが・・・

# ./CP019316.scexe
./hpsetup: ./ccissflash: /lib/ld-linux.so.2: bad ELF interpreter: そのようなファイルやディレクトリはありません
#

なんのファイルが足らないのか調べようとしたら、実行した後に展開される作業用ファイルを削除してしまってわからない。

CP019316.scexeはシェルスクリプトなので、ファイルを展開するだけのオプションがないか確認したところ「–unpack=出力先ディレクトリ」であることが判明。

# ./CP019316.scexe --unpack=/root/t
1115.bin
CP019316.xml
MIZ108.bin
Rom.bin
ccissflash
firmware.cfg
hpsetup
libcpqimgr.so
sandman.bin
# ls -l /root/t
合計 20908
-rwxr-xr-x 1 root root 1494272 11月 16 04:24 2011 1115.bin
-rw-rw-rw- 1 root root  743473 12月 14 02:25 2012 CP019316.xml
-rwxr-xr-x 1 root root 1461504  9月 18 02:36 2012 MIZ108.bin
-rwxr-xr-x 1 root root 4194304 11月 16 04:24 2011 Rom.bin
-rwxr-xr-x 1 root root 7159043  3月 27 14:10 2012 ccissflash
-rw-rw-rw- 1 root root     427 12月 14 02:20 2012 firmware.cfg
-rwxrwxrwx 1 root root     268 12月 14 02:20 2012 hpsetup
-rwxr-xr-x 1 root root 2148102  3月 27 14:11 2012 libcpqimgr.so
-rwxr-xr-x 1 root root 4194304 12月 12 09:31 2012 sandman.bin
# file *
1115.bin:       data
CP019316.xml:   XML  document text
MIZ108.bin:     data
Rom.bin:        data
ccissflash:     ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.4.3, not stripped
firmware.cfg:   ASCII text, with CRLF line terminators
hpsetup:        Bourne-Again shell script text executable
libcpqimgr.so:  ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped
sandman.bin:    data
#

とりあえず、よくある compat-libstdc++-296あたりかな、と「yum install compat-libstdc++-296」を実行。

# yum install compat-libstdc++-296
<略>
Dependencies Resolved

================================================================================
 Package                  Arch       Version                  Repository   Size
================================================================================
Installing:
 compat-libstdc++-296     i686       2.96-144.el6             base         77 k
Installing for dependencies:
 glibc                    i686       2.12-1.80.el6_3.7        updates     4.3 M
 libgcc                   i686       4.4.6-4.el6              base        111 k
 nss-softokn-freebl       i686       3.12.9-11.el6            base        116 k
Updating for dependencies:
 glibc                    x86_64     2.12-1.80.el6_3.7        updates     3.8 M
 glibc-common             x86_64     2.12-1.80.el6_3.7        updates      14 M

Transaction Summary
================================================================================
Install       4 Package(s)
Upgrade       2 Package(s)

Total download size: 23 M
Is this ok [y/N]: y
<略>
# ./ccissflash
./ccissflash: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
#

まだエラーがでている。
というか、「compat-libstdc++-296」ではなかったようだ。

ぐぐったところ「“bad ELF interpreter” Error When Running Smart Array Controller Firmware Update Script」を発見。

「glibc-2.12-~.i686」と「libstdc++-4.4.6-~.i686」があれば良かったらしい。
先ほどの操作でglibc-2.12-~.i686はインストールされたので、libstdc++-4.4.6のみインストール。

# yum install libstdc++-4.4.6-4.el6.i686
<略>
Dependencies Resolved

================================================================================
 Package             Arch           Version                Repository      Size
================================================================================
Installing:
 libstdc++           i686           4.4.6-4.el6            base           299 k

Transaction Summary
================================================================================
Install       1 Package(s)

Total download size: 299 k
Installed size: 908 k
Is this ok [y/N]: y
<略>
#  ./ccissflash

HP Enclosure ROM  Flash.
Flash Engine Version: 2.06.10
Copyright (c) 2006-2009 Hewlett-Packard Development Company L.P.

-i<romfile> is required
#

こんどは、問題なく動作できた。

改めてfirmwareのアップデートプログラムを実行

# ./CP019316.scexe

HP Enclosure ROM  Flash.
Flash Engine Version: 2.06.10
Copyright (c) 2006-2009 Hewlett-Packard Development Company L.P.

Device [P410]:  FW Ver [ Current:3.00 | Apply:6.00 ?]Flash this device? [NO, yes, quit] yes
Preparing to flash devices on the array controller...
Requesting flash - this could take up to 15 minutes...
The array flash operation succeeded.
Device [P410]:  FW Ver [ Current:3.00 | Apply:6.00 ?]Flash this device? [NO, yes, quit] yes
Preparing to flash devices on the array controller...
Requesting flash - this could take up to 15 minutes...
Flash complete.
The array flash operation succeeded.
#

アップデート後は再起動して、hpacucliにてバージョンを確認。

# hpacucli ctrl all show config detail

Smart Array P410 in Slot 6
   Bus Interface: PCI
   Slot: 6
   Serial Number: PACCRID??????RQ
   Cache Serial Number: PAAVPID??????KDX
   RAID 6 (ADG) Status: Disabled
   Controller Status: OK
   Hardware Revision: C
   Firmware Version: 6.00-2
   Rebuild Priority: Medium
   Expand Priority: Medium
<略>

v6.00-2になっていることを確認した。

CentOS6でカスタムインストールDVD作成



CentOS6.3ベースでひとまずある程度までパッケージ選択済みでインストールできるkickstartを書いた。
(「CentOS6ベースでカスタムLiveCDを作るという記事もあります)
具体的にはファイルサーバっぽい感じの設定を考えている。

しかし、実際にブートしてみるとパーテーション選択の次で、止まる。

Alt+F2でコンソールを切り替えてみると、以下のエラーが出力されていることがわかった。

ERROR: Error downloading treeinfo file: [Error 14] PYCURL ERROR 6 - "Couldn't resolve host 'cdrom:sr0'"

しかし、dfで見てみると「/mnt/source」にDVDはマウントされている状況。

ぐぐってみると答えを発見。
serverfault:「PyCURL couldn’t resolve “cdrom:sr0” during CentOS 6.2 kickstart installation

上記ページの要約
「repo –name=”CentOS” –baseurl=cdrom:sr0 –cost=100」ってなってるのを「repo –name=”CentOS” –baseurl=file:///mnt/source –cost=100」に変更しろ。

実際、その通りにしたところ、正常に動作した。

以下は、カスタムインストールDVDを作成するにあたり、実行したコマンドを順に書いていったもの。

 [/root]# mkdir mnt
[/root]# mount -o ro,loop CentOS-6.3-x86_64-bin-DVD1.iso mnt
[/root]# mkdir CentOS
[/root]# cd mnt
[/root/mnt]# tar cf - . |(cd ../CentOS;tar xpf -)
[/root]# cd ..
[/root]# cp anadonda-ks.cfg CentOS/isolinux/ks.cfg
[/root]# cp -r custom CentOS
[/root]# cd CentOS
[/root/CentOS]# cd isolinux
[/root/CentOS/isolinux]# vi isolinux.cfg
[/root/CentOS/isolinux]# cat isolinux.cfg
default vesamenu.c32
#prompt 1
timeout 600

display boot.msg

menu background splash.jpg
menu title Welcome to CentOS 6.3!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000

label linux
  menu label ^Install or upgrade an existing system
  kernel vmlinuz
  append initrd=initrd.img
label vesa
  menu label Install system with ^basic video driver
  kernel vmlinuz
  append initrd=initrd.img xdriver=vesa nomodeset
label rescue
  menu label ^Rescue installed system
  kernel vmlinuz
  append initrd=initrd.img rescue
label local
  menu label Boot from ^local drive
  localboot 0xffff
label memtest86
  menu label ^Memory test
  kernel memtest
  append -
label nas
  menu label ^Install or upgrade a CentOS custom OS
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=cdrom:/isolinux/ks.cfg
[/root/CentOS/isolinux]# cat ks.cfg
# Kickstart file automatically generated by anaconda.

#version=DEVEL
install
cdrom
text
lang en_US.UTF-8
keyboard jp106
network --onboot yes --device eth0 --bootproto dhcp --noipv6
network --onboot no --device eth1 --bootproto dhcp --noipv6
rootpw  --plaintext password
firewall --disabled
authconfig --enableshadow --passalgo=sha512
selinux --disabled
timezone --utc Asia/Tokyo
bootloader --location=mbr --driveorder=sda,sdb --append="crashkernel=auto"
firstboot --disabled
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work

#repo --name="CentOS"  --baseurl=cdrom:sr0 --cost=100
repo --name="CentOS"  --baseurl=file:///mnt/source --cost=100

%packages
@core
@server-policy
crypto-utils
perl-DBD-SQLite
perl-CGI
wget
parted
ypbind
yp-tools
xfsdump
xfsprogs
iscsi-initiator-utils
ntpdate
openssh-clients
screen
unzip
man
nfs-utils
samba
autofs
lm_sensors
dmidecode
i2c-tools
lm_sensors-sensord
%end
%post --nochroot
cd /mnt/stage2/custom
# Areca RAID setup
cp cli64 archttp64 archttpsrv.conf /mnt/sysimage/root/
chmod a+x /mnt/sysimage/root/cli64 /mnt/sysimage/root/archttp64
cp init.d-archttp /mnt/sysimage/etc/init.d/archttp
chmod a+x /mnt/sysimage/etc/init.d/archttp
cp logrotate.d-archttp /mnt/sysimage/etc/logrotate.d/archttp
chroot /mnt/sysimage /sbin/chkconfig --add archttp
chroot /mnt/sysimage /sbin/chkconfig archttp on

# system mod
chroot /mnt/sysimage /sbin/chkconfig iptables off
chroot /mnt/sysimage /sbin/chkconfig mcelogd off
chroot /mnt/sysimage /sbin/chkconfig autofs off
chroot /mnt/sysimage /sbin/chkconfig cups off
# nfs mod
mv /mnt/sysimage/etc/sysconfig/nfs /mnt/sysimage/etc/sysconfig/nfs.org
sed s/#RPCNFSDCOUNT=8/RPCNFSDCOUNT=32/ig /mnt/sysimage/etc/sysconfig/nfs.org > /mnt/sysimage/etc/sysconfig/nfs
chroot /mnt/sysimage /sbin/chkconfig nfs on
cat nfs.mod >> /mnt/sysimage/etc/sysctl.cfg

# lm_sensor
mv /mnt/sysimage/etc/sensors3.conf /mnt/sysimage/etc/sensors3.conf.org
cp sensors3.conf /mnt/sysimage/etc/sensors3.conf
mv /mnt/sysimage/etc/sysconfig/lm_sensors /mnt/sysimage/etc/sysconfig/lm_sensors.org
cp lm_sensors /mnt/sysimage/etc/sysconfig/lm_sensors
mv /mnt/sysimage/etc/sysconfig/sensord /mnt/sysimage/etc/sysconfig/sensord.org
cp sensord /mnt/sysimage/etc/sysconfig/sensord
chroot /mnt/sysimage /sbin/chkconfig lm_sensors on
chroot /mnt/sysimage /sbin/chkconfig sensord on

%end
[/root/CentOS/isolinux]# cd ..
[/root/CentOS]# cat custom/nfs.mod

## add for NFS server start
# increase TCP max buffer size
net.core.rmem_max = 33554432
net.core.wmem_max = 33554432
net.core.rmem_default = 65536
net.core.wmem_default = 65536
# increase Linux autotuning TCP buffer limits
# min, default, and max number of bytes to use
net.ipv4.tcp_rmem = 4096 33554432 33554432
net.ipv4.tcp_wmem = 4096 33554432 33554432
net.ipv4.tcp_mem= 33554432 33554432 33554432
net.ipv4.route.flush=1
net.core.netdev_max_backlog=1500
## add for NFS server end
[/root/CentOS]# cd Packages
[/root/CentOS/Packages]# cp /mnt/Packages/lm_sensors-sensord-3.1.1-10.el6.x86_64.rpm .
[/root/CentOS/Packages]# rm -f eclipse* 
[/root/CentOS/Packages]# cd ..
[/root/CentOS]# mkisofs -r -l -J -o ../Custom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table .
[/root/CentOS]# 

MZK-WD300DHってもしかしてMiracastになるんだろうか?



PLANEX Directからメールが来た。

「残り僅か!ワンセグチューナー、Wi-Fiディスプレイシステム最終価格で販売中!」だそうな

Wi-Fiディスプレイシステムって、どんなんだろ?と見てみると、MZK-WD300DHというものだった。

ぶっちゃけ、あまし評判はよくないようだ。

ただ、なんかうたい文句的にはいまで言うMiracastっぽいけど、別のモノ、ということにはなっている。

PLANEXページからドライバをダウンロードしてみた。
3種類のドライバと、関連ソフトの詰め合わせだった。

「92_DU_Driver」は、Realtek RTL8192D USBドライバ(rtl8192du.sys)でバージョンは「1002.1.816.2011」(日付:2011/11/21 0:00)

「WiDi_Driver」は2種類。
「RTKVideo」PLANEX Wifi Display VGA Adapter(RtlvVga.sys)でバージョン「1005.2.622.2011」(日付:2011/11/21 0:00)
「RTKAudio」PLANEX Wifi Display Audio Adapter(RtlvSound.sys)でバージョン「1005.1.526.2011」(日付:2011/11/21 0:00)
どちらもinfファイル内には「Realtek Semiconductor Corporation」の文字。

この情報を持って、チップメーカであるRealTekのページを探すと、以下がでてきた。

RTL8192DU-VC
Single-Chip IEEE 802.11a/b/g/n 2T2R WLAN Controller with USB 2.0 Interface
(PCI Express対応だとRTL8192DE-VCになる)

そして、プレスリリース系として、以下が・・・

2012年9月19日:「Realtek Selected for the Wi-Fi CERTIFIED Miracast™ Test Bed
 Miracastのテスト環境にRealtekが選ばれました! RTL8192DE, RTD1185,RTL8192DUです!

2013年1月7日:「Realtek to Demonstrate Full Range of Connectivity and Multimedia Solutions during 2013 CES
 RealShare Smart Display(RTD1185 Digital Media Processor とRTL8192DU Wi-Fi moduleの組み合わせ)

もしかして!?と一瞬期待をしてみる。

RTL8192DU関連のソフトウェアは、RTL8192DU-VC用としていくつか提供されていた。
こちらの中身は、普通に無線LAN用ドライバだった。

よくよく確認してみれば「RTL8192DU」自体は、普通のWiFiアダプタとして使っている普通のチップでもあった。
ただ、Miracastで使えるだけの能力を持っている、というだけだった。

つまりは、「WiDi_Driver」の方が本命。

で・・・「WiDi_Driver」に相当するものをRealTekページで探してみたけど見付からない。

いろいろ探していると
Dishing Tech:「Realtek Wi-Fi Direct Programming Guide」という記事が見付かった。

「Wireless_tools_porting_guide.pdf」という資料を元に解説をしている。
入手元を調べたところ、RealtekのドライバページにあるUnix(Linux)用のファイルに含まれていた。
v4.0.0_4074.20120518からWiDiのサポートが入ったらしい。

この資料の中に、AndroidでWiFi Directに対応させるためのコードとかも含まれているようだ。

なので、もしかしたら、送信側はRTL8192DUを使っていれさえすれば対応できるかもしれない。

しかし、受信側は、改造できなさそうなので、対応は難しいような気がする・・・

えぇ・・・気がする、というところ。
もしかすると動くのかもしれませんが・・・
ダレカ、チャレンジしていませんか?