私はLinuxボックスのシリアルポートをSolaris 10ボックスと共有しようとしています(Solarisシステムにはシリアルポートはありません)。
Linuxボックス(モデムサーバー)から別のLinuxボックスに同じコマンドを実行すると、すべてが正常です。
Solarisでscoutを使用すると問題が発生します。
Linuxボックスでサーバーを起動するには、次のようにします。
$ socat tcp-l:54321,reuseaddr,fork ファイル:/dev/ttyAMA0,nonblock,waitlock=/var/run/ttyAMA0.lock
クライアント側では、次を使用します。
/opt/csw/bin/socat pty,link=$HOME/dev/vmodem0,waitslave tcp:モデムサーバー IP:54321
しかし、エラーメッセージが表示されます。
bash-3.00# /opt/csw/bin/socat pty,link=$HOME/dev/vmodem0,waitslave tcp:modem-server-ip:54321 2015/09/10 21:07:10 socat[10085] E 解析( ): 不明なオプション "waitslave"
waitslave オプションを削除すると起動しますが、/dev/vmodem0 は独自の親ディレクトリへのシンボリックリンクとして生成されます。
bash-3.00# ls -lad /dev/vmodem0 lrwxrwxrwx 1ルートルート
0 9月10日21:06 /dev/vmodem0 ->bash-3.00# ls /dev/vmodem0/vmodem0/vmodem0/