OSのインストールが完了したので、次はOSのアップデートを行う。Ubuntuのアップデートには
aptコマンドを使う。
 |
図1 aptコマンドによるOSのアップデート |
ところが、エラーが発生して異常終了する。
 |
図2 アップデートのエラー |
このエラーは原因がわかっていて、初めてアップデートしたときには必ず起きるらしい。
対処方法は、appstreamをいったん無効化してからアップデートを行い、その後再びappstreamを有効にすればよいらしい。
 |
図3 appstreamの無効化 |
参考にしたサイトには、最初にapt.systemd.dailyを停止(kill)するように書いてあったが、図3に示すように「そのようなプロセスはない」というメッセージが出た。これはどうやら自動アップデートプロセスらしいのだが、それが動いていないということだろう。
appstreamは、/etc/apt/apt.conf.d/50appstreamという設定ファイルがあると有効になるみたいなので、ファイル名を変更して(拡張子に.disableを付ける)無効化する(図3)。その後、再びsudo apt update -yでアップデートを行う。
 |
図4 アップデートの完了 |
アップデートが正常終了したら、次にアップグレードを行う。
 |
図5 アップグレードの完了 |
アップグレードが完了したので、設定ファイルの名前を元に戻して再びアップデートを行ってみた。
 |
図6 再度アップデートを行ったときの画面 |
今度はエラーが出ることもなく「パッケージはすべて最新です。」と表示され、アップデート処理が完了した。
アップデート処理の途中、マウスが動かなくなったりキーボードが使えなくなったりすることが何度かあった。しばらく何もしないで時間を置くと、次にマウスやキーボードを操作してもすぐに反応しないという現象が見られるが、しばらく待っていると再び自然復旧する。
また、キーボードの応答がすこぶる悪いため、同じ文字が複数回入力されたりすることがある。そのため、ログイン画面でパスワードが正確に入力できず、何度もログインエラーが表示されることがある。
OSのアップデートが完了したのでシステムを再起動した。再起動後、ログインするとシステムプログラムエラーが出た。
 |
図7 システムプログラムの問題 |
このエラーはこれまでも何度も出ていたが、その都度無視してきた。
同じ現象について書かれているサイトがあったので読んでみたが、対処方法が書かれてあるだけで、特に原因らしきものは書かれていなかった。
時刻の同期
Ubuntuが時刻同期するNTPサーバはデフォルトでntp.ubuntu.comになっているので、これをntp.ring.gr.jpに変更する。NTPサーバの設定ファイルは/etc/systemd/timesyncd.confなので、これをgeditで編集する。
 |
図8 NTPサーバの設定ファイルを編集するためにエディタgeditを起動 |
エディタが起動したら設定ファイルにntp.ring.gr.jpを設定して保存する。
 |
図9 NTPの設定ファイルを編集 |
保存後、再起動して確認する。このとき、geditで保存するといくつかwarningメッセージが出た。
 |
図10 geditの警告メッセージ |
メッセージの内容から、どうやら/home/hinfo/.config/ibus/busの持ち主がrootでないということらしい。
とりあえずそのまま再起動すると時刻の同期ができた。
 |
図11 時刻同期の確認 |
前述のエラーについて、
ネットで調べたところ、sudo gedit は使うべきでないとあった。特権ユーザでGUIツールを使う正しいやり方は sudo -i もしくは gksudo を使うことのようだ(
参考サイト)。
【TIPS】
図11の時刻同期の確認で次のようなエラーメッセージが出た場合の対処方法について記載する。
$ sudo systemctl status system-timesyncd.service
● system-timesyncd.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
以下のコマンドを入力するとよい(
参考サイト)。
sudo systemctl enable systemd-timesyncd.service
sudo systemctl start systemd-timesyncd.service
その後、以下のコマンドを入力する。
sudo systemctl status systemd-timesyncd.service
 |
図12 時刻同期のエラー対処 |
また、別の方法として、以下のコマンドがある。
sudo timedatectl set-ntp true
その後、次のコマンドで時刻を確認する。
sudo timedatectl status
実行結果を図13に示す。
 |
図13 時刻合わせの別の方法 |
こちらの方が結果が見やすい。
Linuxのシステム時刻
Linuxシステムの時刻というサイトに詳しくまとめられている。
調べていくうちにわかったこと。
- Ubuntu14.04まではSysVinit
- Ubuntu16.04からはsystemd
systemdではsystemctlを使ってサービスの制御(開始、終了、状態表示、有効化、無効化)を行う。
システムのタイムゾーンの設定/再設定を行うコマンド(Ubuntu 14.04でも動作した)
0 件のコメント:
コメントを投稿