このブログを検索

2023/11/02

Macでシリアル接続しようとして少しハマった

 MacBook Proを持て余している。

訳あってシリアル接続したかったが、MacBookはUSB-Cポートしかなく、いつも使っているUSBシリアル変換ケーブルが使えない。

USBハブを使っている人がいたが、シリアルケーブルを使うだけのために持っていないハブを買うのも馬鹿らしいなと思い、USB-Cインターフェースのシリアル変換ケーブルはないのかと探したら、あった。

StarTechのICUSB232PROCというモノだ。Macでも使えるというクチコミも載っている。

ドライバーをインストールすると /dev/tty* (たくさんある)の中に出てくるとのことだが出てこない。

何度かドライバを再インストールしたり再起動しているうちに、インストール時にMacOSのあるオプションを変更する必要があることに気づいた。

細かい内容は覚えていないが、Securityナンタラのナンタラextentionを有効にする必要があった。

ドライバインストールなど、出てくるプロンプトなんか見ずに全部ハイハイで入るもんだと思っていたが、それがダメだった。

やっと /dev/tty.PL2303G-USBtoUART1410 が出てきた。

cu -l /dev/tty.PL2303G-USBtoUART1410 

とするが、Permission denied. と言われる。

sudo する。

connected.

と表示されるのだが、その後何もできない。

調べると、ciscoルータなどのネットワーク機器にシリアル接続する際には

/dev/cu. を使うそうだ。

sudo cu -l /dev/cu.PL2303G-USBtoUART1410


ようやくコンソールアクセスして操作できた。


...が、コンソールを抜けるにはどうしたらいいのか?


わからない。

しょうがないのでterminalごと終わらす....


たまにMacを使うと日本語と英語の切り替えだけでイライラしてしょうがない...



2023/10/31

CML2.6.1

 


CMLのバージョンを2.6.1にした。

今まで2.2.3(かな?)を使っていたのだが、バージョンがだいぶ上がっているのに気づいた。

もしかしてライセンスがあればアップグレードできるのか? ...できる。

Upgradeという操作ができるが、めんどくさいので仮想マシンを新しく作り直した。

いつも忘れるのだが、CMLの購入履歴、ライセンストークン、ダウンロード等は「Cisco Learning Network」でおこなう。

CMLは本体とrefplatなんとかというisoファイルを必要とする。

refplatがルータやスイッチなどのイメージを含んでいるようであり、これがないと実質使えない。

refplatは起動時に読み込むようにしておく。

VMWare ESXiの場合、仮想マシンの設定でisoファイルを選択(その前にアップロードする)し、起動時に接続をチェックしておく。

これをしないでいると、仮想マシン起動後のセットアップで警告が出る。


新しいCMLでは、テキストや図形(四角や丸など簡単なもの)を貼れるようになった。

あと、これは以前からあったかもしれないが、各ノードのconfigをCLIでなく設定できる。

また、設定したconfigを FETCHで読み込める。


確認するときにlinux端末があると便利なのでUbuntuについて

アカウントはcisco、パスワードはcisco

ネットワーク設定はコマンドでもできるが設定を保存するには

/etc/netplan/ に拡張子.yamlで設定ファイルを書く。


cisco@ubuko:~$ cat /etc/netplan/99-config.yaml 
network:
  version: 2
  renderer: networkd
  ethernets:
    ens2:
      dhcp4: false
      addresses:
        - 192.168.4.100/24
      routes:
        - to: default
          via: 192.168.4.254


設定変更したら、 sudo netplan apply で反映する。

名前はなんでもよいようで、このフォルダにあるyamlファイルがアルファベット順にすべて読み込まれ、(同じ設定があったら)最後に読み込まれた設定が有効になるそうだ。

ちなみにデフォルトルートの書き方は gateway4: というのは古く、上記が新しい書き方である。


2.2で作ったLab設定はエクスポート・インポートしたが、トポロジーはインポートできたがconfigが消えてしまった。extractとかいう操作をしたら戻るみたいなことが書いてあったがやってもだめで、入れなおした。

あと、仮想マシンを作り直したのでライセンスを再登録したのだが、ちょっと手間取ったのでメモ。

レジスターするとなぜかエラーになる。何度やってもだめで、「既に登録されていたら解除する」をチェックしてもだめ。 結局、CMLのコンソールにログインし、下記を実施してやっと有効になった。
sudo -E -s
cd /var/local/virl2/smart
systemctl stop virl2.target
rm -f *.data call_home_ca
systemctl start virl2.target

2023/10/10

PC新調時のトラブル

1: Wed May 3 16:38:56 2023
マザーボード: ASRock B760M Steel Legend WiFi
CPU: Core i5 13400F
メモリ DDR5 64GB(32GB x2)
M.2 SSD 2TB(サムソン)

グラフィックカード
NVIDIA GeForce GTX 1650 SUPER(流用)

電源 550W Gold(流用)

2: Wed May 3 16:41:39 2023
いったん起動してWindows10をディスクからインストールし、
windows updateをしていた。
ドライバは自動アップデートが走った。

いったん落ち着いて
LANアダプタとM.2(流用)をつけて起動したら、
画面が黒いまま。
マザーボードのpost checkとかなんとかいうLEDを見ると、
bootとvgaが赤く光っている。

3: Wed May 3 16:43:12 2023
CMOSクリアとか、余計なものを外すなどしたが問題がわからず、
vgaが認識しないということだからグラフィックカードの故障か、となった。
ファンは回っているが....

4: Wed May 3 16:45:03 2023
13400Fはグラフィック機能がないCPUなので、グラフィックボードを認識しないと何も表示されなくなってしまう。
今まで9400Fを使っていたがこんなトラブルはなく、どうせ外付けグラフィックボードを使うんだからいらないだろうと、Fを選んだ。

5: Wed May 3 16:47:12 2023
CMOSクリアはやってみた。
biosが初期化されているというメッセージが出て、bios画面だけは出る。
時刻をセットする。メモリ、SATAデバイスは問題なく認識されている。

ネットで調べると、似たような問題がbiosアップデートでなおる、みたいな情報もあるが、
画面が何も出ないとbiosアップデートもできない......

6: Wed May 3 17:04:56 2023
その日はあきらめて、
翌日中古のグラフィックボード、壊れたと思しきものとほぼ同スペックだが違う型番のものと、
グラフィック機能付きの Core i5 9500 中古CPUを買った。

新しく買ったグラフィックボードをつけてみると、同じようにbootとvgaが点灯して画面が表示されない。

予想外だった。これはグラフィックボードの故障ではない。
買った中古品も壊れている可能性もないとは言えないが考えにくい。

元の構成に戻す。ただしCPUは買ってきた 9500に付け替える。
まずグラフィックボードをささずに起動してみる。
CMOSがクリアされていたが、正常に起動する。

そして壊れたと思っていた今まで使っていたグラフィックボードをさして起動する。
正常に起動してグラフィックボードも認識する。やっぱり壊れていなかった。

7: Wed May 3 17:08:54 2023
ということは?
マザーボード?

問題が起きる前に、LANカードとM.2 SATAドライブを付けた。

LANカードはグラフィックボード(2スロット使う)の下のスロットで、
触るか触らないかギリギリで、ねじで固定する位置によってはファンにあたって回転しない。

8: Wed May 3 17:09:51 2023
その時にグラグラさせてしまってスロットが壊れた?

9: Wed May 3 17:11:51 2023
あと気になることと言えば、問題なく起動してASRockのドライバアップデートが走って再起動したときに真っ暗・HDDアクセスなし状態となり、電源オフオンした。

ただし、その時は正常に起動している。

10: Wed May 3 17:15:20 2023
気になるのはVGAだけでなくBOOTも点灯していることだ。
BOOTデバイスはM.2である。

11: Wed May 3 17:27:43 2023
BIOS(UEFI)はBIOS画面からできるようだ。

https://www.ictbs.co.jp/blog/asrock-bios-update/#i

やってみよう。
また構成を買えるのはメンドクサイが....

そう簡単に壊れたり不良品を掴むとも考えにくいんだよな....

12: Wed May 3 17:28:32 2023
でもいったんちゃんと動いたというのがな....
バージョンとかのせいなら一回も動かないでしょ.......

13: Thu May 4 08:14:10 2023
ドライブ類を全部抜く。
今までつけたままにしていたM.2 SSDも。これはWindowsをインストールした起動ドライブである。

すると、例のvga, boot LED点灯問題は起きなくなった。
起動ドライブがないのでBIOS画面になる。

M.2 SSDの故障あるいは不良だ!と確信しかけた.... いや、この時点では確信した.... しかし.....

今使っているドライブは、
a. M.2 1枚(起動ドライブ)
b. SSD 1枚
c. HDD 1枚
である。

aがダメなので、aの代わりに別のSATA(a2)ディスクをつなぎ、
DVDドライブにWindows10のインストールディスクを入れて起動する。
Press any key to installみたいなメッセージが出て、
キーを押してインストールに進む。(ここでkeyを押してもスルーされてBIOSに行ってしまうというおかしな挙動があったがキーボードを変えるなどしてなんとく進む)

Windows10インストール画面が表示され、無事にインストールは終わる。
グラフィックボードが故障している疑惑は完全に晴れた。


14: Thu May 4 08:20:20 2023
OSインストールが終わって、問題のM.2 SSDを初期化できないかと思い、
さして再起動するとダブルLED点灯問題が起きる。

「起動ディスクは別にもあるのにダメか... 違うスロットに変えてみよう」
それでも同じ。
「このM.2 SSDはどこにさしても起動しなくなるのか.... やれやれ....」

M.2を抜いて、再起動すると....... ダブルLED点灯問題発症。M.2 SSDは挿していないのに!

まさか.... 電源容量が足りないとかか?

起動ドライブのSSDを抜いてもとのSSD(a)を挿して起動。問題が起きずBIOS画面になる。

そのままSSD a を a2 に差し替えると問題発生。電源ではない。「起動ドライブにしたSSD」があるとダメだ。

どういう問題なのか。
規則性があり、やや込み入った条件の下で発生するのでソフトウェアバグっぽい気がする。

念のため32x2GB=64GBにしているメモリを1個だけ、32GBにしてみたがそれでも問題は起こる。

15: Thu May 4 08:22:12 2023
BIOSをアップデートしようと思ったが、
ASRock B760M Steel Legend WiFi
の新しいbiosはない。

今のバージョンは 1.08

発売は今年の1月で、価格コムのレビューとかも少ない。
16: Thu May 4 13:58:40 2023
https://faq.tsukumo.co.jp/index.php?solution_id=1316

「BIOS 」と書いたが、今使われているのはもうBIOSではなく「UEFI」と呼ぶ。
役割は似ている。
そしてUEFIには Compatibility Supported Module【CSM】という、
biosとの互換に関する設定がある。
17: Thu May 4 14:03:10 2023
すぐに確認できないのだが、今 disableになっているのではないだろうか。
まず、今回USBメモリからインストールしようとしたのだがboot候補として選べなかった。
DVDはディスクを入れたら読み込まれインストールできたので
なんでかなと思いつつインストールしたが、
そのインストール方法がUEFI非互換の方式で、
だからそのデバイスからブートしようとすると失敗するのでは?
18: Thu May 4 14:07:09 2023
パーツの故障や不良とは考えにくい。
動作に規則性や再現性がある。
bootの問題だし。

19: Thu May 4 14:15:23 2023
https://www.pc-master.jp/jisaku/bios-uefi.html

今回は新規インストールするので、
「UEFI」モードでインストールして、旧式との互換がどうこうを
気にしたくないのだが…

20: Thu May 4 14:15:25 2023
https://www.pc-master.jp/jisaku/bios-uefi.html

今回は新規インストールするので、
「UEFIモード」でインストールして、旧式との互換がどうこうを
気にしたくないのだが…

21: Thu May 4 14:20:42 2023
https://www.archlinux.site/2016/11/windows-10uefi-uefi-bios.html?m=1

22: Thu May 4 23:00:11 2023
まだよくわからないのだが
とりあえず無事インストールでき、再起動もできた。
やはりCSMはdisableで、enable にすることで起動ディスクにした
SSDドライブを挿して動かせた。

23: Thu May 4 23:03:43 2023
ただし、そのまま「biosモードインストール」すると
windows がまともにインストールされない。
インストーラーUSBメモリを使ってインストールしなおしたどうやら「UEFIモード」で
インストールできたようだ。

24: Thu May 4 23:05:04 2023
とにかく、CSM をenableにして道が開けた。


(追記)
CSMとはCompatibility Supported Moduleの略らしい。
この設定はUEFIのboot設定の一項目であり、デフォルトでは無効になっている。
有効にするとは、「BIOSモードでの起動も有効にする」ということになる。

CSMが無効だと起動しないということは、インストールした媒体(M.2 SSDにインストールしたWindows10)がBIOSモードでインストールされているということだ。

本来はUEFIモードでインストールしてCSMはデフォルトのまま無効にしておきたかった。
しかしWindowsをUEFIモードでインストールすることができなかった。



2023/05/23

raspbery pi を wifiルータにする

sudo su

#ip forwarding
/etc/systemctl.conf
net.ipv4.ip_forward=1

#iptables設定消去
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

#nat設定
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE


iptables-save > /etc/iptables.ipv4.nat

iptables-restore < /etc/iptables.ipv4.nat

#再起動しても有効にする
/etc/rc.local
# exit 0 の上に
sudo iptables-restore < /etc/iptables.ipv4.nat
#おまけ static route
# route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168
.1.76 eth0
# ip r
default via 172.16.11.254 dev wlan0 proto dhcp src 172.16.11.112 metric 303
10.0.0.0/24 via 192.168.1.76 dev eth0
172.16.11.0/24 dev wlan0 proto dhcp scope link src 172.16.11.112 metric 303
192.168.1.0/24 dev eth0 proto dhcp scope link src 192.168.1.254 metric 202

参考
Raspberry pi を NAT ルーター兼 DHCP + DNS サーバーにしたい - 子育てしながらエンジニアしたい

2023/05/15

約分その2

さっきの約分の問題はyoutubeで見かけたものなのだが、その動画では私がやったようなやり方で解くのではなかった。

3007/1067 であれば、2つの数の差を求める。

1940。

この数を素因数分解する。

2で割れる。970。また2で割れる。485。

4で割れるのか。485。

5で割れる。97。

1940=4x5x97


3007も、1067も、97で割れる。

つまり、公約数である。


2つの数の差の約数がなぜ元の数の約数になるのか。

直感的にはピンとこない。


約分、素因数分解、素数判定

約分、素因数分解、素数判定

この3つは実質同じことをする。

ある数について、約数があるかどうかを確かめる。


たとえば、「3007/1067 という分数を約分しなさい」という問題。

パっとみ、割れる数が思いつかない。2, 3, 5あたりはダメ。


すぐにできる約数を見つける方法は、

末尾が偶数... 2

各桁の数を足すと3の倍数... 3

末尾が5か0... 5


そして、2桁だったら素数は列挙してもそんなに時間はかからない。

2, 3, 5, 7, 11, 13, 17, 19, 23, 

くらいまではすぐ出る。


29, 31, 37, 41, 43, 47, 53, 

この辺から怪しくなってくるか


でも2桁だったら、「素数を列挙してその中にあるか」ではなく、

いくつかの数で割ってみればわかる。1分もかからないだろう。


また、桁数は10桁とか20桁とか、「どんな桁数であっても使える素数判定法」を見つけようというのでもない。


まあ、4、5桁くらい。


先ほど例にあげた、3007, 1067 といったような数字で使える、そんなに厳密でなくてもいい方法。


この例では、2つの数字がともに末尾が7となっている。

もしこれらの数字に約数があるならば、2つの数値をかけて結果の末尾(1の位)が7になる数字、ということである。


それはどういう数かと考えて、まず思ったのは、「末尾が7である数と、末尾が1である数の積」である。そして、これだけだと思った。

しかし、それだけではなく、3x9=27 でもある。


ただ、これだけわかればだいぶ楽だ。

3007について。

2, 3, 5 では割れないことはわかっている。

7は、微妙だが割ってみればすぐわかる。割れない。

8, 9, 10 はそれぞれその約数で割れないのですでに対象外。

2桁になっていく。


4桁の数で、「約分しなさい」という問題だから、おそらく2桁x2桁になるのだろう。

候補は下1桁が1, 3, 7, 9

これくらいなら順番に割ってもよさそうだが、

目的はこの問題を解くことではなく簡易的でもいいから判定法を見つけることなので、

もう少し考える。


3007という数の大きさ。


3000は、10x300, 15x200, 30x100 などである。(ほかにもあるが、たとえば。)

ここに登場する、10, 15, 30, 100, 200, 300 などをいじって、

先ほど候補として絞った「下一桁が1と7、あるいは3と9」にしたらどうだろうか?

10x300→ 11x299, 13x299, 17x291

15x200→13x209, 17x191, 19x193

30x100→31x97, 33x99, 29x93


適当にやっただけなので、ざっと見ると

13x209, 29x93は3000に満たないので除外


11x299, 13x299, 17x291

17x191, 19x193

31x97, 33x99


13x299は明らかに大きい

19x193も大きい

33x99も大きい


11x299, 17x291

17x191, 31x97,


おっと、末尾が7にならないのが混じっていた。

17x291, 17x191, 31x97,


17x291=17x(300-9)=5100-153

17x191=17x(200-9)=3400-153

31x97=31x(100-3)=3100-93=3007 ... これ!



1067は...

同様にやってもいいのだが

すでに3007=31x97が判明しているので

どっちかで割れるであろう。


31x37かな

(30+1)x37 ... 違う

31x27=(30+1)x27=810+27... 違う


97x11は...

(100-3)x11=1100-33=1067... これ!


ちなみに1067の方を先にやった場合の候補は


1067だと、1000との差がやや大きい。

1000=10x100, 20x50, 500x2, 330x3+α, 250x4


で、末尾が7になるから

11x97, 21x47, 

500x2, 330x3, 250x4は除外


もう答えを知ってるから 11x97がすぐ出てきちゃったけど...




2023/03/27

ラズパイ4が熱いのでケースを変えた

 


自宅で動かしているラズベリーパイ4にアクセスできない。
pingも返ってこない。

見ると、電源コード(USB-C)のが抜けているとかいうこともないが
触ると熱い。

公式ケースみたいなのを使っていたが、
ケース自体がヒートシンクになっているようなのを買った。

ラズパイのケースにファンとかつけるのは違うでしょ... 
と思う。

見た目もカッコイイ。

しかしラズパイの価格が高騰していますね....