Heroku DynoのFreeプランで強制的にSleep(スリープ)させる方法はあるか?
おそらくありません。
StackOverflowの記事は2015年と古いですが、公式にも記載がないため、時間の変更も強制的にsleepにしてレスポンスを確認することもできなさそうです。
30分待つことでしかスリープには出来ません。
Freeプランでしかsleep機能は無いため、不要といえば不要で、そのあたりが気になる人は有料プランを使えということのようですね。
ラズベリーパイのSDカードが壊れたときのデータ救出について
SSHでのログインが拒否されたりその他サービスが不安定になり、ディスプレイにも何も表示されなくなってしまったので、やむなく、強制再起動を実施。
実施後に、下記のようなログが書き出されてループ状態になって起動しなくなってしまった。
blk_update_request: I/O error, dev mmcblk0, sector 820408 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
とりあえず、データをバックアップしていなかったので、救出するためにext4でデータを読み込む方法を考えた。
SDカードリーダを接続したWindows10のPCにVirutalBoxをインストールし、Debianからマウントしデータを読み出すことにした。
ファイルシステムはext4で、WindowsでもExt2Fsdを使って読み込めるらしいが、不安だったのでLinuxで実施。バージョンによっては、WSL2でもマウントできるかもしれない・・・。
詰まったところとしては、なかなかSDカードリーダがVirtualboxのゲストOSで認識しなかったところと、マウントがうまくできなかったこと。
1つ目の認識しないのは、仮想マシンの設定のUSBの設定をガチャガチャしたり、ゲストを再起動したり、抜き差ししたり、起動しているVMのUSBメニューからクリックしてチェックしたり等を行った。
基本的には起動前からデバイスは接続しておいたほうが良さそう。
2つ目のマウントがうまくできなかったことは、SDカードかファイルシステムが壊れているからか、読み取り専用でしかマウントできなかったためで、下記手順でマウントして、cpすることができたのでメモとして残す。
具体的にはmountする際に、error mounting cannot mount read onlyというエラーが出た。
どのファイルをコピーしているか、ディレクトリ配下のファイルもコピーしたかったので、下記オプションで実施。
リダイレクトとかで取るのが普通だと思うが、考えるのが面倒だったので、scriptでログを取った。
# mount -o ro,noload /dev/sdb2 /mnt/drive
# script
# cp -aRv /mnt/drive/ /backup_sd/
# Ctrl + d
最後まで書いて、ほぼ同じような記事が見つかった・・・。
以上
VirtualBox6.1.10(ホスト:Windows10,ゲスト:Debian10.9.0)の共有フォルダでデータをコピーするまで
0.ゲストOS(Debian)をインストール
1.VBoxのメニューから「デバイス」-「Guest Additions CD イメージの挿入」をクリックし、拡張機能をインストールするためのディスクをマウントする。
2.色々やって、Guest AdditionsをDebianへ追加する。 下記を参考にすると、apt-getとかが必要っぽいので実施(これをしなかったせいか自動でマウントできなかった) https://gist.github.com/estorgio/1d679f962e8209f8a9232f7593683265
# apt-get update
# sudo apt-get install build-essential linux-headers-`uname -r`
# cd /media/cdrom0/
# bash ./VBoxLinuxAdditions.run
3.VBoxのメニューから「デバイス」-「共有フォルダ」-「共有フォルダー設定」をクリックし、下記の設定を行う。
フォルダーのパス:適当なホスト(Windows)のフォルダを選択
自動マウント:チェック
マウント名:/media/sf_shared
永続化する:チェック
4.Debian上で/media/sf_sharedを作成
# mkdir /media/sf_shared
5.再起動する
# reboot
6.自動でマウントされるので、よしなにコピーする。
ESXiで構築したLinux仮想マシンのディスク容量を広げる方法
前提として、
CentOS7 xfsで
ルートパーティション
bootパーティション
swapパーティション
でインストールを行ったLinuxのルートパーティションを拡張する。
1.ESXi上でディスク容量を拡張する。
2.ルートパーティションを広げるために、インストールメディアから起動させる。
※ISOをブートできない場合があるので、起動シーケンスの遅延などを試す、
2.5 Rescure to centos systemを選択
3.起動した際に「3」を押し、マウントをさせない。 dev/sda3は環境により異なる。「1」を押すと/mnt/sysimage/配下にマウントした状態で起動する。 マウントした状態でrootパーティションをアンマウントできなかったため、「3」でそもそもマウントさせない状態で行うことを推奨。
parted
(parted) printで現在の状態を表示しておく。
4.partedを使いパーティションを「resizepart 3 -1s」を行い、「q」で終了する。
5.「xfs_repair /dev/sda3」でファイルシステムの検査を行う。 (不要かも)
6.再起動を行い、マウントされた状態で「xfs_growfs /dev/sda3」で最大サイズにパーティションを拡大する。
7.以上
Azure DevOps Tips
※特筆しない限り、管理者でログインした環境で実施
パブリックプロジェクトの作成を許可しない設定
「Organization settings」->「Security」「Policies」->「Security policies」「Allow public project」を「Off」に設定
これにより、すべてのプロジェクトがprivate扱いになり、匿名ユーザでプロジェクトを閲覧することが不可能になる。
一般的な会社などの組織であれば、この設定は誤設定防止に有効。
一度無効化しても、再度有効化すると、public設定していたプロジェクトはpublicにもどり、外部から確認することができる。 Project settingsのVisibilityから変更できるが、Offにした状態では強制的にprivate扱いになり、変更できない。Onにすると、変更できるよう項目が表示される。
SSHキーを使った認証を行わない。
「Organization settings」->「Security」「Policies」->「Application connection policies」「SSH authentication」を「Off」に設定
これで、SSHキーを使った認証はできなくなる。
GUI上でSSHが使えるように表示されるが、実際には下記の結果になり、使用できない。
Onで接続できた時のログ
# git clone git@ssh.dev.azure.com:v3/~~~ Cloning into '~~~~'... remote: Azure Repos remote: Found xx objects to send. (x ms) Receiving objects: 100% (xx/xx), done.
Offで接続できた時のログ
# git clone git@ssh.dev.azure.com:v3/~~~ Cloning into '~~~~'... remote: Public key authentication failed. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
自律のCiscoAPでSNMPでクライアント数を取得する方法
環境
AP
ap#show version
Cisco IOS Software, C1700 Software (AP3G2-K9W7-M), Version 15.3(3)JK, RELEASE SOFTWARE (fc1)
config
snmp-server community public RO
$ snmpwalk -v2c -c public 192.168.3.20 .1.3.6.1.4.1.9.9.273.1.1.2.1.1
SNMPv2-SMI::enterprises.9.9.273.1.1.2.1.1.1 = Gauge32: 1
SNMPv2-SMI::enterprises.9.9.273.1.1.2.1.1.2 = Gauge32: 0
注釈:
.1が2.4GHz
.2が5GHz
以上