先週インストールした Ubuntu 16.04(wplj)での話。こんな感じにグレーになって更新が止まってしまった。
どうすりゃいいんだ。無視して再起動しちゃっても大丈夫かな?
takatoh's blog – Learning programming languages.
apt コマンドでインストール。パッケージが何種類かあるけど、以前と同じ nginx-extras にした。
takatoh@wplj $ apt search nginx | grep ^nginx WARNING: apt does not have a stable CLI interface. Use with caution in scripts. nginx/xenial-updates,xenial-updates,xenial-security,xenial-security 1.10.0-0ubuntu0.16.04.4 all nginx-common/xenial-updates,xenial-updates,xenial-security,xenial-security 1.10.0-0ubuntu0.16.04.4 all nginx-core/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-core-dbg/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-doc/xenial-updates,xenial-updates,xenial-security,xenial-security 1.10.0-0ubuntu0.16.04.4 all nginx-extras/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-extras-dbg/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-full/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-full-dbg/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-light/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64 nginx-light-dbg/xenial-updates,xenial-security 1.10.0-0ubuntu0.16.04.4 amd64
takatoh@wplj $ sudo apt install nginx-extras [sudo] takatoh のパスワード: パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の追加パッケージがインストールされます: libluajit-5.1-2 libluajit-5.1-common nginx-common 提案パッケージ: fcgiwrap nginx-doc 以下のパッケージが新たにインストールされます: libluajit-5.1-2 libluajit-5.1-common nginx-common nginx-extras アップグレード: 0 個、新規インストール: 4 個、削除: 0 個、保留: 431 個。 897 kB のアーカイブを取得する必要があります。 この操作後に追加で 2,692 kB のディスク容量が消費されます。 続行しますか? [Y/n] y 取得:1 http://jp.archive.ubuntu.com/ubuntu xenial/universe amd64 libluajit-5.1-common all 2.0.4+dfsg-1 [35.3 kB] 取得:2 http://jp.archive.ubuntu.com/ubuntu xenial/universe amd64 libluajit-5.1-2 amd64 2.0.4+dfsg-1 [205 kB] 取得:3 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 nginx-common all 1.10.0-0ubuntu0.16.04.4 [26.6 kB] 取得:4 http://jp.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 nginx-extras amd64 1.10.0-0ubuntu0.16.04.4 [629 kB] 897 kB を 0秒 で取得しました (5,198 kB/s) パッケージを事前設定しています ... 以前に未選択のパッケージ libluajit-5.1-common を選択しています。 (データベースを読み込んでいます ... 現在 212452 個のファイルとディレクトリがインストールされています。) .../libluajit-5.1-common_2.0.4+dfsg-1_all.deb を展開する準備をしています ... libluajit-5.1-common (2.0.4+dfsg-1) を展開しています... 以前に未選択のパッケージ libluajit-5.1-2:amd64 を選択しています。 .../libluajit-5.1-2_2.0.4+dfsg-1_amd64.deb を展開する準備をしています ... libluajit-5.1-2:amd64 (2.0.4+dfsg-1) を展開しています... 以前に未選択のパッケージ nginx-common を選択しています。 .../nginx-common_1.10.0-0ubuntu0.16.04.4_all.deb を展開する準備をしています ... nginx-common (1.10.0-0ubuntu0.16.04.4) を展開しています... 以前に未選択のパッケージ nginx-extras を選択しています。 .../nginx-extras_1.10.0-0ubuntu0.16.04.4_amd64.deb を展開する準備をしています ... nginx-extras (1.10.0-0ubuntu0.16.04.4) を展開しています... ufw (0.35-0ubuntu2) のトリガを処理しています ... プロファイル 'Samba' を規定するルールが更新されました ファイアウォールを再読込しました ureadahead (0.100.0-19) のトリガを処理しています ... systemd (229-4ubuntu4) のトリガを処理しています ... man-db (2.7.5-1) のトリガを処理しています ... libluajit-5.1-common (2.0.4+dfsg-1) を設定しています ... libluajit-5.1-2:amd64 (2.0.4+dfsg-1) を設定しています ... nginx-common (1.10.0-0ubuntu0.16.04.4) を設定しています ... nginx-extras (1.10.0-0ubuntu0.16.04.4) を設定しています ... libc-bin (2.23-0ubuntu3) のトリガを処理しています ... ureadahead (0.100.0-19) のトリガを処理しています ... systemd (229-4ubuntu4) のトリガを処理しています ... ufw (0.35-0ubuntu2) のトリガを処理しています ... プロファイル 'Samba' を規定するルールが更新されました ファイアウォールを再読込しました
80番ポートを開ける。
takatoh@wplj $ sudo ufw allow http ルールを追加しました ルールを追加しました (v6) takatoh@wplj $ sudo ufw status 状態: アクティブ To Action From -- ------ ---- Samba ALLOW Anywhere 22 ALLOW Anywhere 80 ALLOW Anywhere Samba (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6) 80 (v6) ALLOW Anywhere (v6)
これでOK。
まずは ssh サーバのインストール。
takatoh@wplj $ sudo apt install openssh-server [sudo] takatoh のパスワード: パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の追加パッケージがインストールされます: ncurses-term openssh-client openssh-sftp-server ssh-import-id 提案パッケージ: ssh-askpass libpam-ssh keychain monkeysphere rssh molly-guard 以下のパッケージが新たにインストールされます: ncurses-term openssh-server openssh-sftp-server ssh-import-id 以下のパッケージはアップグレードされます: openssh-client アップグレード: 1 個、新規インストール: 4 個、削除: 0 個、保留: 431 個。 1,223 kB のアーカイブを取得する必要があります。 この操作後に追加で 5,146 kB のディスク容量が消費されます。 続行しますか? [Y/n] y 取得:1 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu2.1 [587 kB] 取得:2 http://jp.archive.ubuntu.com/ubuntu xenial/main amd64 ncurses-term all 6.0+20160213-1ubuntu1 [249 kB] 取得:3 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-sftp-server amd64 1:7.2p2-4ubuntu2.1 [38.8 kB] 取得:4 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-server amd64 1:7.2p2-4ubuntu2.1 [338 kB] 取得:5 http://jp.archive.ubuntu.com/ubuntu xenial/main amd64 ssh-import-id all 5.5-0ubuntu1 [10.2 kB] 1,223 kB を 0秒 で取得しました (5,744 kB/s) パッケージを事前設定しています ... (データベースを読み込んでいます ... 現在 209694 個のファイルとディレクトリがインストールされています。) .../openssh-client_1%3a7.2p2-4ubuntu2.1_amd64.deb を展開する準備をしています ... openssh-client (1:7.2p2-4ubuntu2.1) で (1:7.2p2-4 に) 上書き展開しています ... 以前に未選択のパッケージ ncurses-term を選択しています。 .../ncurses-term_6.0+20160213-1ubuntu1_all.deb を展開する準備をしています ... ncurses-term (6.0+20160213-1ubuntu1) を展開しています... 以前に未選択のパッケージ openssh-sftp-server を選択しています。 .../openssh-sftp-server_1%3a7.2p2-4ubuntu2.1_amd64.deb を展開する準備をしています ... openssh-sftp-server (1:7.2p2-4ubuntu2.1) を展開しています... 以前に未選択のパッケージ openssh-server を選択しています。 .../openssh-server_1%3a7.2p2-4ubuntu2.1_amd64.deb を展開する準備をしています ... openssh-server (1:7.2p2-4ubuntu2.1) を展開しています... 以前に未選択のパッケージ ssh-import-id を選択しています。 .../ssh-import-id_5.5-0ubuntu1_all.deb を展開する準備をしています ... ssh-import-id (5.5-0ubuntu1) を展開しています... man-db (2.7.5-1) のトリガを処理しています ... ureadahead (0.100.0-19) のトリガを処理しています ... systemd (229-4ubuntu4) のトリガを処理しています ... ufw (0.35-0ubuntu2) のトリガを処理しています ... プロファイル 'Samba' を規定するルールが更新されました ファイアウォールを再読込しました openssh-client (1:7.2p2-4ubuntu2.1) を設定しています ... ncurses-term (6.0+20160213-1ubuntu1) を設定しています ... openssh-sftp-server (1:7.2p2-4ubuntu2.1) を設定しています ... openssh-server (1:7.2p2-4ubuntu2.1) を設定しています ... Creating SSH2 RSA key; this may take some time ... 2048 SHA256:/AheNtz5WRwnLDNdxXaHHFTbxPPpvBczFslD+m61A4s root@wplj (RSA) Creating SSH2 DSA key; this may take some time ... 1024 SHA256:T3FAc8aM/N44ID8xFGTTQAyEnTknasymTFYziE/fHKc root@wplj (DSA) Creating SSH2 ECDSA key; this may take some time ... 256 SHA256:mBVoQkg1uZ1Q53Jk2czIhQT435IjG9S35BhAcKsM3Nc root@wplj (ECDSA) Creating SSH2 ED25519 key; this may take some time ... 256 SHA256:zon2COqKeVZyDMdquuk8kBWInaySdyryR+oaumYloOY root@wplj (ED25519) ssh-import-id (5.5-0ubuntu1) を設定しています ... ureadahead (0.100.0-19) のトリガを処理しています ... systemd (229-4ubuntu4) のトリガを処理しています ... ufw (0.35-0ubuntu2) のトリガを処理しています ... プロファイル 'Samba' を規定するルールが更新されました ファイアウォールを再読込しました
/etc/ssh/sshd_config ファイルを編集。
#PermitRootLogin prohibit-password PermitRootLogin no
コメントアウトしてあるのが元の設定。
22番ポートを開ける。
takatoh@wplj $ sudo ufw allow ssh ルールを追加しました ルールを追加しました (v6) takatoh@wplj $ sudo ufw status 状態: アクティブ To Action From -- ------ ---- Samba ALLOW Anywhere 22 ALLOW Anywhere Samba (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6)
最後に ssh を再起動。
takatoh@wplj $ sudo service ssh restart
テスト。apostrophe から wplj に ssh で接続してみる。
takatoh@apostrophe $ ssh takatoh@wplj The authenticity of host 'wplj (192.168.1.6)' can't be established. ECDSA key fingerprint is f8:e4:fd:e4:48:17:f4:f0:7c:88:fa:cc:5f:1f:0b:37. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'wplj,192.168.1.6' (ECDSA) to the list of known hosts. takatoh@wplj's password: Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-62-generic x86_64) * Documentation: https://help.ubuntu.com/ 433 個のパッケージがアップデート可能です。 145 個のアップデートはセキュリティアップデートです。 The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. takatoh@wplj $ ls Desktop Documents Downloads Music Pictures Public Templates Videos w takatoh@wplj $
OK。
takatoh@wplj $ sudo apt install git takatoh@wplj $ git --version git version 2.7.4
ついでに gitk も。
takatoh@wplj $ sudo apt install gitk
Sublime Text 3 のページから、Ubuntu 64bit 用をダウンロード。ダウンロードした .deb ファイルをダブルクリックでインストール……できるはずが、できない。
インストールのウィンドウが開いてインストールボタンがあるので、それをクリックする。わずかの間「インストール中」になるけど、すぐに元に戻ってしまう。で、結果、インストールできていない。なぜだ。
仕方がないので、↓このページを参考に、コマンドラインからインストールした。
cf. How To Install Sublime Text 3 (Build 3103) On Ubuntu 16.04, Ubuntu 15.10, Ubuntu 14.04 And Derivatives – LinuxG.net
takatoh@wplj $ sudo add-apt-repository ppa:webupd8team/sublime-text-3
takatoh@wplj $ sudo apt-get update
takatoh@wplj $ sudo apt-get install sublime-text-installer
これで完了。パッケージのインストールはまた後で。
パッケージコントロールとパッケージのインストール。
まずはパッケージコントロール。このページから、Sublime Text 3 用のスクリプトをコピー。Sublime Text の [Ctrl] + [`] でコンソールを開いて貼り付け。立ち上げなおすとパッケージが使えるようになっている。
[Ctrl] + [Shift] + [p] でコマンドパレットを開き、「Package Control: Install Package」を選択。Japanize を検索してインストールした。インストール後の設定手順は次の通り。
takatoh@wplj $ cd .config/sublime-text-3/Packages takatoh@wplj $ mkdir Default takatoh@wplj $ cp Japanize/*.jp Default takatoh@wplj $ cp Japanize/Main.sublime-menu User
これで Sublime Text を起動し直すと、メニューが日本語になった。
次のコマンドで。
takatoh@wplj $ env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update
これでOK。
takatoh@wplj $ ls Desktop Documents Downloads Music Pictures Public Templates Videos
takatoh@wplj $ sudo apt install ruby
takatoh@wplj $ ruby -v ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu]
おお、2.3だ。
takatoh@wplj $ sudo apt install python パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 python はすでに最新バージョン (2.7.11-1) です。 python は手動でインストールしたと設定されました。 アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 432 個。
あれ、入ってる?
takatoh@wplj $ python -V Python 2.7.11+
入ってた。
wplj にアクセス権フリーの共有ディレクトリを作る。
このへんのページが役に立った。
cf. Samba でファイルサーバー構築 – 自宅サーバー Debian/Ubuntu
cf. https://www.server-world.info/query?os=Ubuntu_16.04&p=samba
まずは Samba のインストール。
takatoh@wplj $ sudo apt install samba
これでインストールされるだけでなく、動き出すらしい。
takatoh@wplj $ ps ax | grep samba 3821 pts/18 S+ 0:00 grep --color=auto samba
あれ?動いてない?
共有ディレクトリを作成。
takatoh@wplj $ sudo mkdir /media/aysheaia/share takatoh@wplj $ sudo chown nobody:nogroup /media/aysheaia/share takatoh@wplj $ sudo chmod 777 /media/aysheaia/share
Samba の設定。…の前に設定ファイルのバックアップをとっておく。
takatoh@wplj $ cd /etc/samba takatoh@wplj $ ls gdbcommands smb.conf tls takatoh@wplj $ sudo cp smb.conf smb.conf.orig takatoh@wplj $ ls gdbcommands smb.conf smb.conf.orig tls
そして設定。
takatoh@wplj $ sudo vi smb.conf
設定ファイルは次のように変えた。
takatoh@wplj $ diff smb.conf.orig smb.conf 29c29,36 < workgroup = WORKGROUP --- > # workgroup = WORKGROUP > workgroup = PANICBLANKET > > dos charset = CP932 > unix charset = UTF-8 > display charset = UTF-8 > > map to guest = Bad User 259a267,274 > > [share] > path = /media/aysheaia/share > writable = yes > force create mode = 0666 > force directory mode = 0777 > guest ok = yes > guest only = yes
ポートの開放。
takatoh@wplj $ sudo ufw status 状態: 非アクティブ takatoh@wplj $ sudo ufw enable ファイアウォールはアクティブかつシステムの起動時に有効化されます。 takatoh@wplj $ sudo ufw status 状態: アクティブ takatoh@wplj $ sudo ufw default DENY デフォルトの incoming ポリシーは 'deny' に変更しました (適用したい内容に基づいて必ずルールを更新してください) takatoh@wplj $ sudo ufw allow samba ルールを追加しました ルールを追加しました (v6) takatoh@wplj $ sudo ufw status 状態: アクティブ To Action From -- ------ ---- Samba ALLOW Anywhere Samba (v6) ALLOW Anywhere (v6)
Samba を再起動。
takatoh@wplj $ sudo /etc/init.d/samba restart [ ok ] Restarting nmbd (via systemctl): nmbd.service. [ ok ] Restarting smbd (via systemctl): smbd.service. [ ok ] Restarting samba-ad-dc (via systemctl): samba-ad-dc.service.
これでOK。Windows マシンからも確認できた。
USB の外付けHDDを接続すると、ちゃんと認識された。ただ、繋ぎっぱなしの HDD として使うには /etc/fstab に登録しないといけないので、その設定をする。繋いだ HDD は2つ。ファイルサーバ用とバックアップ用だ。
sudo blkid コマンドで HDD の UUID を調べる。
takatoh@wplj $ sudo blkid /dev/sda1: UUID="D17D-DA22" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="6fa2ce8f-fa84-4c97-8280-e58107f1f5f7" /dev/sda2: UUID="10ac8b6d-a943-4bc9-bd0e-7cbc3cb38125" TYPE="ext4" PARTUUID="3691980f-4128-465c-ab58-0ae98c7783a9" /dev/sda3: UUID="fe038a20-aa4e-48d9-b98c-f8932b715370" TYPE="swap" PARTUUID="8383fce1-4445-419d-a75d-1e002ac985ef" /dev/sdb1: PARTLABEL="Microsoft reserved partition" PARTUUID="f94bfbc2-2dd6-4f5a-bcd0-41fa20509112" /dev/sdb2: LABEL="OPABINIA" UUID="962EDE6A2EDE42C3" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="70fb4b85-f7aa-4b55-b359-8a954bc7a0fc" /dev/sdc1: PARTLABEL="Microsoft reserved partition" PARTUUID="5ab86c39-d82e-4a72-8cee-1c2553ebdbaa" /dev/sdc2: LABEL="AYSHEAIA" UUID="ECC40F30C40EFC98" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c7f4b645-6c8f-474b-8cb6-54aa69d553f8"
LABEL が AYSHEAIA と OPABINIA なのが外付けHDD。ファイルシステムは NTFS のまま使う。この HDD の UUID を持って、次のように /etc/fstab ファイルを編集した。
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # # / was on /dev/sda2 during installation UUID=10ac8b6d-a943-4bc9-bd0e-7cbc3cb38125 / ext4 errors=remount-ro 0 1 # /boot/efi was on /dev/sda1 during installation UUID=D17D-DA22 /boot/efi vfat umask=0077 0 1 # swap was on /dev/sda3 during installation UUID=fe038a20-aa4e-48d9-b98c-f8932b715370 none swap sw 0 0 # USB HDD AYSHEAIA UUID=ECC40F30C40EFC98 /media/aysheaia ntfs default 0 0 # USB HDD OPABINIA<br>UUID=962EDE6A2EDE42C3 /media/opabinia ntfs default 0 0
マウントポイントになるディレクトリを作る。
takatoh@wplj $ sudo mkdir /media/aysheaia takatoh@wplj $ sudo mkdir /media/opabinia
そして再起動。無事認識されて、マウントされた。
takatoh@wplj $ df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 385M 6.2M 379M 2% /run /dev/sda2 454G 4.7G 427G 2% / tmpfs 1.9G 208K 1.9G 1% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sdb2 2.8T 264M 2.8T 1% /media/aysheaia /dev/sdc2 2.8T 264M 2.8T 1% /media/opabinia /dev/sda1 511M 3.6M 508M 1% /boot/efi tmpfs 385M 4.0K 385M 1% /run/user/108 tmpfs 385M 44K 385M 1% /run/user/1000
また PC 買ったのかといわれそうだけど、これは予定通り。去年買ったノートPC が予定外だったのだ。
新しい PC は Ubuntu をインストールして宅内ネットワークのファイルサーバ兼WEBサーバにする。ホスト名は wplj。
まずは Windows 10 のセットアップ。これは最低限の設定で。
それから、万が一 Ubuntu がうまくインストールできなかった時のために Windows10 のリカバリメディアを作成しておく。スタートメニューの「HP ヘルプとサポート」から「HP Recovery Manager」を起動。手順に従ってリカバリメディアを作成した(全部でDVD-R 3枚)。結構時間がかかる。
再起動中に F2 キーを押して BIOS 設定に移動、USB の CD-ROM ブートを内部 HD よりも優先に設定する。そして起動。すると Windows が起動してしまった。もう一度 BIOS 設定に移動して確認すると、ちゃんと USB CD-ROM が優先になっている。おかしい。仕方がないので、BIOS の BOOT メニューから USB CD-ROM ブートを選んだ。
今度はちゃんと Ubuntu の DVD から起動したので、Ubuntu のインストールをする。途中、「Ubuntuのインストール中にアップデートをダウンロードする」を選ぶ。
また、Windows Boot Manager が検出されるので「ディスクを削除してUbuntuをインストール」を選択。あとはほぼデフォルトで。コンピューターの名前は上に書いた通り wplj。ユーザーは takatoh を作った。
しばらくしてインストールが完了。再起動すると、無事 Ubuntu が起動した。
とりあえずはここまで。あとの設定とかはエントリを分けて書く。