情報技術の四方山話

AI、IoT、ヤマハルータ、VPN、無線LAN、Linux、クラウド、仮想サーバと情報セキュリティのよもやま話

Linux/WindowsデスクトップでLogicool Bluetoothデバイスを切り替え利用-仕事場改善

2021-02-11 08:50:56 | Windowsの備忘録
事務所のLinuxサーバ管理のために無線キーボードとマウスを使い、適宜USBアダプタを差し替えようとしています。Bluetoothで試して失敗です(笑

理由は、サーバーの場合は、初期設定不要の、挿せばつながる機種が必須です。
この場合は、メーカー独自の無線キーボードとマウスを使うことになり、これまでにMicorosoft製のマウスとキーボードを使ったことがあります。

Bletoothではペアリングの操作が必要なので、サーバー側もデスクトップ操作が必要になります。今回の対象はサーバーですから、デスクトップをインストールしていないのです。
Bluetoothをサーバで利用することはあっさり諦め、Linuxデスクトップと、Windows10デスクトップ間で切り替えながら使うことにしました。

■Linuxで接続が完了した画面


今回のマウスは2つキーボードは3つのBluetoothPCとつなぐことができます。なので、LinuxPCとWindowsPCそれぞれにUSB-Bluetoothアダプタを取り付けて、ペアリングすればできあがり。のはずでした。

Linux/UbuntuStudio 20.04.02 LTSでは、キーボードのペアリングに失敗しました。同じキーボードをWindowsとペアリングするとうまく行きますが、ペアリングの過程でパスワード番号の入力がもとめられます。Linuxではパスワード番号の入力欄が出てこないのです。そこでBluetooth管理画面を使って「信頼できるデバイス」にマークをし、接続を強行。無理やりパスワード番号無しでつなぎ込みました。

この記事はLinux日本語デスクトップで、Bluetooth接続したキーボードとマウスを使い作成しています。

■USB-Bluetooth: ELECOM LBT-UAN05C2/N Bluetooth®4.0 LE対応


■マウス/キーボード: logicool M590 / K380


いつもアクセスありがとうございます。有線接続ではKVMが必要なところが、デバイスの機能のみで同じことが実現できました。

コメント

WSL2(Windows Subsystem for Linux 2)が降りてきました

2020-12-18 08:26:27 | Windowsの備忘録
こんにちは。
私の常用WIndows 10 ProがUpdateし、WSL2(Windows Subsystem for Linux 2)が利用可能になりました。Windows 10 Pro上のLinuxは、これで完全にネイティブで動きます。早速、設定を済ませUbuntu 20.04 LTSの環境はWSL2化しています。

もう一つのUbuntu 18.04 LTSはWSLのままです。理由は以下の通り。
WLS2は完全な仮想マシン上でWindowsとは独立にLinuxOSが走ります。そのため、WLS2のLinuxは、仮想マシン用のネットワークに接続しています。仮想レイヤネットワークを外部につなぐソフトルータを通じて、Windows 10のLANのIPに変換され、外部と通信します。このネットワーク構造の変更に伴い、WLS2上のLinuxには新しいプライベートアドレスが振られています。また、これまで利用できていたグローバルIPv6が付与されなくなりました。

この形は、一般的な仮想化ソフトウエアで実現されるものと相似です。仕事上、頻繁にIPv6化したLinux shellをつかうので、IPv6を直収できるWLSを残しました。WLS2上のLinuxでは、Docker等これまでできなかったことを試して行くことになります。また、クローバルIPv6が来るように調整します。

WSL2(Windows Subsystem for Linux 2)が降りてきました。待望のアップデートです。
コメント

Windows/nslookupでFQDNホストのIPを調べる

2020-12-06 20:07:08 | Windowsの備忘録
今回はWindows/nslookupでホストのIPを調べる方法です。
WindowsでのDNSの情報を調べるコマンドはnslookupです。
直近のDNSだけでなく、Public DNS等、DNSを指定して調べることができます。

■DNSサーバをIP指定で確認
PS C:\Users\taniy> nslookup www.takumigiken.biz 1.1.1.1
サーバー: one.one.one.one
Address: 1.1.1.1
DNS request timed out.
timeout was 2 seconds.
権限のない回答:
名前: www.takumigiken.biz
Address: 153.149.170.198

■DNSサーバをFQDN指定で確認
PS C:\Users\taniy> nslookup www.takumigiken.biz one.one.one.one
サーバー: one.one.one.one
Address: 1.1.1.1
権限のない回答:
名前: www.takumigiken.biz
Address: 153.149.170.198

■DNSサーバ指定無しで確認
PS C:\Users\taniy> nslookup www.takumigiken.biz
サーバー: ns1.mopera.net
Address: 220.159.212.200
権限のない回答:
名前: www.takumigiken.biz
Address: 153.149.170.198
(*)DNSサーバはPCが参照しているものが表示されます。

いつもアクセスありがとうございます。WindowsでIPアドレスを調べる方法です。
コメント

WindowsでCPUコアとスレッドの数を簡単に確認するショートカット

2020-11-26 05:52:58 | Windowsの備忘録
今日は「WindowsでCPUコアとスレッドの数を簡単に確認するショートカット」です。
ショートカットを覚えたほうが簡単ですね。

[CTRL]+[SHIFT]+[ESC]



いつもアクセスありがとうございます。ハードウエアの状態とスペックを簡単に知ることができました。ショート・カットは便利です。
コメント

Windows 10のWSLをコマンドで利用可能にするには

2020-09-22 23:43:16 | Windowsの備忘録
今回は「Windows 10のWSLをコマンドで利用可能にするには」です。
MicrosoftはWindows上でのLinux環境を提供しています。
WSL(Windows Sub system for Linux)は、ほぼ完全なLinux環境を使うことができ、試験的にプログラムやスクリプトを書いて動かすにとても便利です。
さらにWindows Terminalと併用するとLinuxコンソールが使いやすくなります。どちらもMicrosoft Storeからダウンロードしてインストールすることができ、とても簡単です。私は"Ubuntu"と”Windows Terminal”をインストールしました。

さて、そのWSLを使うためには、まずWindowsの設定を変更する必要があります。管理者権限のPowerShellで実行します。このコマンドを実行する前でもWSLのインストールはできます。WSL初回起動時に設定を促されます。設定はGUIからもできます。

■Microsoft の公式ガイド

■コマンドライン
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

■コマンド実行例

いつもアクセスありがとうございます。引き続き、よろしくお願いします。
コメント

WSL2は極めてシンプル-Ubuntu 20.04.LTSを起動(その1)

2020-06-05 23:52:02 | Windowsの備忘録
今日は「WSL2は極めてシンプル-Ubuntu 20.04.LTSを起動(その1)」です。
WSL2を起動したところ「initとbashのみ」見えています。起動直後はこれだけです。
freeをすると、PCハードのメモリー領域がそのまま見えています。



takumi@DESKTOP-882HI3T:/mnt/c/Users/taniy$ free
total used free shared buff/cache available
Mem: 9703440 55592 9616440 68 31408 9493588
Swap: 3145728 0 3145728
takumi@DESKTOP-882HI3T:/mnt/c/Users/taniy$




コメント

Windows 10 Version 2004 /May 2020 Updateが配布開始-大型で再起動が数回必要です

2020-05-31 22:00:43 | Windowsの備忘録
今回は注意喚起「Windows 10 Version 2004 /May 2020 Updateが配布開始-大型で再起動が数回必要です」です。

もうすぐ「Windows 10 May 2020 Update」が配布開始になります。自動更新になっているWindows 10は長時間のダウンロードと、再起動が必要になります。私のPCのWindows Update画面には、既に予告が出ています。

昨晩、一台のPCを「強制アップデート」したところ、ダウンロード時間、アップデート時間共に長く、再起動が数回必要でした。

自動更新になっている方も多いと思います。「うっかり再起動すると、更新に時間がかかります」ご注意ください。

コメント

Windows 10上でWSL2を設定し、Ubuntu 20.04 LTSを起動しました

2020-05-31 16:42:17 | Windowsの備忘録
今回は「Windows 10上でWSL2を設定し、Ubuntu 20.04 LTSを起動しました」です。

Windows 10ではネイティブにLinuxを利用する環境WSL(Windows Subsystem for Linux)があります。これはいわゆる「仮想サーバ」ではなく、LinuxシステムコールでWindowsシステムコールを包み、Linuxというアプリを動かしています。正確にはLinuxそのものではありませんが、ほとんどのLinux機能をそのまま使うことができます。

一方、昨年からその新バージョンWSL2が開発者向けに公開が始まり、この5月末の最新のWindows 10のリリースに合わせて、正式なリリースが始まりました。

WSL2は仮想マシンを起動するHyper-V上で動作する「Linux仮想マシン」です。Windowsとは独立して動作します。実際にLinuxカーネルはMicrosoft謹製のLinuxカーネルです。Windows環境から起動はしますが「ネイティブなLinux」が動きます。
もう、VirtualBoxやVMwareは不要なのです。しばらくすると、WindowsのGUI環境に重ねて、LinuxのGUIを表示できるようになります。

こうなると、WindowsはLinux仮想サーバ実行環境そのものです。実は、WindowsのPwerShell、Visual Studio CodeはLinuxと極めて密接に実行できる機能をすでに備えています。使い慣れたWindows上でLinuxネイティブなアプリケーションを開発できます。

Windows OSとLinux OSは既に共生する関係になっており、適材適所で使いやすい方を使うことになります。

私のワークステーション上でWSL2が動き始めています。いろいろ試していきます。
コメント

WindowsはWSL2でLinuxのGUIもサポートへ

2020-05-21 20:45:51 | Windowsの備忘録
今日の話題は「WindowsはWSL2でLinuxのGUIもサポートへ」です。
Windows上の仮想マシンとして動く仕組みを提供するWSL2のリリースが目前です。MicrosoftはWSL2上でWindows GUI上にLinux GUIの表示が可能になると発表しました。

素晴らしい。これはすごい。ソフトの開発がとても楽になります。なんせ完全なLinuxが動くのですから。GUI付きLinuxのソフトもWindows上で開発できます。

今でもWindows上で走るXwindowのサーバーもあり、Windows上でLinuxGUIを表示することができます。これで、LinuxとWindowsを連携した開発もシンプルにWindows上で開発することができるのです。

WSLの時代でもとても便利でしたが、WLS2への移行を急ぎたいと思います。
コメント

Windowsのファイル共有プロトコル(SMB)のコマンドでの確認の仕方

2020-05-20 08:54:05 | Windowsの備忘録
今日の話題は「Windowsのファイル共有プロトコル(SMB)のコマンドでの確認の仕方」です。
以下の通り、Windows上のPowerShellでの実行例です。
Windows10のデフォルトでは、SMB1が表示されません。

■Windows 7

C:\Users\taniyama> sc.exe qc lanmanworkstation
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: lanmanworkstation
TYPE : 20 WIN32_SHARE_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\Windows\System32\svchost.exe -k NetworkService
LOAD_ORDER_GROUP : NetworkProvider
TAG : 0
DISPLAY_NAME : Workstation
DEPENDENCIES : Bowser
: MRxSmb10
: MRxSmb20

: NSI
SERVICE_START_NAME : NT AUTHORITY\NetworkService

C:\Users\taniyama>


■Windows 10ではSMB1が表示されない


PS C:\Program Files\PowerShell\7> sc.exe qc lanmanworkstation
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: lanmanworkstation
TYPE : 20 WIN32_SHARE_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\WINDOWS\System32\svchost.exe -k NetworkService -p
LOAD_ORDER_GROUP : NetworkProvider
TAG : 0
DISPLAY_NAME : Workstation
DEPENDENCIES : Bowser
: MRxSmb20
: NSI
SERVICE_START_NAME : NT AUTHORITY\NetworkService
PS C:\Program Files\PowerShell\7>


コメント

PowerShell 7/7.1 preview 2がリリースされています

2020-05-14 07:32:54 | Windowsの備忘録
今回の話題は「PowerShell 7/7.1 preview 2がリリースされています」です。
PowerShell 7はオープンソースで開発されている、Windows、macOS、Linuxで使うことのできる「シエル環境」で、コマンドレットと呼ぶコマンドと、POSIX互換の基本的なコマンド、Windows環境では、従来のコマンドプロンプトで実行できたコマンドも使うことができます。
また、一般的なスクリプト言語同様、条件分岐ができるなど、プログラムを書くことができます。


PowerShell 7.1.0-preview.2
Copyright (c) Microsoft Corporation.


https://aka.ms/powershell
Type 'help' to get help.


PS C:\Users\taniy>



PowerShell 7.0.0
Copyright (c) Microsoft Corporation. All rights reserved.


https://aka.ms/powershell
Type 'help' to get help.


PS C:\Users\taniy> get-host


Name : ConsoleHost
Version : 7.0.0
InstanceId : c9e6b480-734a-4a32-bc11-3d78aba3b26d
UI : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture : ja-JP
CurrentUICulture : ja-JP
PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled : True
IsRunspacePushed : False
Runspace : System.Management.Automation.Runspaces.LocalRunspace




PS C:\Users\taniy>

コメント

Windows Terminalは画期的にシステム管理やシステム開発を改善します

2020-05-11 07:30:54 | Windowsの備忘録
今回の話題は「Windows Terminalは画期的にシステム管理やシステム開発を改善します」です。
Windows TerminalとはWindows上のPowerShell、コマンドプロンプト、Linux shellを統合して表示する、新しく提供が始まったばかりのコマンドラインシェル呼び出し機能です。

ついこの間まで、Preview版としてMicrosoft Storeで配布されていました。連休中に"RC(Relase Candidate=リリース候補)版が公開され、すでにMicrosoft Storeの製品表示も"Windows Terminal"=正規版となっています。

Windows Terminalは起動したshellを一つのWindowでTab表示で管理できます。
これだけでも画期的に便利ですが、さらにPowerShellとLinuxシェルも起動でき、Tab切り替えで使い分けることができます。システム管理者やシステム開発者には、必須の環境です。お勧めのツールになること必定です。



コメント

Windows PowerShellでのソフト開発のきっかけ

2020-05-10 19:11:58 | Windowsの備忘録
今回の話題は「Windows PowerShellでのソフト開発のきっかけ」です。

私は、ネットワークに関連するソフト開発も行います。もともと、ソフト開発は大好きです。昨年から取り組んだ仕事で、LinuxとWindowsを連携した、データ伝送の仕組みを開発しました。

Linux側は100%bashスクリプトで開発し、Windows側は一つの小さな機能モジュールをC言語で、主体となる部分はWindows PowerShellで開発しています。

Windows PowerShellでの開発はそれまで経験無しです。最初はWindows PowerShellでの開発ではなく、busybox.exeというWindows上で走る極めてコンパクトなLinux上で開発を始めました。bash, cur, wgetなど慣れたLinuxツールの活用が目論見でしたが、すぐに行き詰まりました。busybox.exe上でのwgetもcurlもお客様先のFireWallを通過できない可能性がでてきたのです。「持ち込み禁止」の可能性ありです。

そこでWindows PowerShellを使っての方法に切り替え、通信は全てWindowsが備える機能で行いました。

Windows PowerShellでの本格的な通信ソフトの開発は初めてなので、まだコードが綺麗ではありません。開発後の機能追加もあり、ちょっとコードが膨らんでいます。
ただ、バグなして動いていたコンパクトなソフトの自然な拡張なので、根本的に書き換えるようなことはしません。

Windows PowerShellはコマンドレットと呼ばれるコマンドを使います。これまでのコマンドと大きく違うのは、「コマンド名が長い」ことです。ただ、コマンド名はとてもよく体系化されているので、慣れてくると必要な機能を実現するコマンドレットの名前が推定できるほどです。またコマンドレットはオブジェクトを返すので、多くの関連情報を知ることができます。

コマンドレットの扱いには、例題を見て少しずつ慣れました。条件判断も同様です。WindowsのOS機能を使うには、C#等コンパイル言語で書き下すより圧倒的に保守性が良くなります。

今はWindows Terminal(Preview)に統合されたWindows PowerShell環境に移行したので、コマンドライン・シェルも使いやすくなりました。


コメント

WSLは"Windows Subsystem for Linux"でした

2020-05-03 08:55:12 | Windowsの備忘録
今回の話題は「WSLは"Windows Subsystem for Linux"でした」です。
これまでWSLをWLS(=Windows Service for Linux)と記述していましたが、正しくはWSL(Windows Subsystem for Linux)の間違いでした。過去記事の表記も、同様の間違いです。

尚、略称の基の単語を間違っていましたが、WSLそのものの機能・役割を間違っているわけではありません。

実はWindows Service for UNIX(=SFU)という、Windows上にUNIXを移植した環境がありました。実はWindowsはPOSIX/UNIX環境を備えていたのです。SFUとWSLの利用者への見え方はそっくりです。POSIX環境なのでスクリプトはパスの変更程度で動きましたし、gccも使えるのでUNIX流のソフト開発もできたのです。その環境を使って、システムを構築したこともあり、てっきりその流れで"Service for Linux"だと思っていました。SFUは英語版Wikiには細かい解説があります。


コメント

WSL2とWSLの違いを解説します

2020-05-02 21:18:45 | Windowsの備忘録
今回は「WSL2とWSLの違いを解説します」です。
タイトルのミスタイプを修正しました。
WSL(Windows Service for Linux)はもうすぐWSL2となることがアナウンスされており、既に開発者向けプログラムでは配布が始まっています。

WSLは、Windows APIをLinux APIでラップしています。WSLの下はWindowsのAPIなので「仮想」ではなく、いわば「Windowsのアプリケーション」なのです。Linuxに合わせてその集合体をこさえています。即ち、完全に「WindowsAPIをラップ(Wrap)」して異なるOSの環境と見せているのです。そのため、Linuxカーネルの上で動いているように見えますが、Linuxカーネルは実在しません。なので、カーネル内部の機能を制御することはできないのです。典型的にはデバイスドライバ等ハードウエア依存部分を含む開発は多くの場合できません。
とはいえ、これは、これで素晴らしい環境です。私みたいに全く不満の無い方の方がほとんどだとおもいます。

一方、WSL2は完全な仮想環境です。仮想マシンをつくる、ハイパーバイザーの上でWindowsに全く依存しない形でLinuxカーネルごと起動します。これまで仮想環境をつくるために導入していたVirtualBox、VMWareが要らなくなります。完全なx64 Linuxですから、そのLinuxの上に仮想化層を載せることもできます。即ち「ただのLinux」なのです。その実行管理をWindowsがこれまでのVirtualBoxやVMWareのように提供します。

こなると、同じアーキテクチャであれば、Linuxデスクトップで開発した「バイナリプログラム」を変更なしでもってきて実行することができます。アーキテクチャが異なる場合は、その上でコンパイルし直せば実行できます。スクリプトだけではなく、バイナリ実行型のプログラムの環境が大きく広がります。

WSL2の登場は、Microsoftが純粋なLinux実行環境の提供を始めることを意味します。これまでのWindowsGUI環境で、ローカルに完全なLinuxが立ち上がります。なのでLinux上で著名なコンテナ環境のDockerさえも使えます。私の場合も、カーネル依存のミドルウエアの利用や開発であれば、WLS2を使います。


コメント (2)