- 投稿日:2019-11-15T22:32:39+09:00
(工事中)初学者のあなたにおくるコマンド ~脱カーソルアクション~ Mac編
(工事中)
さあ、今すぐカーソルアクションから脱するのだ!
<cdの巻>
cd = Change Directory の略cdコマンドの構文
cd + [option] + [path]※tabキーで補完ができる
┗入力途中でも、一意に検索できる場合cd ../ 【1つ上の階層に移動】
cd ../../ 【2つ上の階層に移動】
cd / 【ドライブ()のルート(/)に移動】cd ~ 【ホームに移動】
※Macのみのコマンドです。pwd 【現在地をFullPathで表示してくれる】
※Macの場合、現在地を省略表示してしまうので、よく使う。</cdの巻>
- 投稿日:2019-11-15T17:47:28+09:00
Db2 Express-C 10.1 を Macにインストール
思いつきでDb2をMacにいれてみよう、と思ったのでやってみた。
手順
参照記事: Stack Overflow How do I install db2 Express-C 10.1 on OSX Mavericksを参考にインストール。
参考記事: DB2 on Mac for DBFluteここからエラーの解決手順
まず一番最初。これは何も考えずに下記コマンドを実行し、内容を追記すればよいです。
1.Modify system parameters with this command:
$ sudo vi /etc/sysctl.confkern.sysv.shmmax=1073741824 kern.sysv.shmmin=1 kern.sysv.shmmni=4096 kern.sysv.shmseg=32 kern.sysv.shmall=1179648 kern.maxfilesperproc=65536 kern.maxfiles=6553613.Initialize the sample database using this command:
db2sampl次にここでこけました。
$ db2sampl SQL30082N Security processing failed with reason "24" ("USERNAME AND/OR PASSWORD INVALID"). SQLSTATE=08001エラーが発生。
これは
db2sampl
コマンドを発行したのがadminユーザーだったため。$ su db2inst1を実行します。
そしてsuした後に、bashを編集します。(一番はじめはadminユーザー側のbashを編集してしまった。)しかし、
db2sampl
インスタンスが作れない。。bash-3.2$ db2sampl Starting the DB2 instance... Creating database "SAMPLE"... Attempt to create the database "SAMPLE" failed. SQL1032N No start database manager command was issued. SQLSTATE=57019
db2start
したらいいだけ?と思い発行bash-3.2$ db2start SQL1042C An unexpected system error occurred.意味不明なエラーすぎますね。
ですがググった結果下記を実行すれば次に進んだ。$ sudo chown db2inst1 /Users/db2inst1/sqllib/adm/* $ sudo -i -u db2inst1 /Users/db2inst1/sqllib/adm/db2start SQL1063N DB2START processing was successful.次はコードページとテリトリーコードの違いのエラー。。
bash-3.2$ db2sampl Creating database "SAMPLE"... Attempt to create the database "SAMPLE" failed. SQL1205N The code page "1208" and/or territory code "0" that has been specified is not valid.とりあえず下記を実行
bash-3.2$ db2set DB2CODEPAGE=1208 bash-3.2$ db2set DB2TERRITORY=1 bash-3.2$ db2set DB2COUNTRY=1 bash-3.2$ db2 terminate DB20000I The TERMINATE command completed successfully.bash-3.2$ db2sampl Creating database "SAMPLE"... Connecting to database "SAMPLE"... Creating tables and data in schema "DB2INST1"... Creating tables with XML columns and XML data in schema "DB2INST1"... 'db2sampl' processing complete. bash-3.2$ db2 connect to SAMPLE Database Connection Information Database server = DB2/DARWIN 10.1.0 SQL authorization ID = DB2INST1 Local database alias = SAMPLE bash-3.2$ db2 list tables Table/View Schema Type Creation time ------------------------------- --------------- ----- -------------------------- ACT DB2INST1 T 2019-11-15-17.35.35.019581 ADEFUSR DB2INST1 S 2019-11-15-17.35.35.560564 CATALOG DB2INST1 T 2019-11-15-17.35.36.203478 CL_SCHED DB2INST1 T 2019-11-15-17.35.34.915366 CUSTOMER DB2INST1 T 2019-11-15-17.35.36.160802 DEPARTMENT DB2INST1 T 2019-11-15-17.35.34.928925 DEPT DB2INST1 A 2019-11-15-17.35.34.952615 EMP DB2INST1 A 2019-11-15-17.35.34.966517 EMPACT DB2INST1 A 2019-11-15-17.35.35.018150 EMPLOYEE DB2INST1 T 2019-11-15-17.35.34.953254 EMPMDC DB2INST1 T 2019-11-15-17.35.35.732809 EMPPROJACT DB2INST1 T 2019-11-15-17.35.35.012793 EMP_ACT DB2INST1 A 2019-11-15-17.35.35.018845 EMP_PHOTO DB2INST1 T 2019-11-15-17.35.34.967025 EMP_RESUME DB2INST1 T 2019-11-15-17.35.34.978571 INVENTORY DB2INST1 T 2019-11-15-17.35.36.153554 IN_TRAY DB2INST1 T 2019-11-15-17.35.35.031703 ORG DB2INST1 T 2019-11-15-17.35.35.035364 PRODUCT DB2INST1 T 2019-11-15-17.35.36.138174 PRODUCTSUPPLIER DB2INST1 T 2019-11-15-17.35.36.244712 PROJ DB2INST1 A 2019-11-15-17.35.35.003532 PROJACT DB2INST1 T 2019-11-15-17.35.35.004115 PROJECT DB2INST1 T 2019-11-15-17.35.34.990695 PURCHASEORDER DB2INST1 T 2019-11-15-17.35.36.184609 SALES DB2INST1 T 2019-11-15-17.35.35.042211 STAFF DB2INST1 T 2019-11-15-17.35.35.038617 STAFFG DB2INST1 T 2019-11-15-17.35.35.498247 SUPPLIERS DB2INST1 T 2019-11-15-17.35.36.223280 VACT DB2INST1 V 2019-11-15-17.35.35.052692 VASTRDE1 DB2INST1 V 2019-11-15-17.35.35.059804 VASTRDE2 DB2INST1 V 2019-11-15-17.35.35.060979 VDEPMG1 DB2INST1 V 2019-11-15-17.35.35.056553 VDEPT DB2INST1 V 2019-11-15-17.35.35.045812 VEMP DB2INST1 V 2019-11-15-17.35.35.050315 VEMPDPT1 DB2INST1 V 2019-11-15-17.35.35.058499 VEMPLP DB2INST1 V 2019-11-15-17.35.35.073268 VEMPPROJACT DB2INST1 V 2019-11-15-17.35.35.055309 VFORPLA DB2INST1 V 2019-11-15-17.35.35.068494 VHDEPT DB2INST1 V 2019-11-15-17.35.35.049325 VPHONE DB2INST1 V 2019-11-15-17.35.35.072117 VPROJ DB2INST1 V 2019-11-15-17.35.35.051334 VPROJACT DB2INST1 V 2019-11-15-17.35.35.053680 VPROJRE1 DB2INST1 V 2019-11-15-17.35.35.062221 VPSTRDE1 DB2INST1 V 2019-11-15-17.35.35.063658 VPSTRDE2 DB2INST1 V 2019-11-15-17.35.35.067136 VSTAFAC1 DB2INST1 V 2019-11-15-17.35.35.069650 VSTAFAC2 DB2INST1 V 2019-11-15-17.35.35.070860 47 record(s) selected.できた。。
とりあえずDb2をインストールするだけであれば、これで終了。
もしリモートサーバー上のDBとJavaクライアント等と接続したい場合は
参考資料の下記を続けて行なってください。
Steps to Enable Remote Connections:
特に難しい操作はないのですが、その通りにやってしまうと下記だけエラーが発生しました。
$ sudo -u db2inst1 db2start SQL1641N The db2start command failed because one or more DB2 database manager program files was prevented from executing with root privileges by file system mount settings.
db2start
コマンドは、上記でやったように、$ sudo -i -u db2inst1 /Users/db2inst1/sqllib/adm/db2startを実行しましょう。
ここまで完了できたら、DBeaverなどでホストIP、ポート番号を正しく設定することで、Macからもリモートデータベースを参照することができます。
- 投稿日:2019-11-15T10:58:25+09:00
PC買い替えたときの環境構築リスト
注意事項
- PC端末はMacです
- 入れるかどうか、設定するかどうかは好みです
- 思い出したタイミングで追記していきます
【Mac の設定】
Mac 自体の設定や、デフォルトで入っているアプリの設定など。
ほぼ好みです。カレンダーの設定
カレンダーアプリを起動し、環境設定 > 一般 で以下の設定を行う。
- デフォルトで入っているカレンダーの週数を表示できるようにする
- 週の始まりを月曜日にする
Finder にホームフォルダを追加
Finder を開いて、上のタブから Finder > 環境設定 > サイドバー
で、↓の画面になるので、ここで家マークの横のチェックボックスをオンにする。参考
https://pc-karuma.net/mac-finder-sidebar/
Dock から不要なものを削除
無駄なアプリはあまり出したくないので非表示にする。
ズームの設定
[方法は後で書きます]
【ツール系】
PhpStorm のインストール
(有料です)
PhpStorm からダウンロードして、必要であればライセンス購入。
購入したライセンスをアクティベートする。ライセンスを購入しなくても30日は無料可能、また学生は学校のメールアドレスがあれば無料で使える。
Display Menu のインストール
https://apps.apple.com/jp/app/display-menu/id549083868?mt=12
Retinaディスプレイの場合、これを使えば高解像度にあげることができるのでたくさんの情報を表示することができる。
これのおかげで基本デュアルディスプレイにしなくて済んでる。Postman のインストール
https://www.getpostman.com/
[あとで書く]【使う技術によるもの】
以下は
- Nust.js/Vue.js などを使ったフロントエンドの開発
- Laravel などを使う PHPer
向けのものかと思います。
Git のインストール
Git 公式ページ からダウンロード。
Xcodeも必要なのでいれる。PHP のバージョンをあげる
https://php-osx.liip.ch/
[あとで書く]Composer のインストール
https://getcomposer.org/
[あとで書く]node.js のインストール
https://nodejs.org/ja/
[あとで書く]Virtual Box のインストール
https://www.virtualbox.org/wiki/Downloads
[あとで書く]Vagrant のインストール
https://www.vagrantup.com/
[あとで書く]
- 投稿日:2019-11-15T09:29:25+09:00
【Mac】Homebrew を使って PostgreSQL を動かす
何度も同じことを調べてしまうので、まとめてみました?
インストール可能なバージョンをリストアップ
✔︎がついているものはインストール済みです。
$ brew search postgresql ==> Formulae postgresql ✔ postgresql@10 postgresql@9.4 postgresql@9.5 postgresql@9.6インストールする
バージョン指定のない postgresql だと最新バージョンがインストールされます。
$ brew install postgresqlバージョン確認
$ psql --version psql (PostgreSQL) 11.5バージョンを指定してインストールする
$ brew install postgresql@9.6PostgreSQL を起動
$ brew services start postgresql ==> Successfully started `postgresql` (label: homebrew.mxcl.postgresql)バージョンを指定して起動
$ brew services start postgresql@9.6 ==> Successfully started `postgresql@9.6` (label: homebrew.mxcl.postgresql)DB一覧を表示
使用しているデータベース一覧が表示されます。
$ psql -l Name | Owner | Encoding | Collate | Ctype | Access privileges -----------------------------------+-------+----------+---------+-------+------------------- postgres | yuppy | UTF8 | C | C | template0 | yuppy | UTF8 | C | C | =c/yuppy + | | | | | yuppy=CTc/yuppy template1 | yuppy | UTF8 | C | C | =c/yuppy + | | | | | yuppy=CTc/yuppy (3 rows)DB操作
良く調べるのでついでにメモします。
データベースに入る
$ psql 入りたいデータベース名テーブル一覧表示
\
option キーと ¥ を同時に押します。# \dtデータベースの切り替え
# \c 切り替えたいデータベース名データベースの削除
# drop database 削除したいデータベース名データベースから出る
# \qPostgreSQL を停止
$ brew services stop postgresql Stopping `postgresql`... (might take a while) ==> Successfully stopped `postgresql` (label: homebrew.mxcl.postgresql)バージョンを指定して停止
$ brew services stop postgresql@9.6 Stopping `postgresql@9.6`... (might take a while) ==> Successfully stopped `postgresql` (label: homebrew.mxcl.postgresql)起動状況の確認
複数のバージョンが起動していると、通常緑色の
started
が黄色になります。1つだけを起動させて、その他は停止させましょう。$ brew services list Name Status User Plist mysql stopped postgresql started yuppy /Users/yuppy/Library/LaunchAgents/homebrew.mxcl.postgresql.plist postgresql@9.6 stopped使用するバージョンを切り替える
実は起動や停止させるだけでは使用するバージョンを切り替えることはできなくて、link /unlink で切り替えます。使用したいバージョンだけを link させます。
使い方
$ brew unlink postgresql$ brew link postgresql@9.6アンインストールする
バージョン指定も可能です。
$ brew uninstall postgresql以上です。また何かあれば追記していきます。
- 投稿日:2019-11-15T09:11:19+09:00
MacでSAC
MacOS (Mojave) で SAC(Seismic Analysis Code) [Version: 101.6a] を使おうと思ったのだが、ソースコードからのコンパイルがうまくいかなかった。
フォーラムを見るとlibeditに問題があるようなのだが、これまた修正が面倒そうであった。
IRISにMac版のバイナリを申請して待っている間に調べていると、George Helffrich 先生のページに Bug fix されたバイナリが置いてあるのを見つけた。インストールしたところ、秒で使えるようになった(コンパイルエラーの問題解決は何もしていないけどね)。
ちなみにG.Helffrich先生は"The Seismic Analysis Code" A Primer and User's Guideっていう本も書かれているので、間違いなさそう。
- 投稿日:2019-11-15T01:03:22+09:00
【Ansible_01】macにAnsibleのインストール
はじめに
タイトルそのまんまですが、手元のmacにAnsible実行環境を作成します。
参画プロジェクトのProduction環境でPythonのバージョンも異なるだろうと思い、pipenvを採用。
macの場合はpyenvの方が良い(表現がアレですが、pyenvの方がスムーズなのかな?)とのこと、またvirtualenvも利用頻度は低いが覚えておくとよきとのことです。それはまたどこかで。環境作成にあたりAnsible実践ガイドと下記サイトを参考にさせて頂きました。
この場を借りてお礼申し上げますPipenvの基本的な使い方
[Python] pyenv と pipenv による python 仮想環境を構築する(CentOS 7 ほぼ初期状態から )
Pipenvことはじめ
環境と使用書籍
mac
Ansible実践ガイド作業開始
pipenvのインストール
macの場合は開発ツール(python-devel, python-dev)はいらないのかな?
わからないので進める!# 現在のPythonのバージョンを確認 $ python -V Python 2.7.10 # homebrewでPython3系のインストール $ brew install python3 # バージョン確認 $ python3 -V Python 3.7.5 # pipのインストール $ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py $ python3 get-pip.py # pipenvのインストール $ brew install pipenv # pipenvのバージョン確認 $ pipenv --python 3.7.5 # Pipfile自動生成とcat $ ls -l Pipfile $ cat Pipfile [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [dev-packages] [packages] [requires] python_version = "3.7"サイトを読み進めてると、パッケージのインストールが必要のように見える。
Pipenvの基本的な使い方に倣って、requestsをインストールしてみます。
用途に合わせてパッケージをインストールするんでしょうね。$ pipenv install requests $ cat Pipfile [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [dev-packages] [packages] requests = "*" [requires] python_version = "3.7"次にAnsibleを実行するディレクトリ「ansible」を作成します。
その後はcdしてpipenvを起動。$ mkdir ~/ansible $ cd ~/ansible $ pipenv --version pipenv, version 2018.11.26 $ pipenv shell (admin)$bashが起動しました!嬉しい!w
仮想環境でAnsibleをインストールします。(admin)$ pip install ansible (admin)$ ansible --version ansible 2.9.1これにて完了!
おわりに
断片的ではあるのですがAnsibleの実行環境に関する知識がなかったら頓挫していたと思います。。先人の知恵をお借りして実現できてよかった!
次はこの環境を使って実際にAnsibleをガリガリ実行するところから。簡単ですが以上です
- 投稿日:2019-11-15T01:03:22+09:00
【Ansible-01】macにAnsibleのインストール
はじめに
タイトルそのまんまですが、手元のmacにAnsible実行環境を作成します。
参画プロジェクトのProduction環境でPythonのバージョンも異なるだろうと思い、pipenvを採用。
macの場合はpyenvの方が良い(表現がアレですが、pyenvの方がスムーズなのかな?)とのこと、またvirtualenvも利用頻度は低いが覚えておくとよきとのことです。それはまたどこかで。環境作成にあたりAnsible実践ガイドと下記サイトを参考にさせて頂きました。
この場を借りてお礼申し上げますPipenvの基本的な使い方
[Python] pyenv と pipenv による python 仮想環境を構築する(CentOS 7 ほぼ初期状態から )
Pipenvことはじめ
環境と使用書籍
mac
Ansible実践ガイド作業開始
pipenvのインストール
macの場合は開発ツール(python-devel, python-dev)はいらないのかな?
わからないので進める!# 現在のPythonのバージョンを確認 $ python -V Python 2.7.10 # homebrewでPython3系のインストール $ brew install python3 # バージョン確認 $ python3 -V Python 3.7.5 # pipのインストール $ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py $ python3 get-pip.py # pipenvのインストール $ brew install pipenv # pipenvのバージョン確認 $ pipenv --python 3.7.5 # Pipfile自動生成とcat $ ls -l Pipfile $ cat Pipfile [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [dev-packages] [packages] [requires] python_version = "3.7"サイトを読み進めてると、パッケージのインストールが必要のように見える。
Pipenvの基本的な使い方に倣って、requestsをインストールしてみます。
用途に合わせてパッケージをインストールするんでしょうね。$ pipenv install requests $ cat Pipfile [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [dev-packages] [packages] requests = "*" [requires] python_version = "3.7"次にAnsibleを実行するディレクトリ「ansible」を作成します。
その後はcdしてpipenvを起動。$ mkdir ~/ansible $ cd ~/ansible $ pipenv --version pipenv, version 2018.11.26 $ pipenv shell (admin)$bashが起動しました!嬉しい!w
仮想環境でAnsibleをインストールします。(admin)$ pip install ansible (admin)$ ansible --version ansible 2.9.1これにて完了!
おわりに
断片的ではあるのですがAnsibleの実行環境に関する知識がなかったら頓挫していたと思います。。先人の知恵をお借りして実現できてよかった!
次はこの環境を使って実際にAnsibleをガリガリ実行するところから。おまけ
localhostにpingを投げるときはinventoryを以下のように記述します。
・inventory
ファイル名に拡張子を付けなくても読み込みます(inventory.ini)。
また、インベントリはyamlでも良い。
pipenvでインストールしなかったら/etc/ansible/にhostsという名前のファイルが生成されるので、そこに記述すれば良い。ように読めた。localhostの書き方でハマり数時間消し飛びました。。
グループは無くても動きます。$ cat inventory [test] localhost ansible_connection=local $ ansible -i inventory test[もしくはall] -m ping [WARNING]: Platform darwin on host localhost is using the discovered Python interpreter at /usr/bin/python, but future installation of another Python interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information. localhost | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": false, "ping": "pong" }-i:インベントリの指定
-m:モジュールを使う際のオプションpingじゃなくてpongってなってるのは、ターゲットノードにpingを投げてる訳じゃなくてsshで接続した結果をpingの結果として返しているからとのこと。
playbook.ymlで指定しても動くはず。これはまた次回行います。以上です