カテゴリー: 技術系memo

  • WordPressのプラグイン更新中に誤ってページ移動してしまい、ずっとメンテナンスモードになったときの対処

    WordPressでプラグインの更新中に、うっかりページ移動をしてしまった。そうしたら、メンテナンスモードのままになり、下記のメッセージが表示されるだけになった。

    現在メンテナンス中のため、しばらくの間ご利用いただけません。

    これの対処は、Wordpressがインストールされている(配置されている)ディレクトリにある「.maintenance」のファイルを消す。

    これがあるとメンテナンスモードとして認識されてしまうので、消す必要あり。

    rm .maintenance

    消した後は、Wordpressにアクセスして、メンテナンスモードが解除されたことを確認する。そして管理画面にアクセスして、残っているアップデートを実施する。

    例)

    zen@xxxxxx:/var/www/html/blog$ ls -a
    .             readme.html           wp-content         wp-settings.php
    ..            wp-activate.php       wp-cron.php        wp-signup.php
    .maintenance  wp-admin              wp-includes        wp-trackback.php
    0.txt         wp-blog-header.php    wp-links-opml.php  xmlrpc.php
    index.php     wp-comments-post.php  wp-load.php
    inf2.php      wp-config-sample.php  wp-login.php
    license.txt   wp-config.php         wp-mail.php
    zen@xxxxxx:/var/www/html/blog$
    zen@xxxxxx:/var/www/html/blog$
    zen@xxxxxx:/var/www/html/blog$ rm .maintenance
  • .NET6のランタイムがインストールされているか調べる方法

    .NET6 のアプリケーションを動作させるために、Windowsに「.NET6のランタイム」がインストールされているかを調べた。同じ方法で、「.NET core」のランタイムがインストールされているかも調べることができる。(.NET6 は、Core系の系譜なので)

    ランタイムがインストールされているかどうかは、Powershellを開いて、下記のコマンドを実行する。

     dotnet --list-runtimes

    .NETのランタイムがインストールされていないときは、dotnetコマンドがエラーになる。dotnetコマンドが正常に実行されれば、ランタイムのリストが表示される。

    .NET6などのランタイムがインストールされているときの例)

    PS C:\>  dotnet --list-runtimes 
    Microsoft.AspNetCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 5.0.10 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 6.0.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.AspNetCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] 
    Microsoft.NETCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 5.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 6.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.NETCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 
    Microsoft.WindowsDesktop.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 5.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 6.0.3 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    Microsoft.WindowsDesktop.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] 
    PS C:\>

    .NET6などのランタイムがないときの例)

    PS C:\>  dotnet --list-runtimes 
    dotnet : 用語 'dotnet' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されま 
    せん。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してく 
    ださい。 
    発生場所 行:1 文字:2 
    +  dotnet --list-runtimes 
    +  ~~~~~~ 
        + CategoryInfo          : ObjectNotFound: (dotnet:String) [], CommandNotFoundException 
        + FullyQualifiedErrorId : CommandNotFoundException 
    PS C:\>

  • SQL Server 2019でsaでログインできない

    SQL Server 2019で、インストール後に、saでログインしようとしたらエラーでログインできず。サーバー認証は「SQL Server 認証モードと Windows 認証モード」にしてある。パスワードはインストール時に設定したものと同じはず。

    念のため、saのパスワードを再設定したところ、無事にログインできた。

  • Chrome OSのLinux開発環境がDebian11に。

    ChromebookのChroms OSのアップデートをしたところ、Linux開発環境のアップグレードの通知が出た。

    もともとDebian GNU/Linux 10 (buster)だったのが、Debian 11 (Bullseye)になるとのこと。ちゃんと通知してくれるのだから、便利。

  • MySQLのユーザを調べる

    MySQLに登録されているユーザを調べるには、mysqlデータベースを選択して、下記のSQL文を実行する。

    SELECT Host, User FROM user;

    Hostが「%」のものは接続制限なし。localhostやIPアドレスが指定されているものは、そのホストからの接続のみに制限されている。

    実行例)

    MySQL [mysql]> use mysql; 
    MySQL [mysql]> SELECT Host, User FROM user; 
    +-----------+---------------+ 
    | Host      | User          | 
    +-----------+---------------+ 
    | %         | testuser         | 
    | %         | root          | 
    | %         | kuro3       | 
    | localhost | mysql.session | 
    | localhost | mysql.sys     | 
    | localhost | root          | 
    +-----------+---------------+ 
    6 rows in set (0.145 sec) 
    MySQL [mysql]>
  • Google カレンダーの上部選択で作業場所を指定できなくなったときの対処

    Googleカレンダーのインターフェース仕様がかわり、Googleカレンダーの日付の上部選択で、作業場所の選択ができなくなった。

    これは、インターフェースをコンパクトするようにGoogle側が変更したことによる影響。Googleカレンダーの設定開くと、「勤務地」の選択項目はあり、これが未指定の場合はカレンダーの上部に作業場所が出てこない。

    https://workspaceupdates-ja.googleblog.com/2022/05/google_17.html

    対応として、とりあえずデフォルトで自宅か勤務先をいれておくことで、カレンダーの上部に作業場所が表示される。作業場所が表示されていれば、そこをクリックすることで、今まで通りに日付ごとの作業場所を変更できる。

    作業場所の表示は、前よりもコンパクトでよいのだが、カレンダー上で作業場所の入力ができるようにしておいてほしかった。この機能は5月10日から段階的にリリースなので、影響が出始めたところだ。最初は、Googleカレンダーがフリーズしているか、不具合化と思っていた。念のため、リリース状況を調べたら、インターフェースの仕様変更だった。

  • リンクサーバのテーブルにアクセスするSQL

    リンクサーバのテーブルにアクセスするには、「[リンクサーバー名].[DB名].dbo.[テーブル名]」の形式でテーブルにアクセスする。これを、SELECT文、INSERT文などにすると、下記のようになる。

    SELECT * FROM [リンクサーバー名].[DB名].dbo.[テーブル名];
    INSERT INTO [リンクサーバー名].[DB名].dbo.[テーブル名] (カラム名, カラム名) VALUES ('値', '値');
    UPDATE  [リンクサーバー名].[DB名].dbo.[テーブル名]  SET 列名 = 値 ;
    DELETE FROM [リンクサーバー名].[DB名].dbo.[テーブル名];
  • そろそろWindowsではSMB1.0でのアクセスが完全に廃止されそうだ

    Microsoftが、WindowsでのSMB1.0のサポート廃止が最終段階に入ったと発表したとのこと。

    「SMB 1.0」サポート廃止は最終段階 ~プレビュー版Windows 11 Homeで既定無効に
    https://forest.watch.impress.co.jp/docs/news/1404113.html

    Windows10 Proでは、機能追加でSMB1.0のClientを追加インストールしないと使えなかったが、Homeエディションでは、まだデフォルトでSMB1.0が使えていたようだ。このHomeエディションで、追加インストール必要なものになるとのこと。ここまでくると、あと1年後くらいにはSMB1.0インストール用のバイナリも提供されなくなりそうだ。

    SMB1.0が使えなくなるとどうなるか。古いWindowsの共有にアクセスできなくなったり、古いNASの共有にアクセスできなくなる。あとは、AD側でSMB1.0サポートがなくなると、古いWindowsからADの管理共有などへのアクセスができなくなるなどの影響があると思われる。古いWindows(Windows XPとかWindows Server 2003など)が残っている場合には注意しておく必要あり。

  • apt updateで、Gitlabの更新で「署名が無効」のエラーが出た

    Ubuntu Server上のGitLabをアップデートしようとして、apt updateしたところ「署名が無効です」のエラーが出た。

    エラー:6 https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu bionic InRelease 
      以下の署名が無効です: EXPKEYSIG 3F01618A51312F3F GitLab B.V. (package repository signing key) <packages@gitlab.com>

    2022年03月02日で、署名の有効期限がきれていたようだ。curlで新しいものを落として、aptキーに加えた(コマンドは下記)。キーを更新したので、あとは通常通りの更新でGitLabの更新ができた。

    curl -s "https://packages.gitlab.com/gpg.key" | sudo apt-key add -

    実際にやったときのログ。

    エラー:6 https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu bionic InRelease 
      以下の署名が無効です: EXPKEYSIG 3F01618A51312F3F GitLab B.V. (package repository signing key) <packages@gitlab.com> 
    187 kB を 3秒 で取得しました (69.6 kB/s) 
    パッケージリストを読み込んでいます... 完了 
    依存関係ツリーを作成しています 
    状態情報を読み取っています... 完了 
    パッケージはすべて最新です。 
    W: 署名照合中にエラーが発生しました。リポジトリは更新されず、過去のインデックス ファイルが使われます。GPG エラー: https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu bionic InRelease: 以下の署名が無効です: EXPKEYSIG 3F01618A51312F3F GitLab B.V. (package repository signing key) <packages@gitlab.com> 
    W: https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/dists/bionic/InRelease の取得に失敗しました  以下の署名が無効です: EXPKEYSIG 3F01618A51312F3F GitLab B.V. (package repository signing key) <packages@gitlab.com> 
    W: いくつかのインデックスファイルのダウンロードに失敗しました。これらは無視され るか、古いものが代わりに使われます。 
    zen@SEVR:~$ 
    zen@SEVR:~$ apt-key list 3F01618A51312F3F 
    pub   rsa4096 2020-03-02 [SC] [期限切れ: 2022-03-02] 
          F640 3F65 44A3 8863 DAA0  B6E0 3F01 618A 5131 2F3F 
    uid           [期限切れ] GitLab B.V. (package repository signing key) <packages@gitlab.com> 
    zen@SEVR:~$ 
    zen@SEVR:~$ curl -s "https://packages.gitlab.com/gpg.key" | sudo apt-key add - 
    OK 
    zen@SEVR:~$ 
    zen@SEVR:~$ 
    zen@SEVR:~$ sudo apt update 
    ヒット:1 http://jp.archive.ubuntu.com/ubuntu bionic InRelease 
    カ荳シ倖2 http://jp.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB] 
    ヒット:3 http://archive.ubuntulinux.jp/ubuntu bionic InRelease 
    ヒット:4 http://archive.ubuntulinux.jp/ubuntu-ja-non-free bionic InRelease 
    取得:5 http://jp.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB] 
    ヒット:7 http://security.ubuntu.com/ubuntu bionic-security InRelease 
    取得:6 https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu bionic InRelease [23.3 kB] 
    取得:8 https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu bionic/main amd64 Packages [68.5 kB] 
    255 kB を 3秒 で取得しました (85.1 kB/s) 
    パッケージリストを読み込んでいます... 完了 
    依存関係ツリーを作成しています 
    状態情報を読み取っています... 完了 
    アップグレードできるパッケージが 1 個あります。表示するには 'apt list --upgradable' を実行してください。 
    zen@SEVR:~$ 
    zen@SEVR:~$ apt list --upgradable 
    一覧表示... 完了 
    gitlab-ce/bionic 14.9.2-ce.0 amd64 [14.8.2-ce.0 からアップグレード可] 
    N: 追加バージョンが 436 件あります。表示するには '-a' スイッチを付けてください。 
    zen@SEVR:~$ 
    zen@SEVR:~$ 
    zen@SEVR:~$ sudo apt upgrade
  • Windowsはメモリが不足するとファイルのコピーに失敗する

    Windowsはメモリが不足するとファイルのコピーに失敗する。そしてロールバックして、途中までのものも消える。

    遅いネットワークで、別のサーバからのデータのコピーで、単一の大きなファイルだったので、時間がかかって、結果的にメモリが足りなくなって、失敗した。メモリも増えているので、レアケースになっているのかもしれないけれど。やはりメモリの空きは重要だ。