やまみの雑多ブログ

勉強したことをアウトプットしたり、しなかったり

Linuxユーザーを追加してSSH接続でログインできるようにする

鍵のつくり方はここと同じような要領で作成 yamanomi5656.hatenablog.com

設定したいLinuxサーバにログインして作業開始

SSHDの設定

設定ファイル/etc/ssh/sshd_configを確認

vim /etc/ssh/sshd_config

AuthorizedKeysFile .ssh/authorized_keysの記述があればOK。なければ追加
認証鍵ここに置いてますからねという設定

再読み込みしておく

/etc/init.d/ssh restart

sudo権限の設定準備

※AMILinuxであれば、初期状態で設定されているので対応不要

wheelグループにsudo権限があるか確認

visudo

sudo権限に関する設定がずらっと記載されている
%wheel ALL=(ALL) NOPASSWD: ALLが、コメントアウトされていたらコメント外す
これでパスワードナシで、rootっぽい振る舞いができるようになる

ユーザーの追加

ユーザー追加してwheelグループに所属させる

adduser [user_name]
usermod -G wheel [user_name]

公開鍵を保存する

作ったユーザーに切替

su - [user_name]

ここからは作成ユーザーとしてコマンドを実行する
認証鍵ここに置いてますからねという設定 で指定した場所に鍵を置く

mkdir .ssh
vim .ssh/authorized_keys

公開鍵をコピペして、保存したらOK(i → コピペ → Esc → :wq)

最後にファイルやフォルダの権限を変更して終わり

chmod 600 .ssh/authorized_keys
chmod 700 .ssh

600とか、700とかはこちらの情報を見て理解しました
http://rousi.com/tag/library/permission.html
一番わかりやすかった・・
私が子どものころからアウトプットしてくれている方々に感謝

GitLabでもGitHubでもSSH接続するまでの手順

Windowsでやりました、簡単にコマンドのみ( ..)φメモメモ

$ ssh-keygen
Enter file in which to save the key (フォルダ):

そのままEnter

Created directory '/c/Users/user/.ssh'.
Enter passphrase (empty for no passphrase):

パスワードを2回入力
※*とか●とかは表示されないけど、心眼で文字数は確認

公開鍵の方をGitHubやGitLabに登録

$ ssh -T git@github.com

鍵の名前もフォルダも変更しなかったら、そのままyesで先に進めて無事接続完了
You've successfully authenticatedでたらOK

docs.github.com
2021/4/8追記
公式では鍵の生成は Ed25519を推奨しているよう

$ ssh-keygen -t ed25519 -C "your_email@example.com"

Ed25519アルゴリズムサポートしていない場合、4096というわけで↑のコマンドだと2048なので弱い

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Git修正中にブランチ切り替えて確認したいときはスタッシュで一時退避

一時避難する

git stash

ステージとワークツリーにある情報が一時退避される。

スタッシュ一覧確認

git stash list

退避したスタッシュの一覧が確認できる。
最新の退避した情報の方が番号0になる。
※二つ作ったときに、1が最新と思って反映してとても困った

復元する

git stash apply --index

これで最新のスタッシュを復元できる。
indexオプション付けることで、ステージの情報も復元できる。

git stash apply [スタッシュ名]

listで確認したスタッシュ名を突っ込めば、どのスタッシュを復元するか指定できる。

削除する

git stash drop

最新のスタッシュ消せる。

git stash clear

全消し(not ぷよぷよ

デスクトップPCでBIOS設定を開きたいけどモニタに映らない

PCも絶対に動いているし、Enterを押すと普通に起動するのに BIOS画面だけどうにも表示されない
そんな時にメシアブログに出会いました。(関係ないけどAMP対応されていて、スマホだとトップで出てきた。AMP対応大切!)
「BIOS画面」が表示されない! モニターへの配線が原因かも | ときめきの秘密基地

グラフィックスボードとかマザーボードとかよくわからなかったが、私のPCの場合、こっちに挿せってことでした。
f:id:yamami78651:20210318224124p:plain

挿すと、PC起動時にロゴとかBIOS画面表示キーが表示される。
そもそも、PC起動時にロゴとか表示されない人はマザーボードの方に挿してるかも。

SQLServerでテーブルのバックアップを取っておきたい

OracleDBでデータ移行してるときに、よくバックアップ取るときに以下のSQLを使っていた。

CREATE TABLE wk_PopiData SELECT * FROM PopiData;

SQLServerでも同じことしたくて、CREATEから始めたかったけど思てたんと違ったのでメモ。

SELECT * INTO wk_PopiData FROM PopiData;

バックアップはいつか消すことも忘れず

DROP TABLE wk_PopiData;

8桁のカラーコードをgruntで圧縮するとうまく圧縮されない

CSSは作ってもらったモノを右から左に圧縮する人なので、詳しくないけどエラーになったのでメモ。
カラーコードには6桁、短縮版の3桁のほかに、スケスケ度を7、8桁目に指定するそう。
gruntで#ffffff00を圧縮すると、#fff00になって、色の指定が正しく表示されなくなる。

#ffffff#fffの変換が影響しているのか、上手くいかないんだね。
7、8桁目がスケスケ度という情報を手に入れた私には分かる!00要らなくね?と思ったが、うっすら消えていくデザインには必要だったよう。
修正依頼を投げて終わり。
別の書き方で実装してもらえました。

確認バージョン

grunt-cli v1.3.1  
grunt v0.4.5  

バージョン古すぎ? GitHub - gruntjs/grunt: Grunt: The JavaScript Task Runner

Gitコマンドチートシート

よく使うやつ、ここに書く

ブランチのコミット履歴見る

git log --oneline --decorate

devブランチ最新化(プル)

git fetch origin
git merge origin/dev dev

リモートブランチ削除(GitHubの方も消え)

git push --delete origin ops/test_a

誰かが消したやつ(GitHubで消したやつ)を反映する

git fetch -p

変更したやつ全部stageにあげ、コミット、プッシュ

git add .
git commit
git push origin [プッシュするブランチ]

GitHubでプルリク作成後、コンフリクト発生時

GitHubの画像
f:id:yamami78651:20210309231347p:plain

  • マージしようとしているブランチの方にマージして競合を解消する方法
git fetch origin
git checkout -b feature/testB origin/feature/testB
git merge dev

→マージしようとしているブランチに変更が反映されるので、devの変更ありきのブランチになってしまう(独立性が失われる)

  • マージするブランチにそのままマージして競合を解消する方法
git checkout dev
git merge --no-ff feature/testB
git push origin dev

→マージ先にしか修正が反映されないので、別のブランチにアップするときにも同じことが発生することがある
→--no-ff「no fast-forword」の意

競合解決して、プッシュするとMerged
f:id:yamami78651:20210309233002p:plain

ファイル変更をいったん無視

 git update-index --assume-unchanged .gitignore

無視したのを戻ってこさせる

git update-index --no-assume-unchanged .gitignore

特定のコミットを反映する

git cherry-pick [取り込むコミットID]

スタッシュする&戻す

git stash
git stash apply --index