![ルートとしてログインした場合の mknod の問題](https://rvso.com/image/23543/%E3%83%AB%E3%83%BC%E3%83%88%E3%81%A8%E3%81%97%E3%81%A6%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%97%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%AE%20mknod%20%E3%81%AE%E5%95%8F%E9%A1%8C.png)
自分で書いた char デバイス ドライバーをロードしようとしています。これを実現するために、このサイトで公開されている修正された bash スクリプトを使用します。http://www.makelinux.net/ldd3/chp-3-sect-2. これが私のバージョンのスクリプトです:
#!/bin/sh
device="ki32"
module="ki32"
mode="664"
if [ $2 = "start" ]; then
/sbin/insmod $1/$module.ko || exit 1
rm -f /dev/${device}
major=`cat /proc/devices | grep "$module" | sed 's/\([0-9]*\)\( [a-zA-Z]*\)/\1/'`
mknod /dev/${device} c $major 0
chmod $mode /dev/${device}
elif [ $2 = "stop" ]; then
/sbin/rmmod $module.ko
rm -f /dev/${device}
fi
ただし、スクリプトは失敗し、次のようなメッセージが表示されます。
# mknod: `/dev/ki32': Invalid argument
スクリプトの外部でコマンドを実行した場合も同じことが起こりますが、もちろん、引き続き root としてログインします。
あなたの助けに大いに感謝します。