7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

何でもOKなカレンダーAdvent Calendar 2020

Day 15

nerves-<4 digit serial#>.local (Elixir/Nerves)

Last updated at Posted at 2020-12-27

はじめに

ところで

  • mix nerves.newしたときに、はじめからできている
config/target.exs
config :mdns_lite,
  # The `host` key specifies what hostnames mdns_lite advertises.  `:hostname`
  # advertises the device's hostname.local. For the official Nerves systems, this
  # is "nerves-<4 digit serial#>.local".  mdns_lite also advertises
  # "nerves.local" for convenience. If more than one Nerves device is on the
  # network, delete "nerves" from the list.

  host: [:hostname, "nerves"],
  ttl: 120,
  • って書いてあって、nerves.localはconvenienceであって、nerves-<4 digit serial#>.localなるものがあるとのこと!
  • で、次の疑問は**<4 digit serial#>**って何ですか? という疑問です

答え

  • シリアル番号の下4桁です
  • まずNervesIExを使えるようにします
    • a. ディスプレイとキーボードを接続する
    • b. ssh nerves.localする (1台目の電源ON時はこれでいける)

@mnishiguchi さんコメント

iex> Nerves.Runtime.serial_number
c3ba

iex> (
File.read!("/proc/cpuinfo")
|> String.split("\n")
|> Enum.find(&String.starts_with? &1, "Serial")
|> String.slice(-4..-1)
)
c3ba

@torifukukaiou オリジナル

  • 私はもともとこういうコードを載せていましたところ、@mnishiguchiさんがもっと短くすむコードをコメントで教えてくださいました :pray::pray_tone1::pray_tone2::pray_tone3::pray_tone4::pray_tone5:
  • :point_up::point_up_tone1::point_up_tone2::point_up_tone3::point_up_tone4::point_up_tone5:
iex> (
File.read!("/proc/cpuinfo")
|> String.split("\n")
|> Enum.map(&(String.split(&1, ":")))
|> Enum.reject(&(Enum.count(&1) == 1))
|> Enum.map(fn [k, v] -> {String.trim(k), v} end)
|> Enum.map(fn {k, v} -> {String.to_atom(k), v} end)
|> Keyword.get(:Serial)
|> String.slice(-4..-1)
)
cccc
  • 上記では、nerves-cccc.localになります
  • (この値って変わることはないのかなあ?)
  • (私の家のRaspberry Pi 2ではこの4桁でうまくいったけど本当にそれでいいのかなあ?)

参考

Wrapping Up :christmas_tree::santa::santa_tone1::santa_tone2::santa_tone3::santa_tone4::santa_tone5::christmas_tree:

  • シリアル番号の下4桁で合っていますですかね:interrobang:
    • ちょっと自信がありませんが、自信のある方が正してくださるでしょう
    • Yes! Yes! Yes!
    • @takasehideki 先生から回答をコメントでいただきました!
    • ありがとうございます!
  • Enjoy Elixir :bangbang::bangbang::bangbang:
  • Nervesに興味を持っていただけましたらぜひ、Nerves JP Slackへご参加ください
    • 愉快なfolksたちが大歓迎です :bangbang::bangbang::bangbang:

https___qiita-user-contents.imgix.net_https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F240349%2F5ef22bb9-f357-778c-1bff-b018cce54948.png_ixlib=rb-1.2.png

7
1
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?