WSL2のKaliからローカルVMのMetasploitableに接続する

 article  Comments Off on WSL2のKaliからローカルVMのMetasploitableに接続する
Sep 292020
 

WSL2はHyper-Vテクノロジー下で動作するようになりました。

仮想マシンとして動作するようになり、速度も向上、Windowsファイルシステムの呪縛から解き放たれとよいことづくめのように思えますが、同ホスト上のHyper-V仮想マシンと接続できないという問題があります。

WSL2の仮想マシンは独自のHyper-V仮想スイッチ(デフォルトだとvEthernet (WSL))に接続されるためです。
当面の解決方法ですが、Hyper-V仮想マシンもWSL仮想スイッチに接続するか、下記Issueのコメントにあるように仮想スイッチ間の転送を許可することで接続できるようになります。

After converting to WSL2 no longer able to route traffic to other VSwitches on the same host. #4288

Get-NetIPInterface | where {$_.InterfaceAlias -eq 'vEthernet (WSL)' -or $_.InterfaceAlias -eq 'vEthernet (Default Switch)'} | Set-NetIPInterface -Forwarding Enabled

ただ残念ながらホスト再起動でリセットされてしまうようです。Administrator権限での実行が必要なこともあり対応が面倒ですので、よい対策が生まれることを期待したいと思います。

pamアップデートでlogin不可に

 article  Comments Off on pamアップデートでlogin不可に
Aug 212020
 

Arch Linuxをアップグレードしたらloginできなくなりました。

インストーラーのISOで起動して/var/log/pacman.logを確認すると、pam関係のアップグレードが実行されています。

[ALPM] warning: /etc/pam.d/system-login installed as /etc/pam.d/system-login.pacnew
[ALPM] upgraded pambase (20190105.1-2 -> 20200721.1-2)
[ALPM] upgraded pam (1.3.1-2 -> 1.4.0-3)

あ。lxcをつかうために/etc/pam.d/system-authにpam_cgfs.soのエントリーを追加していたのが原因でした。

Linux Containers – ArchWiki

/usr/lib/security/pam_cgfs.soはpambaseパッケージからlxcパッケージに移動したとのことで、system-loginファイルをデフォルト(.pacnewのファイル)に戻して解決。

lxcパッケージは削除したけど/etc/pam.d/system-authの設定を戻していなかったのが敗因ですが、こういった問題を調べてちょこちょこ解決して使うのもなかなか楽しいものです。

Rakuten UN-LIMITのSIMでLTE接続

 article  Comments Off on Rakuten UN-LIMITのSIMでLTE接続
Jul 292020
 

Rakuten UN-LIMITを契約しまして、ThinkPad T480s(Fibocom Wireless Inc. L850-GL)のArch Linuxで接続できましたのでご報告です。

ThinkPad T480sのArch LinuxでFibocom L-850GLモデムを使う方法は過去記事をご覧ください。

残念ながらSIMを挿してNetworkManagerでAPN設定するだけでうはうまくいかず、ModemManagerで調査していきます。

mmcliの結果では3Gのシグナルは掴んでいるようですが、レジスターができていない様子。

$ mmcli -L
/org/freedesktop/ModemManager1/Modem/0 [Fibocom Wireless Inc.] L850-GL
$ mmcli -m 0
((snip))
Status | unlock retries: sim-pin2 (3)
| state: enabled
| power state: on
| signal quality: 29% (cached)
((snip))
3GPP | imei: XXXXXXXXXXXXXXX
| enabled locks: fixed-dialing
| registration: idle

ちなみに接続できるIIJmioのSIMでは以下のように表示されていました。

  Status   |       unlock retries: sim-pin2 (3)
           |                state: registered
           |          power state: on
           |          access tech: lte
           |       signal quality: 19% (recent)
((snip))
  3GPP     |                 imei: XXXXXXXXXXXXXXX
           |        enabled locks: fixed-dialing
           |          operator id: 44010
           |        operator name: NTT DOCOMO
           |         registration: home

3GPPスキャンの結果はこんな感じで、電波自体は認識できているようでしたが、Rakuten UN-LIMITのMMC=440, MNC=11は出てきません。

$ mmcli -m 0 --3gpp-scan
---------------------
3GPP scan | networks: 44110 - 44110 (gprs, forbidden)
| 44051 - KDDI (gprs, forbidden)
| 44020 - SoftBank (gprs, forbidden)
| 44050 - KDDI (gprs, forbidden)
| 44010 - JP DOCOMO (gprs, forbidden)
| 44000 - 44000 (gprs, forbidden)
| 44010 - JP DOCOMO (gprs, forbidden)
| 44052 - 44052 (gprs, forbidden)
| 44100 - 44100 (gprs, forbidden)
| 44020 - SoftBank (gprs, forbidden)
| 44053 - 44053 (gprs, available)

ですので、3GPP Registerを実行してもエラーになります。

$ mmcli -m 0 --3gpp-register-home
error: couldn't register the modem: 'GDBus.Error:org.freedesktop.ModemManager1.Error.MobileEquipment.GprsUnknown: Unsupported error (0): unknown'
$ mmcli -m 0 --3gpp-register-in-operator=44011
error: couldn't register the modem: 'Timeout was reached'

ふと3GPP scan結果で唯一availableになっていた44053に登録を試みたらどうなるでしょう。調べて見ると44053はKDDIの新しいPLMN番号(MCC+MNC)で、Rakuten向けのローミング回線らしいです。

$ mmcli -m 0 --3gpp-register-in-operator=44053
successfully registered the modem

おお。成功です。mmcliでのStatus、3GPP表示もいい感じになりました!

  Status   |       unlock retries: sim-pin2 (3)
           |                state: registered
           |          power state: on
           |          access tech: lte
           |       signal quality: 25% (recent)
((snip))
  3GPP     |                 imei: XXXXXXXXXXXXXXX
           |        enabled locks: fixed-dialing
           |          operator id: 44053
           |        operator name: Rakuten
           |         registration: home
((snip))

この状態でGSM用のNetworkManager設定を用意して接続すれば完了!
引き続きローミング時の切り替えを自動で実施する方法があるか調べようと思いますが、とりあえず接続できたので満足です。

Arch LinuxでWiFi接続不可

 article  Comments Off on Arch LinuxでWiFi接続不可
Feb 112020
 

Arch Linuxで突如WiFiに接続できなくなりまして、ジャーナルを見ていたら以下のようなログが。

[   25.669989] ------------[ cut here ]------------
[   25.670056] WARNING: CPU: 4 PID: 1026 at net/wireless/nl80211.c:7035 nl80211_get_reg_do+0x228/0x290 [cfg80211]
[   25.670059] Modules linked in: sd_mod snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal joydev intel_powerclamp mousedev coretemp kvm_intel uvcvideo videobuf2_vmalloc elan_i2c videobuf2_memops kvm vide
obuf2_v4l2 i915 iTCO_wdt btusb iTCO_vendor_support iwlmvm videobuf2_common snd_hda_intel btrtl btbcm mei_hdcp intel_rapl_msr irqbypass crct10dif_pclmul crc32_pclmul videodev btintel snd_intel_dspcfg mac80211 bluetooth wmi_bmof mc snd_hda_
codec ghash_clmulni_intel intel_wmi_thunderbolt uas usb_storage aesni_intel libarc4 scsi_mod ecdh_generic crypto_simd ecc cryptd i2c_algo_bit snd_hda_core iwlwifi nls_iso8859_1 glue_helper nls_cp437 snd_hwdep intel_cstate vfat drm_kms_hel
per fat snd_pcm intel_uncore intel_rapl_perf psmouse input_leds cfg80211 pcspkr e1000e drm i2c_i801 snd_timer intel_gtt agpgart mei_me thunderbolt nxp_nci_i2c intel_xhci_usb_role_switch syscopyarea mei intel_lpss_pci processor_thermal_dev
ice nxp_nci roles sysfillrect intel_lpss nci
[   25.670124]  intel_rapl_common sysimgblt idma64 ucsi_acpi fb_sys_fops intel_pch_thermal intel_soc_dts_iosf typec_ucsi typec tpm_crb nfc wmi thinkpad_acpi nvram ledtrig_audio rfkill snd tpm_tis tpm_tis_core int3403_thermal battery sound
core int340x_thermal_zone ac tpm int3400_thermal evdev acpi_thermal_rel rng_core mac_hid pkcs8_key_parser crypto_user ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 serio_raw atkbd libps2 xhci_pci crc32c_intel xhci_hcd i8042 se
rio
[   25.670170] CPU: 4 PID: 1026 Comm: wpa_supplicant Tainted: G        W         5.5.2-arch1-1 #1
[   25.670172] Hardware name: LENOVO 20L7CTO1WW/20L7CTO1WW, BIOS N22ET60W (1.37 ) 11/25/2019
[   25.670214] RIP: 0010:nl80211_get_reg_do+0x228/0x290 [cfg80211]
[   25.670219] Code: 89 ef c7 44 24 0c 01 00 00 00 e8 d3 d2 91 c5 85 c0 74 cc e9 ff fe ff ff 48 89 ef 48 89 04 24 e8 4e 3e be c5 48 8b 04 24 eb 89 <0f> 0b 48 89 ef e8 3e 3e be c5 b8 ea ff ff ff e9 75 ff ff ff b8 97
[   25.670222] RSP: 0018:ffffa63480ebba60 EFLAGS: 00010202
[   25.670226] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000000
[   25.670228] RDX: ffff8ecc14168008 RSI: 0000000000000000 RDI: ffff8ecc14168300
[   25.670230] RBP: ffff8ecc126c8400 R08: 0000000000000004 R09: ffff8ecc1219c014
[   25.670232] R10: 000000000000001e R11: ffffa63480ebbb20 R12: ffffa63480ebbb20
[   25.670234] R13: ffff8ecc1219c014 R14: 0000000000000000 R15: ffff8ecc14168300
[   25.670238] FS:  00007fd9d44f97c0(0000) GS:ffff8ecc1a700000(0000) knlGS:0000000000000000
[   25.670240] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   25.670243] CR2: 000055b3aed81018 CR3: 0000000630858001 CR4: 00000000003606e0
[   25.670245] Call Trace:
[   25.670267]  genl_rcv_msg+0x1d2/0x480
[   25.670276]  ? __alloc_skb+0x87/0x1d0
[   25.670282]  ? kmalloc_large_node+0x84/0x90
[   25.670289]  ? genl_family_rcv_msg_attrs_parse+0x100/0x100
[   25.670293]  netlink_rcv_skb+0x75/0x140
[   25.670299]  genl_rcv+0x24/0x40
[   25.670304]  netlink_unicast+0x199/0x240
[   25.670309]  netlink_sendmsg+0x243/0x480
[   25.670316]  sock_sendmsg+0x5e/0x60
[   25.670321]  ____sys_sendmsg+0x21b/0x290
[   25.670326]  ? copy_msghdr_from_user+0xe1/0x160
[   25.670333]  ___sys_sendmsg+0x9e/0xe0
[   25.670346]  __sys_sendmsg+0x81/0xd0
[   25.670357]  do_syscall_64+0x4e/0x150
[   25.670365]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[   25.670370] RIP: 0033:0x7fd9d485f7b7
[   25.670374] Code: 64 89 02 48 c7 c0 ff ff ff ff eb bb 0f 1f 80 00 00 00 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2e 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 89 54 24 1c 48 89 74 24 10
[   25.670377] RSP: 002b:00007ffc2b9fa148 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
[   25.670380] RAX: ffffffffffffffda RBX: 000055b3aed4d620 RCX: 00007fd9d485f7b7
[   25.670382] RDX: 0000000000000000 RSI: 00007ffc2b9fa180 RDI: 0000000000000004
[   25.670385] RBP: 000055b3aed4d530 R08: 0000000000000004 R09: 000055b3aed4a010
[   25.670387] R10: 00007ffc2b9fa254 R11: 0000000000000246 R12: 000055b3aed7c9d0
[   25.670389] R13: 00007ffc2b9fa180 R14: 00007ffc2b9fa254 R15: 000055b3aed7e130
[   25.670397] ---[ end trace a3d3dd4cae3c209a ]---

wpa_supplicant起動時に発生しているようで、ものは試しにとiwdを使ってみましたが、同じようにエラーになります。いろいろ調べた結果 FS#65041 – Unable to associate with WiFi wireless network with kernel 5.4.7-arch1-1 と同じ症状のようで、rfkillでwlanをunblockedにしたら接続できるようになりました。

$ sudo rfkill unblock wlan

ちなみにrfkillコマンドはutil-linuxパッケージで提供されているのですが、こちらのパッケージではrfkill unblock用のsystemdサービスも用意されていて、以下のとおり有効化することで毎回起動時にunblockされるようになります。

$ sudo systemctl enable rfkill-unblock@wlan.service

PVの特定位置にLVを作成する

 article  Comments Off on PVの特定位置にLVを作成する
Feb 012020
 

LVMでLogical Volume(LV)をアロケーションする際、Phisical Volume(PV)のPhisical Extent(PE)の位置を指定することができます。

Volume Group(VG)を構成する特定PVの最後のほうにLVをアロケーションすることも可能ということです。

現在のPE割り当て状態はpvdisplayの-m(マップ)オプションで確認することができます。

$ sudo pvdisplay -m /dev/nvme0n1p2
--- Physical volume ---
   PV Name               /dev/nvme0n1p2
   VG Name               vg_data
   PV Size               444.09 GiB / not usable 3.00 MiB
   Allocatable           yes 
   PE Size               4.00 MiB
   Total PE              113687
   Free PE               17431
   Allocated PE          96256
   PV UUID               vu3SHx-qCaA-MN48-NXZT-yH1A-uA3t-rc0UcO

--- Physical Segments ---
   Physical extent 0 to 65535:
     Logical volume    /dev/vg_data/lv_root
     Logical extents    0 to 65535
  Physical extent 65536 to 113686:
     FREE

$

上によるとPEの65536から113686まで空いていることになります。

LV作成時にPVの最後にPE開始位置と終了位置を設定することで特定の場所に作成することができるようになります。

上記PV空き領域の中の末尾に40GiBのLVを作成する場合は、以下のように指定することになります。Extent開始位置は末尾から逆算して算出します。

$ sudo lvcreate -L40G -n lv_test vg_data /dev/nvme0n1p2:103447-113686
  Logical volume "lv_test" created.
$

作成できました。pvdisplayで確認すると、PEの途中にFREEの領域があり末尾にアロケーションされていることがわかります。

$ sudo pvdisplay -m /dev/nvme0n1p2
  --- Physical volume ---
  PV Name               /dev/nvme0n1p2
  VG Name               vg_data
  PV Size               444.09 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              113687
  Free PE               37911
  Allocated PE          75776
  PV UUID               vu3SHx-qCaA-MN48-NXZT-yH1A-uA3t-rc0UcO
   
  --- Physical Segments ---
  Physical extent 0 to 65535:
    Logical volume	/dev/vg_data/lv_root
    Logical extents	0 to 65535
  Physical extent 65536 to 103446:
    FREE
  Physical extent 103447 to 113686:
    Logical volume	/dev/vg_data/lv_test
    Logical extents	0 to 10239
   
$
 Posted by at 1:11 am  Tagged with:

nftables環境でlibvirtを使うときはebtablesではなくiptables-nftを入れればよかった

 article  Comments Off on nftables環境でlibvirtを使うときはebtablesではなくiptables-nftを入れればよかった
Feb 012020
 

Arch LinuxでVirtualBoxからlibvirtへの切り替えを試みています。

Arch Linuxのlibvirtに関するWikiページを見ていると、libvirtでdefaultのNATテーブルを使う場合はebtablesとdnsmasqを入れるようにとの記載があります。

私はiptablesではなくnftablesに切り替えてしまったので、ebtablesを入れても効かないんではなかろうかと思いつつ調べましたら、nftables環境でiptablesやebtablesコマンドを使えるようにするiptables-nftというパッケージがあることを発見したので、そちらを導入して解決。

ちなみにnftables環境でもiptablesパッケージを使うことはできるのですが、こちらのiptablesコマンドではnftablesでの設定内容は表示されません。iptables-nftパッケージのiptablesコマンドであれば、nftablesで設定した内容も表示することができます。

Fibocom L-850GLのUSBモデム化その後(2)

 article  Comments Off on Fibocom L-850GLのUSBモデム化その後(2)
Dec 152019
 

何がきっかけかわかりませんがモバイル接続できるようになりました!
IIJmioの タイプDデータ専用SIMです。開発者に感謝!
https://github.com/abrasive/xmm7360

$ mmcli -L
    /org/freedesktop/ModemManager1/Modem/2 [Fibocom Wireless Inc.] L850-GL
$ mmcli -m 2
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/2
           |         device id: adde8d2a200ae40256de3f06bf7f000d71d71f2b
  -----------------------------
  Hardware |      manufacturer: Fibocom Wireless Inc.
           |             model: L850-GL
           | firmware revision: 18500.5001.08.02.24.09
           |      h/w revision: V1.0.4
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id: XXXXXXXXXXXXXXX
  -----------------------------
  System   |            device: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-6
           |           drivers: cdc_mbim
           |            plugin: Fibocom
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (mbim), wwan0 (net)
  -----------------------------
  Numbers  |               own: XXXXXXXXXXX
  -----------------------------
  Status   |    unlock retries: sim-pin2 (3)
           |             state: connected
           |       power state: on
           |       access tech: hsdpa
           |    signal quality: 41% (cached)
  -----------------------------
  Modes    |         supported: allowed: 3g, 4g; preferred: none
           |           current: allowed: 3g, 4g; preferred: none
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6
  -----------------------------
  3GPP     |              imei: XXXXXXXXXXXXXXX
           |     enabled locks: fixed-dialing
           |       operator id: 44010
           |     operator name: NTT DOCOMO
           |      registration: home
           |               pco: 
           |                    0: (complete) '272280000D04CAE80202000D04CAE80203802110030100108106CAE802028306CAE80203'

  -----------------------------
  SIM      |         dbus path: /org/freedesktop/ModemManager1/SIM/2
  -----------------------------
  Bearer   |         dbus path: /org/freedesktop/ModemManager1/Bearer/1
$ 

Fibocom L-850GLのUSBモデム化その後(1)

 article  Comments Off on Fibocom L-850GLのUSBモデム化その後(1)
Nov 092019
 
ThinkPad T480sのLTEモジュール(Fibocom L-850GL)をUSBモデムとして認識させるでUSBモデムとして認識するようになったものの、肝心のモバイルネットワーク接続ができません。

もう一度Tools for the Fibocom L850-GL / Intel XMM7360 LTE modemのサイトを眺めていると”FCC Lock”の記述があります。
mmcliでモデムを確認すると、Statusでdisabledになっている部分があるのですが、こちらの影響でしょうか。

$ mmcli -m 0
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/0
           |         device id: adde8d2a200ae40256de3f06bf7f000d71d71f2b
  -----------------------------
  Hardware |      manufacturer: Fibocom Wireless Inc.
           |             model: L850-GL
           | firmware revision: 18500.5001.08.02.24.09
           |      h/w revision: V1.0.4
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id: XXXXXXXXXXXXXXX
  -----------------------------
  System   |            device: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-6
           |           drivers: cdc_mbim
           |            plugin: Fibocom
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (mbim), wwan0 (net)
  -----------------------------
  Numbers  |               own: NNNNNNNNNNN
  -----------------------------
  Status   |    unlock retries: sim-pin2 (3)
           |             state: disabled
           |       power state: low
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 3g, 4g; preferred: none
           |           current: allowed: 3g, 4g; preferred: none
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6
  -----------------------------
  3GPP     |              imei: XXXXXXXXXXXXXXX
           |     enabled locks: fixed-dialing
  -----------------------------
  SIM      |         dbus path: /org/freedesktop/ModemManager1/SIM/0

IMEIや電話番号は伏せています。

もともと人柱覚悟で始めたことですのでFCC Lockのところに記述されているATコマンドを実行してみます。

$ sudo screen /dev/ttyACM0
+PBREADY
at@nvm:fix_cat_fcclock.fcclock_mode=0

OK
at@store_nvm(fix_cat_fcclock)
Committed to NVM flash...
OK
AT+CFUN=15
$ mmcli -L
    /org/freedesktop/ModemManager1/Modem/1 [Fibocom Wireless Inc.] L850-GL
$ mmcli -m 1
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/1
           |         device id: adde8d2a200ae40256de3f06bf7f000d71d71f2b
  -----------------------------
  Hardware |      manufacturer: Fibocom Wireless Inc.
           |             model: L850-GL
           | firmware revision: 18500.5001.08.02.24.09
           |      h/w revision: V1.0.4
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id: XXXXXXXXXXXXXXX
  -----------------------------
  System   |            device: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-6
           |           drivers: cdc_mbim
           |            plugin: Fibocom
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (mbim), wwan0 (net)
  -----------------------------
  Numbers  |               own: NNNNNNNNNNN
  -----------------------------
  Status   |    unlock retries: sim-pin2 (3)
           |             state: enabled
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 3g, 4g; preferred: none
           |           current: allowed: 3g, 4g; preferred: none
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6
  -----------------------------
  3GPP     |              imei: XXXXXXXXXXXXXXX
           |     enabled locks: fixed-dialing
           |      registration: idle
  -----------------------------
  SIM      |         dbus path: /org/freedesktop/ModemManager1/SIM/1
$ 

Statusがenabledになりました!

ところがnm-connection-editorでMobile NetworkのAPN設定をおこなっても接続できません。。。そう簡単にはいかないものですね。

ThinkPad T480sのLTEモジュール(Fibocom L-850GL)をUSBモデムとして認識させる

 article  Comments Off on ThinkPad T480sのLTEモジュール(Fibocom L-850GL)をUSBモデムとして認識させる
Oct 222019
 

ThinkPad X1やT480sにはLTEモジュールとしてFibocom L850-GLが搭載できます。こちらWindowsでは問題なく使えるのですがLinuxでは使えません。

Fibocomのサイトに掲載されている仕様ではLinuxもサポートされているように書かれているのですが、これはUSBモードの場合のみのようでLinuxで認識されるPCIeインターフェースの状態では利用できないようです。
Solved: WWAN Fibocom L850-GL and Linux support – Lenovo Communityなどでも語られています。

使える方法がないものかいろいろ散策しておりましたら、「Linux drivers for XMM 7360 LTE #7」の情報を見つけまして、この中のコメントにPCIeからUSBモードにする処理を作成したとの情報を発見。
Tools for the Fibocom L850-GL / Intel XMM7360 LTE modem
ちょっと人柱覚悟でArch Linuxにて試してみましたので覚書です。

ちなみにモデムとしては認識されるようになったもののMobile Network接続はまだうまくできておりません。

まずacpi_callカーネルモジュールをインストールします。

$ sudo pacman -S acpi_call

次に先ほど紹介したgitリポジトリーをcloneします。

$ git clone https://github.com/abrasive/xmm7360.git

変更前にPCIとUSBのデバイスを見てみると、LTEモジュールはPCIで認識されていることがわかります。

$ lspci | grep -i modem
02:00.0 Wireless controller [0d40]: Intel Corporation XMM7360 LTE Advanced Modem (rev 01) $ lsusb | grep -i modem $

先ほどのGitHubからcloneしたxmm2usbを実行してみます。

$ cd xmm7360
$ sudo ./xmm2usb
Found XMM7360 modem at 0000:02:00.0 (_SB_.PCI0.RP04.PXSX) Parent port is at 0000:00:1c.3
Disabling PCIe link… Resetting modem…
OK!
$

PCIリンクを無効にしたとのメッセージ。再びlspciとlsusb実行してみます。

$ lspci | grep -i modem
02:00.0 Wireless controller [0d40]: Intel Corporation XMM7360 LTE Advanced Modem (rev ff)
$ lsusb | grep -i modem
Bus 001 Device 006: ID 8087:095a Intel Corp. MODEM + 2 CDC-ACM + 3 CDC-NCM + SS
$

USBにモデムが出現するようになりました。PCIにも出現していますが、(rev ff)となっています。

続けてGitHubのページにあるように、MBIM(Mobile Broadband Interfaceモード?)へのスイッチを実行します。

$ sudo screen /dev/ttyACM0
AT+GTUSBMODE?
AT+GTUSBMODE=7
AT+CFUN=15
$

そうするとlsusbでの出力が以下に変わりました。

$ lsusb | grep -i fibocom
Bus 001 Device 006: ID 2cb7:0007 Fibocom Wireless Inc. L850-GL

dmesgをみてもUSBモデムと認識されているようです。

[  162.799214] usb 1-6: new high-speed USB device number 5 using xhci_hcd
[  162.940604] usb 1-6: New USB device found, idVendor=8087, idProduct=07f5, bcdDevice= 0.00
[  162.940612] usb 1-6: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[  169.651754] usb 1-6: USB disconnect, device number 5
[  175.462630] usb 1-6: new high-speed USB device number 6 using xhci_hcd
[  175.620153] usb 1-6: New USB device found, idVendor=2cb7, idProduct=0007, bcdDevice= 3.33
[  175.620162] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  175.620167] usb 1-6: Product: L850-GL
[  175.620172] usb 1-6: Manufacturer: Fibocom Wireless Inc.
[  175.620176] usb 1-6: SerialNumber: 004999010640000
[  175.738001] cdc_acm 1-6:1.2: ttyACM0: USB ACM device
[  175.738980] cdc_acm 1-6:1.4: ttyACM1: USB ACM device
[  175.739743] cdc_acm 1-6:1.6: ttyACM2: USB ACM device
[  175.740493] usbcore: registered new interface driver cdc_acm
[  175.740494] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[  175.742909] usbcore: registered new interface driver cdc_ncm
[  175.744812] usbcore: registered new interface driver cdc_wdm
[  175.793275] cdc_mbim 1-6:1.0: setting rx_max = 16384
[  175.794443] cdc_mbim 1-6:1.0: cdc-wdm0: USB WDM device
[  175.794574] cdc_mbim 1-6:1.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-6, CDC MBIM, a2:a6:4d:05:3f:91
[  175.794616] usbcore: registered new interface driver cdc_mbim

ちなみに冒頭でも述べましたようにMobile Network接続には至っておりません。またPC再起動後は毎回xmm2usbコマンドの実行が必要です。

Arch Linuxでswayを使う

 article  Comments Off on Arch Linuxでswayを使う
Jun 172019
 

先日購入したThinkPad T480sにArch Linuxを入れて使っています。
最初はGNOMEデスクトップ環境にしていましたが、タイル型Window Managerにしたくなり、折角Waylandで動いているのだからとswayを使ってみました。

パッケージはステータスバーにi3statusを使いますが、アプリケーションメニューのi3-dmenu-desktopとdmenuは動かないらしいので、j4-dmenu-desktopとbemenuを導入します。

$ sudo pacman -S sway i3status bemenu
$ yay j4-dmenu-desktop

パッケージデフォルトの設定は/etc/sway/configにありますので、そちらを~/.config/sway/configにコピーして以下の設定を追加しました。

ターミナル設定はurxvtd+urxvtcに変更

set $term urxvtc
exec urxvtd -q -o -f

メニューはj4-dmenu-desktop+bemenuに変更

set $menu j4-dmenu-desktop --dmenu='bemenu -i --nb "#3f3f3f" --nf "#dcdccc" --fn "pango:DejaVu Sans Mono 12"' --term='urxvtc'

ステータスコマンドはi3statusに変更

status_command i3status

WaylandではXのキーマップ設定が効かないので、swayで日本語キーボート設定を追加

# keymap
input * xkb_layout  jp
input * xkb_model   jp106
input * xkb_options ctrl:nocaps

fcitxの起動設定を追加

exec fcitx-autostart

i3のときもそんなにカストマイズして使っていたわけではないので、上の設定で今のところ不満なく動いています。

 Posted by at 11:48 pm  Tagged with: