Type-Zer0のブログ

趣味について垂れ流す場所

Ubuntu 19.04 から Ubuntu20.04 へのアップグレード

Ubuntuをアップグレードする

仕事でも使っているMy PC Ubuntu 19.04 Disco Dingo を先日公開された Ubuntu 20.04 Focal Fossa へアップグレードする

アップグレード準備

− 環境確認

cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=19.04
DISTRIB_CODENAME=disco
DISTRIB_DESCRIPTION="Ubuntu 19.04"

 cat /etc/update-manager/release-upgrades | grep Prompt
Prompt=normal

− アップグレード準備

sudo apt install update-manager
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
update-manager はすでに最新バージョン (1:19.04.5) です。
update-manager は手動でインストールしたと設定されました。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
ripple@ripple-ThinkPad-A285~> sudo apt dist-upgrade
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
アップグレードパッケージを検出しています... 完了
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。

− アップグレード
更新が打ち切られているバージョンからの更新なので少し巷にある方法とは違う

 sudo do-release-upgrade 
新しい Ubuntu のリリースをチェックしています
このバージョンのUbuntuは既にサポートが打ち切られています。
アップグレード情報は以下を参照:
http://www.ubuntu.com/releaseendoflife
Checking for installed snaps

Calculating snap size requirements
cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=19.10
DISTRIB_CODENAME=eoan
DISTRIB_DESCRIPTION="Ubuntu 19.10"

リポジトリ情報のアップデート

サードパーティが提供するリポジトリを使わない設定にしました 

sources.list にあるサードパーティが提供するリポジトリを使わない設定にしました。アップグレード完了後、'ソフトウェアソース' 
ツールもしくはパッケージマネージャーを使って再び利用可能な設定にすることができます。 

続けるには [ENTER] キーを押してください
パッケージマネージャーをチェック中です
パッケージリストを読み込んでいます... 完了  
依存関係ツリーを作成しています           
状態情報を読み取っています... 完了      

変更点を確認中

変更点を確認中

アップグレードを開始しますか? 


8 個のパッケージが削除されます。 106 個の新規パッケージがインストールされます。 1680 個のパッケージがアップグレードされます。 

合計 1,560 M をダウンロードする必要があります。 このダウンロードは 1Mbit DSL 接続で約 3 時間 18 分 、56k 
モデムで約 2 日 12 時間 かかります。 

アップグレードの取得とインストールには数時間かかることがあります。ダウンロードが完了してしまうと、処理はキャンセルできません。 

 続行する[yN]  詳細 [d]

削除: gns3 

(自動インストールされた) chromium-browser-l10n command-not-found-data cryptsetup 
  cryptsetup-initramfs cryptsetup-run diffstat example-content 
  freetype2-doc g++-8 gconf-service gconf-service-backend 
  gconf2-common gettext gir1.2-mutter-4 ifupdown intltool-debian 
  libappindicator1 libapt-inst2.0 libapt-pkg-perl libapt-pkg5.0 
  libarchive-zip-perl libasync-mergepoint-perl 
  libb-hooks-op-check-perl libbison-dev libc++abi1-8 
  libcapture-tiny-perl libcgi-fast-perl libcgi-pm-perl 
  libclass-accessor-perl libclass-method-modifiers-perl 
  libclass-xsaccessor-perl libclone-perl libcrystalhd3 
  libdbusmenu-gtk4 libdevel-callchecker-perl 
  libdevel-globaldestruction-perl libdigest-bubblebabble-perl 
  libdigest-hmac-perl libdouble-conversion1 
  libdynaloader-functions-perl libebook-contacts-1.2-2 libecal-1.2-19 
  libemail-valid-perl libexporter-tiny-perl libfcgi-perl 
  libfile-find-rule-perl libfuture-perl libgconf-2-4 
  libgnome-desktop-3-17 libigdgmm5 libimport-into-perl 
  libio-async-loop-epoll-perl libio-async-perl libio-pty-perl 
  libio-string-perl libip4tc0 libip6tc0 libipc-run-perl libisl19 
  libjson-c3 liblinux-epoll-perl liblist-compare-perl 
  liblist-moreutils-perl libllvm8 libllvm8:i386 liblouisutdml8 
  liblvm2app2.2 liblvm2cmd2.02 libmodule-runtime-perl libmoo-perl 
  libmutter-4-0 libmysqlclient20 libnet-dns-perl libnet-dns-sec-perl 
  libnet-domain-tld-perl libnet-ip-perl libnumber-compare-perl 
  libparams-classify-perl libparse-debianchangelog-perl 
  libpath-tiny-perl libperlio-gzip-perl libpoppler85 libreadonly-perl 
  libref-util-perl libref-util-xs-perl 
  libreoffice-avmedia-backend-gstreamer librole-tiny-perl librsync1 
  libsereal-decoder-perl libsereal-encoder-perl libsereal-perl 
  libstrictures-perl libstruct-dumb-perl 
  libsub-exporter-progressive-perl libsub-name-perl libsub-quote-perl 
  libtagc0 libtest-fatal-perl libtest-refcount-perl libtext-glob-perl 
  libtext-levenshtein-perl libtype-tiny-perl libtype-tiny-xs-perl 
  libunicode-utf8-perl libvpx5 libwireshark11 libwiretap8 libwsutil9 
  libx265-165 libxdg-basedir1 libxml-libxml-perl 
  libxml-namespacesupport-perl libxml-sax-base-perl 
  libxml-sax-expat-perl libxml-sax-perl libxml-simple-perl 
  libyaml-libyaml-perl lintian linux-headers-5.0.0-38 
  linux-headers-5.0.0-38-generic mlocate multiarch-support node-co 
  patchutils pppconfig pppoeconf python-certifi python-fasteners 
  python-idna python-lockfile python-monotonic python-requests 
  python-urllib3 qt-at-spi t1utils ubuntu-wallpapers-disco を削除 

(END)

システムのアップグレードが完了しました。

再起動が必要です 

アップグレードを完了するには再起動が必要です。 
'Y' を選択すると再起動します。 

続行する[yN] 



cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=19.10
DISTRIB_CODENAME=eoan
DISTRIB_DESCRIPTION="Ubuntu 19.10"

  • 19.10 -> 20.04

同じ手順 省略

− 結果

ripple@ripple-ThinkPad-A285:~$ uname -a
Linux ripple-ThinkPad-A285 5.4.0-31-generic #35-Ubuntu SMP Thu May 7 20:20:34 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
ripple@ripple-ThinkPad-A285:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"
ripple@ripple-ThinkPad-A285:~$ 

アップデート終わり

これでひとまずログインまでできてデータもそのまま(一部パッケージあたりで動かないのがあった rubyをか) 使っている内に必要なモノを足していけば良さそう。

おまけ

Windows側のアップデートかけたりしたらブートローダが吹っ飛んだらしくUbuntu起動できなくなりました・・・・・・
後で修復します