2021年4月30日金曜日

PostGISにポリゴンデータ(shp)を登録する

PostGISにポリゴンデータとしてShpファイルを取り込んでみたので、とりあえずメモ。

(参考)
[PostGISを使ってみよう]
https://lets.postgresql.jp/documents/tutorial/PostGIS
[PostGISを入れるところからやってみよう]
https://zenn.dev/boiledorange73/books/b1de0a18073af70946e0

 

shpファイルは、そのままでは取り込めないので、shp2pgsqlコマンドで、shpファイルをsqlに変換する。


変換元となるshpファイルは、.shp,.dbf,.shxの3つのファイルが1セットとなるので、おなじディレクトリに配置すること。

Shpファイルに含まれる属性はすべてテーブルの項目として設定される。
ジオメトリを扱うカラムは"geom"として作られ(-gで名前は変えられる)、空間インデックスも作ってくれる。

以下は、データベース名:hoge_db,テーブル:tb_hogeにtest.shpファイルのデータを取り込むときの手順。

(手順)

  1. テーブル定義を作る(最初だけ)
    > shp2pgsql -p -W cp932 -D -I -s 4612 test.shp tb_hoge > tb_hoge.sql

    • -p : テーブル定義のみ
    • -W cp932 : は文字コードを932指定
    •  -D : ダンプ形式を指定
    •  -I : 空間インデックスの作成を指定
    • -s 4612 : 空間参照系を4612 (JGD2000地理座標系)を指定

  2. テーブル定義をDBに取り込み
    > psql hoge_db -f tb_hoge.sql
  3. データ取り込み用SQLを作る
    > shp2pgsql -a -W cp932 -D -s 4612 test.shp tb_hoge > test_data.sql

    • -a :データのみ ※-Dを指定しない場合はinsert文になる
    • -W cp932 : は文字コードを932指定
    •  -D : ダンプ形式を指定
    • -s 4612 : 空間参照系を4612 (JGD2000地理座標系)を指定

  4. データをDBに取り込む
    > psql hoge_db -f test_data.sql

初めに1.,2.の手順で、テーブルを作っておき、その後は、3.,4.でデータを追加するイメージ。
データ取り込みが1回だけで終わるなら、 1.の手順で-pを外せば、テーブル定義とデータ取り込みをしてくれるSQLができる。取り込み手順は2.でOK

2021年4月29日木曜日

Windows PowerShellから特定ポートの疎通確認

Windows10から同一ネットワーク上のLinuxのポートに対して疎通確認をしたかったので、とりあえずメモ

PowerShellが利用できる必要があるけど、Test-NetConnection を利用すると確認はできる。

以下は192.168.1.45 の80ポートへの接続例

> Test-NetConnection 192.168.1.45 -Port 80


ComputerName     : 192.168.1.45
RemoteAddress    : 192.168.1.45
RemotePort       : 80
InterfaceAlias   : イーサネット 2
SourceAddress    : 192.168.1.65
TcpTestSucceeded : True

 

 

2021年4月26日月曜日

Visual Studio Codeでサーバにファイルをアップロード

 Visual Studio Codeで編集したファイルをVisual Studio Codeの画面からサーバにアップロードしたかったので、なんとなくメモ

 機能拡張でSFTPを追加。検索するといろいろ出てくるけど、一番初めに出てきたliximomo製をインストールして使ってみる 

 コマンドパレットで、「SFTP:Config」と入力して選択すると、sftp.jsonという設定ファイルが出てくるので、接続先となるサーバの環境に合わせて編集する。

複数のワークスペースがあると、それぞれsftp.jsonが作れるので、環境によってわけることが可能みたい。

 標準では以下の情報を編集ができる。

{
    "name""My Server",
    "host""localhost",
    "protocol""sftp",
    "port"22,
    "username""username",
    "remotePath""/",
    "uploadOnSave"true
}

 


 

Ubuntu20.04 LTS Serverにnode.jsの最新バージョンをインストール

node.jsを使ってみたくなったので、インストール方法をなんとなくメモ。


(参考)

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-20-04-ja

 

とりあえず最新バージョンを一つだけインストールしたかったので、PPAを追加してaptでインストールしてみた。


$curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh
$sudo
bash nodesource_setup.sh
$
sudo apt install nodejs
$
node -v 
  最新が14.16.1だったので、1つ目の指定は14.x。新しいバージョンが出てたら変わるんだと思う。
 

 

2021年4月25日日曜日

Visual Studio Codeのインストールと日本語化

Visual Studio Codeを使いたくなったので、とりあえずメモ

(ダウンロードページ)

https://code.visualstudio.com/download 


(日本語化) 

  1. [View]→[Command Palette]→[Configure Display Language]を選択
  2. [Install Additional Laugage]を選択して[Japanese Language Pack for Visual Studio Code]の[Install]ボタンをクリック
  3. VS Codeが再起動する。

 

(PostgreSQL拡張機能)

拡張機能マーケットから Postrgresqlで検索するといくつか出てくる。

Microsoft製を使ってみる。

 

Ubuntu20.04 LTS ServerにPostgreSQL12,PostGIS3 Pgadmin4 インストール

Ubuntu20.04 LTS ServerにPostgreSQL 12, PostGIS3 ,PgAdmin4をインストールしたかったので、なんとなくメモ

 

以下サイトを参考にさせてもらいました。 

https://computingforgeeks.com/how-to-install-postgis-on-ubuntu-debian/

https://www.kkaneko.jp/tools/postgresinstall/pgadmin4linux.html

https://postgresweb.com/install-pgadmin4-ubuntu-20-04 

(モジュールのインストールと起動)

  1. sudo apt update 
  2. sudo apt -y install curl ca-certificates gnupg
  3. curl https://www.postgresql.org/media/keys/ACC
  4. sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'C4CF8.asc | sudo apt-key add -
  5. sudo apt -y update
  6. sudo apt -y install postgresql-12 pgadmin4 postgresql-12-postgis-3
  7. sudo service postgresql start

(ユーザ作成とデータベース作成)

  1. sudo su - postgres
  2. createuser -P -d xxx
  3. exit
  4. createdb -E UTF-8 test_db
  5. psql test_db
  6. CREATE EXTENTION postgis;
  7. select postgis_versioin();

 (外部からのPostgreSQLデータベースへのアクセス設定)

[postgresql.confの編集]   ※/etc/postgresql/12/main

  listen_addresses = '*' # what IP address(es) to listen on;

[pg_hba.confの編集] ※/etc/postgresql/12/main

     ※192.168.1.xからのアクセスする場合は以下を追加

  host all all 192.168.1.0/24 md5

[postgresqlの再起動]

      $sudo service postgresql restart

 

 

 

 


 

国土交通省のGISホームページ

 GISがらみでいろいろと試してみたかったので、参考にメモ

 

https://nlftp.mlit.go.jp/index.html

Ubuntu20.04 LTS serverでapache2のインストールとSSL有効化

PWAを試すのに、httpsでのアクセスが必要だったので、apache2のインストールとSSLを有効化する手順をメモ

  1.  インストール
    $ sudo apt-get install apache2
  2. SSL有効化
    $ sudo a2enmod ssl
    $ sudo a2ensite default-ssl
  3. 再起動
    $ sudo systemctl restart apache2
  4. 確認
    $ ss -lnt

デフォルトのコンテンツ配置先はhttp(80),https(443)どちらのアクセスも

   /var/www/html

の模様。 index.htmlがおいてあるので、必要に応じて書き換え







Ubuntu 20.04 LTS Server の設定

1) インストール
  Ubuntuのサイトからダウンロード

            https://jp.ubuntu.com/download

2)日本語環境設定

  1. アップデート
    $ sudo apt update
    $ sudo apt upgrade
  2. 言語パックのインストール_
    $ sudo apt install language-pack-ja-base language-pack-ja ibus-mozc
  3. 文字セットを変更
    $ sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
  4. ~/.bachrcへ追加
    case $TERM in
        linux) LANG=en_US.UTF-8;;
        *)     LANG=ja_JP.UTF-8;;
    esac

  5. タイムゾーンの設定
    $ sudo dpkg-reconfigure tzdata
    上記実行後に東京を選択 

3) IPアドレスの固定化

  1.  /etc/netplan/に99_config.yamlを追加する。
    以下は固定IPアドレスとして192.168.1.45の例。
    ※インターフェイス名は元の00-installer-config.yamlに合わせればよい。

    -----ここから----
    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          dhcp4: false
          dhcp6: false
          addresses: [192.168.1.45/24]
          gateway4: 192.168.1.1
          nameservers:
            addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4]
    ----ここまで------




  2. sudo netplan applay で反映
     


VirtualBox でマウスカーソル脱出

Virtual Box6.1でVM起動後のコンソールからマウスカーソル出てこれなくなったので、解決方法をなんとなくメモ

 右Ctlボタンを押す