それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

linux

ext4 の拡張はマウントしたまで出来た

ext4 のリサイズ マウントを解除して、、て思ってて、うっかりやらかしたら、そのまま拡張できちゃった。 マウントしたままで出来たわ takuya@:~$ sudo resize2fs /dev/mapper/spanning--test-spanning--lv resize2fs 1.43.4 (31-Jan-2017) Filesystem at /d…

findコマンドで日付と時刻を指定して最近のファイルを削除する

find コマンドで最近のファイルを削除したい 間違って作っちゃったファイルなどを削除したい。 find コマンドならそれも簡単 find コマンドで今日のファイルを見つける 今日(直近24時間)のファイルを見つける find var/tmp -type f -daystart -mtime -1 …

nl で空行(empty line) を表示する

nl コマンドで行番号を空行を含めて表示する なにもない行を無視してしまうので、空行を含めて行番号表示したいですよね。 オプションをつける nl -b a -b, --body-numbering=STYLE のオプションで all の a をつける。 実行サンプル takuya@webhooks$ cat .…

sed で指定行に「挿入」する

sed で指定した行に文字を挿入 sed 使うと、X行目に文字を追加することができます。 sed -i '3i#Hello' /etc/hosts これを実行すると、 3行目に、#Hello が挿入されます。 ちゃんと3行目に追加されたのか nl を組み合わせることで、sed の結果を行数を見な…

ブラウザでリモートのターミナルを起動できるShell in A box がiOSから使うのに便利

Shell in a Box が便利だった Macからはターミナルで解決するし、特に生活に不便を感じないんだが、ちょっとしたファイルサーバーのメンテンス(ファイル消す)とかでMac起動するのもめんどくさい iOS Safariから使えるターミナル 各種ターミナルのアプリが…

Macが接続しているルーターのIPアドレスをコマンドで取り出す。ルーティングを取得する方法4種

ルーターIPをパパッと取り出したい。 無線ルーターのIPにアクセスしたいときに、設定→ネットワーク→無線LANとたどるのは面倒くさいですよね。 ルーターIPとはなにか? ネットワークの用語で言えばデフォルトゲートウェイである。つまり ip コマンドでデフォ…

lvm でディスクのサイズをパパッと変更するコマンド

lv で管理しているボリュームのサイズは簡単に増減できるんですね。 ディスクのサイズを増やすとき sudo lvextend --resizefs --size +10G /dev/mapper/my-root ディスクのサイズを減らすとき sudo lvreduce --resizefs --size -10G /dev/mapper/my-root res…

partprobeが見つからない。

partprobe を実行しようとしたら コマンドが見つからない。 partprobe command not found .になった。 partprobe ずっと使ってて、いつ入れたか、どのパッケージと入れたかわかない。 parted ぐぐったら、 partprobe は parted についてくる sudo apt instal…

文字の実体参照と実コードを変換する

文字の実体参照と実コード(文字)を変換する。 sed や nkf でもできる ruby なら出来るんだけど >>> escaped_data = b'\\x50\\x51' >>> escaped_data.decode("unicode_escape") python / nodejsだと、どううやるんだっけ。。。 参考資料 https://stackoverf…

systemd-networkdが初期設定で有効にならないことがある。

systemd-networkd が enable になってない。 まいった。何度かこういう事態が発生する。 Linuxを再起動するとネットワークがつながらない。 DHCPで割当する、ネットワークが再起動後に有効にならない。VirtualBoxでよく起きる。 そのたびに ip set ...や res…

unarが Uncaught exception NO Character Conversion Exception

unar をシェルコマンド経由で自動実行してたらエラーになった unar: Uncaught exception NO Character Conversion Exception Unar Can't get cString from Unicode string などとエラーになる。 調べてみたら LANGが無いことが原因だった。 LANG=c の状態でz…

splitで指定した行数でファイルを分割し拡張子も付与するsplitコマンドの基本的な使い方

split コマンド便利ですよね split コマンドは、ファイルを分割するコマンドです。 一度くらいは見たことが在るんじゃないでしょうか。 split コマンドでファイルを分割する ファイルを分割してもアルファベットのよく分からないファイル名になるので、よく…

cut コマンドで途中を棄てる(除外)する

cut コマンドで中間を削除したい時 絡む指定の複数の条件を 感まで繋げば、途中のカラムをすてて、歯抜けを作ることが出来る。 cut -f 2-5,7-10 ほかにも、カンマでつなぐのは複数個作れて cut -f 1,3,5,7 のように数字を書いてもいいし、数字が続く場合は、…

htop の更新頻度(インターバル)を指定する

htop コマンドで更新の時間を指定する。 htop -d X X には in tenths of second つまり 10分のX秒で更新される 何もしないとデフォルトは2秒(X=20)だった 1秒おきに更新させるには htop -d 10 0.5 秒間隔の更新は htop -d 5 こんな感じ。 わかりにくいよね…

SSHのパスワード認証をシェル経由で手軽に行えるコマンド

ssh のパスワード認証を使いたい。 ssh で鍵登録は場合によって面倒くさい。 パスワードは弱いってのはわかる。でもシェルを実行するユーザごとに鍵をつかったり鍵管理は煩雑になる。 sshpass コマンド ssh の認証をパスワードで、シェルコマンドでおこなえ…

ls コマンドで結果を1行ごと1列にならべてループを楽にしたい

ls の結果からディレクトリ名を除きたい。 ls すると結果がズラッと並んでしまって、後処理をしにくい takuya@Desktop$ ls / '[' cat cp date df echo expr kill launchctl ln mkdir pax pwd rm sh stty tcsh unlink zsh bash chmod csh dd domainname ed ho…

find コマンドでgit フォルダを無視したい(ただし.gitフォルダは表示したい

find コマンドで gitがズラッと並ぶの不便 ああ、、、、要らないよこんなの。。。 takuya@pages$ find takuya@pages-sample$ $(which find ) -type f ./.git/COMMIT_EDITMSG ./.git/config ./.git/description ./.git/FETCH_HEAD ./.git/HEAD ./.git/index .…

ln -s で相対シンボリック作成のやりかたと解説。

ln -s で失敗した経験ありますよね? /var/www/log/index.php から /var/www/html/index.php へリンクする場合。こういうときに、相対パスをぱぱっと作れたら嬉しいでしょ? でも、ぱぱっと作れなかったり、相対パスを作ったつもりがリンク切れてたり。。そ…

Systemd 時代のresolv.conf

/etc/resolv.confがない。 驚いた、Resove.conf がなくなってるんですよ systemd 管理下に置かれた /etc/systemd/resolved.conf 代わりに、次のファイルがが出来た 昔からある resolv.conf は systemd が管理してしまう。 もしかしてリンク? takuya@ubuntu0…

umask の初期設定を全部のユーザーに適用する

umask を全部のユーザーに強制する umask と グループのsticky ビットを使って、ユーザー間でファイルを共有してファイルのパーミッションをグループで編集できるようにしておくと便利。 /etc/profile このファイルは必ず読み込まれるので、ここの最上位で設…

シェルのalias されたコマンドの展開する - alias-expand-line

シェルのコマンドを展開したい。 composite 使おうとしたら、候補多すぎて面倒くさい。補完が補完にならないよね takuya@~$ com<tab> comm command compare compgen complete compopt composer composite compress comsat 最初の3文字くらいで、展開されてほしい</tab>…

ssh の秘密鍵をサーバー毎にかえる方法

SSHの秘密鍵を使い分けたい。 git サーバーや自宅サーバーや、さくらVPSやAmazonクラウド・・・そしてお仕事のサーバーなど SSHサーバーが多くなってくると鍵の管理が面倒になったりします。 サーバーごとに秘密鍵を変えることが出来る ssh コマンドを使う際…

nginxで unix ドメイン socket をlisten してバックエンド専用に設定する。

nginx 使いまくり問題 docker やCDNとか使ってると、いくつのプロキシが挟まるんだよ。管理面倒くさいんだよ。って問題にぶち当たる。特にphp 関連。 browser → 企業・学校内プロキシ → CDN → docker ホスト nginx → dockerコンテナnginx → php-fpm コレ全部…

iptables の使い方 その1 ちょっとだけ理解して使うiptables

最低限のiptables 余計なことをわすれて、最低限必要なiptablesに絞って、使い方を書いてみた。 iptables は複雑で面倒くさい。 はい、そのとおりです。iptables は面倒くさいので、ufw が作られています。 ufw は iptables を目的別に管理してくれる人です…

rclone コマンドで google ドライブにデータを転送する(rcloneインストール方法と使い方)

rclone コマンドが便利 rclone コマンドは、各種のストレージサービス間でデータの転送が出来るように設計されたクライアントコマンド。 rclone は数多のクラウドと連携してクラウド間でデータ転送を行うことが出来て、各種サービスのフロントエンドプログラ…

ssh をiptablesで国内限定にする(日本国外のIPから規制する)

グローバルIPでssh を有効にしたらスキャンがいっぱい来る 別に、実害は無いんだけど、ちょっと気持ち悪いよね。 1時間で1000近いログが溜まるんですね。 ポート22のsshはすげぇアクセス来るんだよね。 ISP側である程度のフィルタをされているはずなん…

ubuntu がネットワーク待ちで起動が遅い・・・

ネットワーク周りをいじると再起動が遅いですね。 起動時にネットワーク待ちになる。DHCP待ちになる?? A start job is running for wait for network to be configured. これで、しばらく時間がかかるので、Virtualboxなどから使ってると大変 対策 ネット…

jot コマンドが便利。乱数・連番生成で、ループ処理や文字列生成にとてもいい。

jot コマンドを知りました。 jot コマンドは、連番の数字やアルファベットを生成したり、ランダムな数字を生成したりに使えます。 連番ファイル名などを作るのに大活躍です。 上手に使えば、Bashのスクリプトで seq や $RAMDOM よりも便利かもしれないっす。…

nextcloud 認証のダイアログが何度も表示される問題

認証のPrivilegeを求めるダイアログが何度も表示される問題に直面した。 Authentication required が連発して先に進めない。 散々探し回ったら、時刻だった。 サーバーの時刻とクライアントの時刻にずれが大きかったことによるものだった、 ntpdate で修正し…

SSHをSFTPに制限して、ディレクトリを制限(chroot)した専用アカウントを作る

なぜSFTP専用アカウントなのか 前提条件 SSHを起動してログインできるようにする ユーザーの作成 ユーザー名の保護 SFTPの設定 /etc/ssh/sshd_config Subsystem sftp /usr/lib/openssh/sftp-server match user match group or match user name* PasswordAuth…