Windows hostsファイルを編集する
管理者PowerShellに以下を貼り付ける。 notepad C:\WINDOWS\system32\drivers\etc\hosts
管理者PowerShellに以下を貼り付ける。 notepad C:\WINDOWS\system32\drivers\etc\hosts
管理者cmdで実行する。 ; ファイル mklink C:\link C:\original ; ディレクトリ mklink /D C:\link C:\original
psql --user myuser postgres ALTER ROLE myuser WITH PASSWORD 'new_password'; https://www.postgresql.jp/document/13/html/sql-alterrole.html https://www.postgresql.org/docs/13/sql-alterrole.html https://stackoverflow.com/questions/12720967/how-to-change-postgresql-user-password
psql --user myuser postgres ALTER DATABASE mydatabase RENAME TO new_mydatabase; https://www.postgresql.jp/document/13/html/sql-alterdatabase.html https://www.postgresql.org/docs/13/sql-alterdatabase.html https://www.postgresqltutorial.com/postgresql-rename-database/
Ubuntu 20.04にアップデートしてから、ネットワーク設定の変更時(接続のON/OFFなど)にSystem policy prevents control of network connectionsと表示され、認証を要求されるようになりました。 ここまではまだいいのですが、認証が表示されるたびに数秒間デスクトップがハングする状態になっていて、ストレスでした。 Keyringのロックを解除するときも数秒間ハングするので、似た原因がありそうです。 ひとまず、設定変更時の認証を要求されないようにして、ハングを防ぐことを試みました。結果として試みは成功し、ハングを回避できるようになりました。 https://unix.stackexchange.com/questions/534469/system-policy-prevents-control-of-network-connections https://code.luasoftware.com/tutorials/linux/ubuntu-prompt-system-policy-prevents-modification-of-network-settings-for-all-users/ /etc/polkit-1/localauthority/50-local.d/50-allow-network-manager.pkla [Allow Network Manager all Users] Identity=unix-user:* Action=org.freedesktop.NetworkManager.settings.modify.system;org.freedesktop.NetworkManager.network-control ResultAny=no ResultInactive=no ResultActive=yes systemctl restart network-manager.service
https://unix.stackexchange.com/questions/470709/how-do-i-stop-disable-unattended-upgrades-from-being-launched-automatically 勝手にnvidia driverの更新が走って、 カーネルに読み込まれているdriverバージョンと、 ディスク上にあるdriverバージョンが一致しなくなって、 デスクトップアプリが起動しなくなったりする。 どうせ結構な頻度でapt upgradeするし、 再起動が保証されないタイミングで更新されて、 不安定になるのはいただけない。 sudo dpkg-reconfigure -plow unattended-upgrades これでTUIが起動するので、<No>を選ぶ。
Linux上でプログラムの実行をスケジュールするためのプログラム。 独自の書式をもつcrontabファイルでスケジュールを設定する。 想定環境 Ubuntu 20.04 /etc/crontab SHELL=/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin MAILTO= # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) crontabの時刻形式は独特で、複雑な設定を新しく書き起こすのは面倒くさい。 ...
RDPと違い、VNCでは接続先の音声を送れないことがある。 接続先のデスクトップ(SSH・VNCサーバ)で再生された音声をSSH経由で送信し、SSH・VNCクライアント側で再生できるようにする。 https://raspberrypi.stackexchange.com/questions/8621/how-to-set-up-a-pulseaudio-sink https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#module-tunnel-sink-new module-tunnel-sink-newの実装はすでにmodule-tunnel-sinkで動くようになっている(pulseaudio 13.99.1) 音声を受け取る側(SSH・VNCクライアント、PulseAudioサーバ) 受信側 /etc/pulse/default.pa load-module module-native-protocol-tcp auth-ip-acl=127.0.0.0/8 load-module module-null-sink sink_name=DummyOutputRemote0 sink_properties=device.description="DummyOutputRemote0" load-module module-loopback source=DummyOutputRemote0.monitor source_dont_move=true DummyOutputRemote0に対して音声が送られてくる。 DummyOutputRemote0.monitorで入力として音声を拾うこともできる。 受信側 ~/.ssh/config Host your-server # VNC LocalForward 15900 localhost:5900 # PulseAudio RemoteForward 14713 localhost:4713 音声を送る側(SSH・VNCサーバ、PulseAudioクライアント・サーバ=中継用) 送信側 /etc/pulse/default.pa load-module module-tunnel-sink sink_name=Remote server=tcp:127.0.0.1:14713 sink=DummyOutputRemote0 PulseAudio再起動(pulseaudio -k)後、 接続先のデスクトップ上で音声出力デバイス(Sink)をDummyOutputRemote0に設定する。 DummyOutputRemote0が表示されない場合、どこか設定が間違っていると思われる。 電源メニューから音声デバイスを変更できるようにするGNOME拡張 https://extensions.gnome.org/extension/906/sound-output-device-chooser/
背景 Discourseをセットアップしようとしていたところ、いくつかのEmailプロバイダが紹介されていた。 https://github.com/discourse/discourse/blob/4e0a43f2117ac83bcf7e0f9bed65370f6c4c15bb/docs/INSTALL-email.md Mailgun SendGrid Mailjet Elastic Email Discourseはセットアップにメールサーバが要求される。以前のMastodonのセットアップでは、Gmailとアプリパスワードを使った簡易セットアップを使ったが、経験積みとセキュリティ上の懸念から、今回はメールサーバを用意することにした。 名前を聞いたことのあるSendGridを使う。業務上の利用を想定しているようだが、個人による利用として続行する。スケールする商用サービスでの利用ではないが、利用経験は技術選定の上で大事だと思う。その分、Abuseしないように考えなければならないが。 Freeプラン https://sendgrid.com/pricing/ 1日に100メールまではFreeプランが使用できる。自分しか使わない、またはごくごく小規模な利用では十分だろう。 登録 https://sendgrid.com/ Start For Freeから登録する。 細かい登録の過程は省略する。 ドメインの認証 ダッシュボードを開く。 https://app.sendgrid.com/ https://app.sendgrid.com/settings/sender_auth/domain/create ドメインプロバイダ(DNSホスト)の選択を求められる。 お名前.comはリストになかったので、Other Host (Not Listed)を選択し続行する。 あまり意味はないだろうが、Which DNS Hostにプロバイダ名を書いておく。 ドメイン名を入力する。 DNSサーバに登録すべき認証用のレコードが表示される(DNSサーバにクエリを送れば誰でも確認できるので公開情報)。 ドメインプロバイダ/DNSサーバでDNSレコードを設定する。 設定が反映されるまでしばらく待つ。 ドメインが認証された。 これでSendGridを使って、このドメインからのメールを送信できるようになった。 APIキーの発行(送信テスト) https://app.sendgrid.com/guide/integrate Web APIを選択する。 プログラミング言語/利用プログラムを選択する。チュートリアルの出し分けをするだけで、ここでの選択に特に意味はないと思われる(チュートリアルなしでAPIキーを発行もできる: https://app.sendgrid.com/settings/api_keys)。 とりあえずcURLでテストすることにして、APIキーを発行する。 下のcurlコマンドの送信JSONデータを編集する。 toを自分のメールアドレス、fromを認証したドメインのメールアドレスに変える。 特にfromのメールアカウントを作成する必要はなく、 [email protected]のように適当なアカウント名をつけたアドレスを使えばよい。 コマンドを適当な端末で実行し、メールが届けば成功。 SendGrid上でも送信成功を確認できる。
https://hub.docker.com/r/dperson/smokeping Copy Configs docker run --name smokeping --rm -d dperson/smokeping:latest docker cp smokeping:/etc/smokeping ./config docker rm -f smokeping docker-compose.yml version: '3.9' services: smokeping: image: dperson/smokeping:latest restart: always ports: - '{SMOKEPING_PORT:-127.0.0.1:8000}:80' volumes: - './config:/etc/smokeping:ro' - './data:/var/lib/smokeping' environment: TZ: Asia/Tokyo config/config.d/Targets *** Targets *** probe = FPing menu = Top title = Network Latency Grapher remark = Welcome to the SmokePing website of xxx Company. \ Here you will learn all about the latency of our network. + Home menu = Home title = Home Network #parents = owner:/Test/James location:/ ++ Router menu = Router (192.168.0.1) title = Router (192.168.0.1) host = 192.168.0.1 ++ MyServer menu = MyServer (192.168.0.2) title = MyServer (192.168.0.2) host = 192.168.0.2 #alerts = someloss