AWS EC2 などでディスクのボリュームを変更した後に、パーティションを拡張するには growpart と resize2fs を使うと、ディスクのアンマウントをしなくても済みます。
各クラウドサービスで違うと思いますが、まずはボリュームのサイズを変更したら、Linxu のコンソール上で、
$ growpart /dev/xvdb1 1 CHANGED: partition=1 start=2048 old: size=209713152 end=209715200 new: size=314570719 end=314572767 $ resize2fs /dev/xvdb1 resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/xvdb1 is mounted on /home; on-line resizing required old_desc_blocks = 13, new_desc_blocks = 19 The filesystem on /dev/xvdb1 is now 39321339 blocks long.
で、おしまい。
PHP-8.1 on Ubuntu-22 で composer をインストールしようとした時の事。
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" PHP Warning: copy(https://getcomposer.org/installer): Failed to open stream: Connection timed out in Command line code on line 1
PHP での copy() でタイムアウトしてる?
curl とか wget なら問題ないから、
allow_url_fopen とか allow_url_include とか、PHP 関連かと思って色々試しても全然解決できない。
なんかクラウドの環境の依存かなとかホスティングかなとか、散々困った挙句、結局以下で解決。
# echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
なんでこれで解決するの
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '{your_db}';
SELECT database_name, table_name, index_name, ROUND(stat_value * @@innodb_page_size / 1024 / 1024, 2) size_in_mb FROM mysql.innodb_index_stats WHERE stat_name = 'size' AND index_name != 'PRIMARY' ORDER BY size_in_mb DESC;
EC2 インスタンスの /var/ ドライブを別のEBSに置き換えた時のメモ。
サーバーは止める想定で。 init 1 シングルモードでサーバーに接続する方法など。ssh -f -N -R 9000:localhost:3000 user@example.com
リモートサーバーの 9000 番に接続した際に、接続元のローカルホストの 3000 番に接続する例。-f -N はトンネルだけ作る場合。.ssh/config に書く場合は
Host example HostName example.com Port 22 User user RemoteForward 9000 localhost:3000
ssh -L 127.0.0.1:2525:localhost:25 user@example.com
Centos 6 シリーズは 2020年の11月にとっくに EOL(End of Life) を迎え、サポートは一切されていない。
ただ、仕方なくまだ動いているサーバーはあるわけで、何か追加でパッケージを追加したいなという時に yum が使えず困る。
そんな時は Vault というサービスを使って、古いレポジトリにアクセスし、古いパッケージを yum で入れることができる。
Apache などのアクセスログから、ぱっと簡単な統計を見たい時などに awk は便利です。
便利なものをメモ。
でも最近は大体 goaccess を使っている。
あるストレージの容量が少なくなってきた場合に、余裕のあるボリュームの容量を少し分け与えたいということがよくある。
そんなときは bind mount を使う。
例えば、 /home/ を /var/lib の一部に割り当てたい(割り当ててるわけではないが)場合。
# mount --bind /home/here /var/lib/to_here
こうすると、 /var/lib/to_here に保存されたものは /home/here に保存される、ある種 symlink のようなものだが、リンクとは違い、意識せずに正規のディレクトリとして扱えるので、役に立つことも多々ある。
fstab に書く場合は、
/home/here /var/lib/to_here none bind 0 0
Android アプリをテスト中にふと /etc/hosts を書き換えてテストしたいことがあるが、 Windows の hosts ファイルを書き換えても Android emulator には反映されない。
そこで調べてみたときのメモ
どうしようもない不要メールがキューに溜まってしまうことがあります。
この場合は postsuper コマンドを使用して削除できます。
postfix のメールキューは /var/spool/postfix/ 配下のディレクトリにそれぞれの意味合いごとに溜まります。
例えば deferred のメールを全部削除したい場合は以下のコマンドを実行します。
# postsuper -d ALL deferred
サブジェクト、ってピンポイントでは難しいですが、メール内の文字にマッチしたものだけ削除するときは。
# cd /var/spool/postfix # grep -r -i -l "This is unique subject" ./ | cut -d/ -f3 | postsuper -d -
admin.peers
eth.syncing eth.blockNumber (web3.)eth.accounts (web3.)eth.getBalance(account) web3.personal.unlockAccount(web3.eth.accounts[0]) web3.eth.sendTransaction(from: account, to: address, value: web3.toWei(amount, "ether"), gas: gas })
リンクはここ
https://access.redhat.com/security/security-updates/#/security-advisoriesAPNSの証明書を作成した後に、いつも忘れるこのコマンドをメモ。
openssl pkcs12 -in Certificate.p12 -out apns.pem -nodes -clcerts
CRONジョブなど、予期せず強制終了されたプロセスを確認したい場合に便利なコマンド。
abrt-cli list --since 12345678
12345678 は Unixタイムスタンプ。
多分一番簡単にファイル内の行を削除するのは sed コマンドです。
その他にも grep コマンドを使用したりしても十分行えます。
sed で abc を含む行を全削除するには以下のコマンドを実行します。
$ sed '/abc/d' input.fileパイプで渡すこともできます。
$ cat input.file | sed '/abc/d'
ちなみに sed は他の目的でもかなり色々使えます。行の削除で言うと、行数を指定した方法など。
$ sed '1d' input.file
行をまとめて削除などは
$ sed '1,10d' input.file
以下は同等の値を代入する。
var hoge = document.getElementById("hoge");
var hoge = $("#hoge").get(0);
var hoge = $("#hoge")[0];
近頃のブラウザーのJavascriptエンジンは大体trim関数に対応しているので、以下のようにできる。
var str = " abc "; var trimmed_str = str.trim();
もし古いブラウザのサポートとかでtrim関数が無い場合は、代わりに replace を用いて文字列の前後の空白を取り除くなどの方法がある。
target = target.replace(/(^\s+)|(\s+$)/g, "");
左側のみを取り除く ltrim も同様な方法でできる。
target = target.replace(/^\s+/, "");
右側の rtrim も同様に。
target = target.replace(/\s+$/, "");
もし全角空白も取り除きたい場合は \s+ の部分を [\s ]+ とするとできる。
更に、 prototype 言語らしく String クラスを装飾してやる方法や jquery を使う方法も一応書いておく。
$ sudo gem install cocoapods-deintegrate cocoapods-clean $ pod deintegrate $ pod clean $ rm Podfile