公開鍵認証の設定
作成するKeyの種類
公開鍵暗号は「RSA」「DSA」「ECDSA」「EdDSA」があり、それぞれ暗号化方式が異なります。
Type | Default | Bits |
---|---|---|
DSA | 1024 | 1024 |
RSA | 2048 | 1024, 2048, 4096 |
ECDSA | 256 | 256, 384, 521 |
ED25519 | 256 | 256 |
ssh-keygen
vim ~/.ssh/config
source ~/.ssh/config
# このタイミングで公開鍵をGithubに登録
cat ~/.ssh/id_rsa.pub
# 登録したら接続確認
ssh -T git@github.com
cd C:\Users\ユーザー名\.ssh
# keyの作成 (rsaアルゴリズム)
ssh-keygen
# keyの作成 (ED25519アルゴリズム)
ssh-keygen -t ed25519
ssh-keygen作成時のcmd_log
C:\Users\ユーザ名\.ssh>dir
Volume in drive C is Windows
Volume Serial Number is C0EF-B2B2
Directory of C:\Users\ユーザ名\.ssh
2021/10/13 18:21 <DIR> .
2021/10/13 18:21 <DIR> ..
2021/10/05 15:32 194 config
2021/10/13 10:45 2,675 id_rsa.key
2021/10/13 10:45 584 id_rsa.pub
2021/10/13 11:13 351 known_hosts
2021/10/13 18:19 <DIR> test
4 File(s) 3,804 bytes
3 Dir(s) 192,605,966,336 bytes free
C:\Users\ユーザ名\.ssh>ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\ユーザ名/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\ユーザ名/.ssh/id_ed25519.
Your public key has been saved in C:\Users\ユーザ名/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:I267+S7267+S7NTTU4sBzZ267+S7ajL2267+S7nUDNTTU4 ad\ユーザ名@PC名
The key's randomart image is:
+--[ED25519 256]--+
| oEoo |
| o .B.* |
|.o o+ = . |
|oo*.o+ |
|=o+=o.. S |
|++.o.. . |
|o+o + |
| =.++.. |
|. B===o |
+----[SHA256]-----+
C:\Users\ユーザ名\.ssh>dir
参考:WindowsでのSSHの方法やconfigファイルの作成方法
参考:GitHubでssh接続する手順
C:\Users\user\.ssh\configファイルに追加
Host testhost
# ユーザ名
User ${リモートユーザ名}
# ホスト名
Hostname ${IPアドレス}
# 鍵ファイルのパス
IdentityFile ~/.ssh/id_rsa
# コネクションの切断防止(60秒周期でパケット送信)
ServerAliveInterval 60
# 作成したキーが「id_rsa」「id_dsa」「identity」以外の場合のgithub開通確認
Host github github.com
HostName github.com
IdentityFile ~/.ssh/id_ed25519 #ここに自分の鍵のファイル名
User git
ssh -T git@github.com
# config 設定していなければ
ssh -i ~/.ssh/id_ed25519 -T git@github.com
# それでも接続できない場合
source ~/.ssh/config
ssh -T git@github.com
vimでの検索について紹介します。 ノーマルモードで/(スラッシュ)を入力するとカーソルが画面下に 移動します。 そこで、検索文字列を入力して、[Enter]を入力することで文字列を検索できます。
jupyter notebook
他PCの jupyter notebook にアクセスしたい
qiita:jupyter notebook で外部からの接続を許可する
参考:jupyter notebook Port 設定
- 設定ファイルを作成
-
~/.jupyter/jupyter_notebook_config.py
の編集
# 設定ファイルを作成
jupyter notebook --generate-config
# `~/.jupyter/jupyter_notebook_config.py` の編集
# lisen IP設定('*' = 全て許可)
c.NotebookApp.ip = '*'
# Jupyter 起動時のブラウザ起動設定(off)
c.NotebookApp.open_browser = False
# アドホックにやりたかったら
jupyter notebook --ip=* --no-browser
# 任意のPortを設定
jupyter notebook --port 9000
# アドホックにIPの制限解除とポート開放
jupyter notebook --ip=* --no-browser --port 9000
まとめてコメントアウト
参考:Python コメントアウトの書き方を徹底解説(複数行/関数
Jupyter notebookでは、記述したコードを選択して、ショートカットキー Ctr + / (スラッシュ) を押すとコメントアウトすることができます。 複数行を選択してCtr + / を押すと、複数行に渡って一括してコメントアウトされます。
git cmd
コミットを指定し cloneしたい
git clone https://github.com/username/projectname.git
# 次に、コミットの「SHA」を指定して、「fetch」を実行します。
git fetch --depth 1 origin SHA
# 最後に「reset」を実行すれば、指定したコミットをcloneすることが可能です。
git reset --hard FETCH_HEAD
初期設定
# アカウント設定
git config --global user.name "Your Name"
git config --global user.email you@example.com
# 設定の確認
git config --global -l
一般的な使用法
# gitの初期設定
git init
# .gitignore の作成
touch .gitignore
# .gitignoreにgitに含めたくないファイルやディレクトリを記入
vim .gitignore
# 現在の状態を表示
git status
# ファイルを追加する
git add --all .
# コミットメッセージを追加する
git commit -m "{プロダクト名}, first commit"
# 自分のコンピューター上のGitリポジトリをGitHub上のGitリポジトリに結びつけてあげる
git remote add origin https://github.com/<your-github-username>/my-first-blog.git
# GitHubにコードをプッシュする
git push -u origin master
2回目以降はこっち
# 最後に実行したときから、どのファイルを変更したか見てみましょう
git status
# git に対してこのディレクトリ内の変更を全て反映させるよう指示
# --all をつけると、 git は、ファイルを削除したかどうかも判定します
git add --all .
# gitが何をアップロードするのかチェックしておきましょう
# (`git`がアップロードする全ファイルは緑で表示されます):
git status
# 何をしたかを具体的に書き込んでおけば、将来、作業内容を思い出す助けになるでしょう
git commit -m "[Changed] the HTML for the site."
# GitHubに変更部分をアップロード(push)
git push
- feat: 新しい機能
- fix: バグの修正
- docs: ドキュメントのみの変更
- style: 空白、フォーマット、セミコロン追加など
- refactor: 仕様に影響がないコード改善(リファクタ)
- perf: パフォーマンス向上関連
- test: テスト関連
- chore: ビルド、補助ツール、ライブラリ関連
Django専用 .gitignore
サンプル
*.pyc
*~
/.vscode
__pycache__
作成した仮想環境名[myvenv]
db.sqlite3
/static
.DS_Store
公開鍵認証設定をしたのにpushできなかったら
参考:git fetch・pushするときの接続方法をHTTPSからSSHへ変更する
# sshになっているか現在設定の確認
git remote -v
# HTTPSからSSHへ変更
git remote set-url origin git@gitlab.com:...
# originの後にssh用のURLを入力します。
# リモート名が異なる場合は適宜 <code>origin</code> の箇所を修正。
pushを取り消したい
# このやり方はpush した、コミットを取り消し、リモートから削除。無かったことに
# 直前のコミットを取り消す
git reset --hard HEAD^
# 強制的にPushする
git push -f origin master
pushしたコミットメッセージを変更したい
# このやり方はpush した、コミットを取り消し、変更し上書き。無かったことに
# local履歴の確認
git log --online
# 直前のコミットメッセージを変更する
git rebase -i HEAD~1
# 3つ前のメッセージを変更する際はこのように
git rebase -i HEAD~3
# エディターが開くので変更したいコミットのpickをeに変更
# :wqを押して上書き保存して終了。
# --amend にてコミットメッセージを変更
git commit --amend -m "[modify]新規投稿ページ修正 #37" //issue番号を追加
git rebase --continue
# --onelineにて確認
git log --online
# 他にeに変更したコミットがある場合は上から順次繰り返す。最後にpushで問題ないと思う。(未確認)
# 強制的にPushする
git push -f origin master
Github ブランチ
# ブランチ確認
git branch
# developブランチ作成
git checkout -b develop main
# 再度確認
git branch
# 作成したブランチをリモートに反映
git push -u origin develop
Python class
class TestClass:
x = "変数1"
def test_method1(self):
print(self.x)
def test_method2(self, arg1):
print("引数1:" + arg1)
testClass = TestClass()
testClass.test_method1() # ⇒ 変数1
testClass.test_method2("引数Test") # ⇒ 引数1:引数Test
Linux Port Check cmd
Linuxで接続待ちをしているポートを確認する(ssコマンド)
■ssコマンドのオプション
-a 全てのソケットを表示
-n サービス名に変換せずに表示
-t TCP情報のみ表示
-u UDP情報のみ表示
# TCPポートのみを表示する
ss -atn
# UDPポートのみを表示する
ss -anu
# TCP、UDPポート両方表示する
ss -atnu
Docker コマンド詳細
logs
使い方: docker logs [オプション] コンテナ
コンテナのログを取得
--details ログに追加情報を表示
-f, --follow=false ログの出力をフォロー(表示し続ける)
--help 使い方の表示
--since="" タイムスタンプ以降のログを表示
-t, --timestamps=false タイムスタンプを表示
--tail="all" ログの最後から指定した行数を表示
windows11 自動ログイン
- Windows11起動後のパスワードを省略する
1.[Windowsシステムツール⇒名前を指定して実行] ボックスに「netplwiz」又は「control userpasswords2」と入力し、「OK」を押す。 管理者のパスワードまたは確認を求められた場合は、パスワードを入力するか、確認情報を提供する。
- チェックボックスが表示されない場合はレジストリを変更
ユーザーアカウントの設定画面で「ユーザーがこのコンピューターを使うには、ユーザー名とパスワードの入力が必要」チェックボックスが表示されない場合、レジストリ設定を変更します。
以下の手順を実行します。
- regedit.exeを実行
- 「コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PasswordLess\Device」に移動
- 「DevicePasswordLessBuildVersion」の値を「2」から「0」に変更
変更後すぐにチェックボックスが表示されるようになるはずです。
ZSH
cdの後にlsしたい
参考:cdした後にlsするのはzshにやらせよう
下記を .zshrcに追記してあげる
chpwd() {
if [[ $(pwd) != $HOME ]]; then;
ls
fi
}
# 読み込み(設定反映)
source ~/.zshrc