%kはudevルールからコア番号を返しません。

%kはudevルールからコア番号を返しません。

このページ(長年にわたって数十回修正されました。良いです!)a-to-zudevコンテンツを提供しています。

%kデバイスが(デフォルトで)表示される「sda3」などのデバイスのカーネル名を評価します/dev/sda3%n計算結果は、デバイスのコア番号(ストレージデバイスのパーティション番号)です。たとえば、「3」はを表します/dev/sda3

しかし、上記の例では%kドングルが返されました。sda

ルールに影響を及ぼす部分はudev(次のようにインストールされます。)このデップ~からこのページ、排他ドングルが必要です。 btw):

LABEL="codemeter_mount"
IMPORT{program}="/sbin/blkid -o udev -p %N"
ENV{ID_FS_UUID}!="", ENV{dir_name}="%E{ID_FS_UUID}"  
#ENV{ID_FS_UUID}=="", ENV{dir_name}="cm-%k"
ENV{ID_FS_UUID}=="", ENV{dir_name}="cm-pickone"                                     # Use static path. Multiple dongles are not intended to be used, so this should be ok.
RUN+="/bin/mkdir -p /media/CodeMeter/%E{dir_name}"
RUN+="/bin/mount /dev/%k /media/CodeMeter/%E{dir_name} -o umask=0000,uid=1,gid=1"

上記のルールは、例えばインストールされると予想していますが、言及された問題はパーティションではなくディスクパスである/dev/sdb1ため失敗します(私が見つけたクイックハッキングはを使用することでした)。/dev/%kmount%k%n

私が何かを間違って理解したのでしょうか?

以下に示すように、私はUbuntu Xenialを使用していますが、Trustyでも同じ現象が現れます。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial
$ apt-cache policy udev
udev:
  Installed: 229-4ubuntu21
  Candidate: 229-4ubuntu21
  Version table:
 *** 229-4ubuntu21 500
        500 http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     229-4ubuntu10 500
        500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages
     229-4ubuntu4 500
        500 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 Packages

ベストアンサー1

おすすめ記事