タグ付けされた質問 「devices」

デバイスは、Unix / Linuxデバイスの特殊ファイルに関する質問を指します。通常、これらは/ devの下にあります。このタグを物理デバイス(usbやpciなどを使用するデバイス)に使用しないでください。

3
プリンターを/ dev / usbにマウントし、CUPSを使用します
新しいバージョンのCUPSが原因で、以前はで利用できたプリンタへの直接パスが突然失われました/dev/usb/lpXXX。これを使用して、コマンドラインから直接印刷しました。echo "test" > /dev/usb/lp0。 検索した後、私はコメントアウトによって、この問題を解決する方法を見つけblacklist usblpに/etc/modprobe.d/blacklist.conf。これは確かに機能しますが、これを実行すると、CUPSはどのプリンターとも通信できなくなります(必要です)。では、どうすればプリンタへのある種の直接パスを設定し、それでもCUPSを機能させることができますか 注:一部の(レシート)プリンターはCUPSで認識されlprないため、これらのプリンターでは機能しません。


2
/ dev / input-これは正確には何ですか?
ハードウェアとOSの相互作用に興味があり、この投稿に出くわしました。キーボード入力とテキスト出力はどのように機能しますか? 多くの魔法が/ dev / inputディレクトリで起こっているようです。私は自分のOS(Ubuntu 16.10)を調べて、何がわかるかを確認することにしました。これらのファイルはすべて0バイトとしてリストされています。sudo cat mouse0 | hexdump -Cそうすると、次のような大量のhexdata が表示されます。 00000000 b3 82 8a 58 00 00 00 00 53 74 09 00 00 00 00 00 |...X....St......| 00000010 01 00 1c 00 00 00 00 00 b3 82 8a 58 00 00 00 00 |...........X....| 00000020 53 …
12 linux  devices 

4
特別なデバイスファイルにiノードがあるのはなぜですか?
デバイスファイル自体はファイルではありません。これらは、Unixライクなオペレーティングシステムでデバイスを使用するためのI / Oインターフェイスです。これらはディスク上のスペースを使用しませんが、stat次のコマンドで報告されるようにiノードを使用します。 $ stat /dev/sda File: /dev/sda Size: 0 Blocks: 0 IO Block: 4096 block special file Device: 6h/6d Inode: 14628 Links: 1 Device type: 8,0 デバイスファイルはファイルシステムの物理的な iノードを使用しますか、なぜそれらを必要とするのですか?

2
Linuxがキーボード入力としてUSB入力デバイスをリッスンするのを止めても、プログラムでイベントをキャプチャできますか?
/dev/input/event0(/dev/input/by-id/usb-Metrologic_Metrologic_Scanner-event-kbd)にUSBバーコードスキャナーがあり、バーコードをスキャンするとキープレスイベントが送信されます。私はlibdevinput Rubyライブラリを使用してこれらのキープレスをキャプチャしています。問題は、各バーコードがユーザー名としても入力され、続いてRaspberry Piでパスワードが入力されるため、ログイン試行が何度も失敗することです。(Raspberry Piはヘッドレスで、電子レンジ内にあります。) Linuxがバーコードスキャナーを入力デバイスとして認識しないようにして、プログラムを唯一のイベントコンシューマーにするにはどうすればよいですか?または、別のより良い解決策はありますか?
11 linux  debian  devices  events 

2
なぜそれほど多くの仮想端末デバイスがあるのですか?
私はAdvanced Linux Programmingの本を読んでいて、仮想端末について言及しています。正しく理解していれば、それは非X11システムで複数のログインコンソールを許可するLinux固有の機能(Unixではない)です。ALT-F2を押して仮想端末を作成します。Linux Mintを実行していて、/ devフォルダーで、多くのttyデバイスを表示していますが、それらの用途がわかりません。次に、greppedの出力を示します。 crw-rw-rw- 1 root tty 5, 0 Jan 2 19:45 tty crw--w---- 1 root tty 4, 0 Jan 2 19:10 tty0 crw-rw---- 1 root tty 4, 1 Jan 2 19:10 tty1 crw--w---- 1 root tty 4, 10 Jan 2 19:10 tty10 crw--w---- 1 root tty 4, …
11 linux  console  devices  tty 

1
`udevadm info -a -n / dev / sdb`の出力を理解する
ラップトップに外付けHDDを差し込みます。私は情報を見つけようとします $ udevadm info -a -n /dev/sdb Udevadm info starts with the device specified by the devpath and then walks up the chain of parent devices. It prints for every device found, all possible attributes in the udev rules key format. A rule to match, can be composed by the …
11 usb  udev  devices  storage  pci 

2
lsusb出力またはデバイスパスからデバイスファイル名を取得する方法
関連質問:USB接続/切断通知 デバイスのプラグを抜いたり抜いたりすると、すぐに通知されます。しかし、それを(ほぼ)完璧にするために/dev/ttyUSB0、のようなデバイスファイル名を取得したいと思っています。 しかし、この情報をからudev、またはからlsusb、またはその他の方法で取得する方法を見つけることができません。私が持っているデバイスの唯一のIDは、のようなデバイスパスです/devices/pci0000:00/0000:00:1d.0/usb5/5-1。それからデバイスのファイル名を取得する方法は?
11 linux  usb  devices  udev 

1
特定のデバイスがUSB大容量ストレージであるかどうかを確認する
環境 既存のdd工場イメージからのSDカードイメージングを自動化しています。SDカードは常に外部USBカードリーダーを介して接続されるため、システムではSCSIブロックデバイスとして表示されます/dev/sd*。 現在、私のコマンドの構文は次のとおりです。SDカードブロックデバイスはwrite-image DEVICEどこにDEVICEありますか。/dev/sdd。 問題 私はすでにDEVICEそれが形式であることを確認するために基本的なチェックを行っています/dev/sd*が、これでは十分ではありません。ユーザー(Linuxに慣れていないプロダクションの人々)が間違いを犯し、別の有効なデバイスを指定するのを恐れています。/dev/sda。特に私のイメージングスクリプトにはroot権限が必要なため、迫りくる大災害を見ることができます(イメージ自体を書き込むのではなく、後でSDカードを変更して、SDカードの実際のサイズに応じてパーティションのサイズを調整するなど)... 質問 指定したデバイスが実際にUSB大容量ストレージ(または少なくともリムーバブルデバイス)であることを確認して、システムディスクが誤ってゴミ箱に捨てられるのを防ぎます。どうやってやるの? /procウェブ上やウェブ上で関連性のあるものは何も見つかりませんでした。


1
特定のデバイスファイルの背後にあるドライバーは何ですか?
たとえば/dev/sdb、デバイスファイルが与えられた場合、その背後にあるドライバーを特定することはできますか? 具体的には、ストレージデバイスが使用しているドライバーを特定したいと考えています。fdisk -lは2つのデバイスをリストします:/dev/sdaおよび/dev/sdb。1つはSATAハードドライブで、もう1つはUSB大容量ストレージデバイスです-実際にはSDカードです。 プログラムでどちらを決定するのですか? 私はソフトウェアを書いています。初心者がハードドライブを消去するのを防ぎながら、SDカードを消去できるようにしたいと思っています。

1
SATAデバイスが/ proc / scsi / scsiに表示されるのはなぜですか?
システムに3つのSATAデバイスがあります。/proc/scsi/scsiこれらはSCSIデバイスではありませんが、の下に表示されます。SATAデバイスがSCSIディレクトリに表示されるのはなぜですか? $ cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: WDC WD2500AAJS-6 Rev: 01.0 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi1 Channel: 00 Id: 00 Lun: 00 Vendor: TSSTcorp Model: CDDVDW TS-H653Z Rev: 4303 Type: CD-ROM ANSI SCSI revision: 05 Host: scsi4 …
10 linux  sata  scsi  devices 

1
/ dev / randomをファイルに書き込みますか?
以下を実行するとどうなりますか? cat /dev/random > ~/randomFile # don't run ドライブの容量がなくなるまで書き込まれるのでしょうか、それともシステムがこれに問題を見つけて停止するのでしょうか(無限シンボリックループのように)。
10 kernel  devices  random 

2
現在マイクにアクセスしているプロセス(存在する場合)を照会できますか?
私はDebian(技術的にはRaspbian)を実行しており、Star-Trekスタイルの音声コマンドシステムを取得しようとしています。私はそれをほとんど稼働させていますが、プライバシーとすべてのジャズのために、マイクを常に録音したくありません。 私は不思議に思っています、現在マイクにアクセスしているプロセスがあれば、それをポーリングする方法はありますか?その考えは、マイクが現在オーディオを録音しているかどうかを知るための小さな指標となることです。 私の最終的な目標は、テレビのリモコンを使用してマイクのオンとオフを切り替え、オンかオフかを示すLEDインジケーターを用意することです。すべてのハードウェアが動作しているので、今すぐソフトウェアを終了する必要があります。 私は今、PulseAudioではなく純粋なALSAで構成されていると思いますが、私は間違っている可能性があります。

1
Linuxでデバイスにバインドできないドライバーをデバッグする方法
次のデバイスが私のクリエーターCI20のドライバーに設定されていない理由を理解しようとしています。参考までに、私はLinuxカーネルv4.13.0を使用して、ローカルでコンパイルを行っています。 make ARCH=mips ci20_defconfig make -j8 ARCH=mips CROSS_COMPILE=mipsel-linux-gnu- uImage 実行中のシステムから私は見ることができます: ci20@ci20:~# find /sys | grep rng /sys/firmware/devicetree/base/jz4780-cgu@10000000/rng@d8 /sys/firmware/devicetree/base/jz4780-cgu@10000000/rng@d8/compatible /sys/firmware/devicetree/base/jz4780-cgu@10000000/rng@d8/name /sys/bus/platform/drivers/jz4780-rng /sys/bus/platform/drivers/jz4780-rng/bind /sys/bus/platform/drivers/jz4780-rng/unbind /sys/bus/platform/drivers/jz4780-rng/uevent したがって、デバイスは実行時にカーネルに表示されますが、欠けている部分がドライバーがバインドされない理由です。私はこのようなものを期待していました: /sys/bus/platform/drivers/jz4780-rng/100000d8.rng 私は実行中のシステムをデバッグする方法を説明する他のいくつかの投稿を見つけました、例えば: /programming/28406776/driver-binding-using-device-tree-without-compatible-string-in-the-driver /programming/35580862/device-tree-mismatch-probe-never-called /programming/41446737/platform-device-driver-autoloading-mechanism 実行中のカーネルの/ sysを使用してデバイスツリーの情報を取得することは可能ですか? これらの投稿の情報は正確ですが、私にはあまり役に立ちません。私はカーネルをローカルでビルドしているので(ドライバーprintkのプローブ機能に追加しましたjz4780-rng)、代わりに私の質問は次のとおりです。 カーネルがjz4780-rngドライバーのプローブ関数の呼び出しの失敗に関する正確な情報を出力するように、コンパイル時にどのオプションをオンにする必要がありますか? 特に、テスト済みのバス/ドライバーの完全なリストをどのように印刷しdriver_probe_deviceますか? printkこれをデバッグするためにコードのどこにでも追加できます。問題はむしろです:どの関数がデバイスツリーをトラバースし、probe / init関数を呼び出していますか? 参考のために: $ dtc -I fs -O dts /sys/firmware/devicetree/base | grep -A 1 rng …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.