FC2ブログ

[Ubuntu]ddでOSイメージクローン

ディスク内容を丸々コピーしたい。

sdd : マスター(HDD)
sdc : スレーブ(SSD)

スレーブをマスターの容量と合わせるため、まずはマスターのセクタ数調べ。
# fdisk /dev/sdd
  > pで総セクタ数表示される。

次に、スレーブSSDの容量を、マスターセクタ数指定してクリッピング。
# hdparm -N p10000 /dev/sdc

最後に、マスター
# dd if=/dev/sdd of=/dev/sdc bs=512 conv=sync,noerror
 ※ セクタ512Bづつ、マスター(sdd)からスレーブ(sdc)へデータ丸ごとコピーするコマンド。
   conv=sync,noerrorのsyncは、マスターのあるセクタがREADエラーになっても、
   そのセクタは0で埋めてスレーブにコピーしてくれる。syncが無いと不良セクタあった時にずれるらしい。
   noerrorは、エラーがあっても継続する、の意味。

以下参考にした。
http://weblog.rukihena.com/archives/2006/05/dd_convsyncnoer.html

コピー完了後の確認してないが、うまくいってるはず。
スポンサーサイト



[Ubuntu]コマンド4

ネットワーク設定・再起動(18.04)
/etc/network/interfaceはもう使ってないとか。

今はこちらを編集する。
# vi /etc/netplan/50-cloud-init.yaml

network:
ethernets:
ens33:
addresses:
- 192.168.1.180/24
gateway4: 192.168.1.1
dhcp4: false
nameservers:
addresses:
- 8.8.8.8
version: 2


# ip addr flush dev ens33
# systemctl restart networking
こんな感じに編集して、以下で反映と思ったら、networkingがnot foundになる。




TensorFlowインストール

host = Windows 10 Home Windows Subsystem for Linux
/etc/os-release = Ubuntu 18.04.2 LTS
uname -r = 4.4.0-17763-Microsoft


UbuntuでTensorFlowを動かしてみる
https://cpoint-lab.co.jp/article/201801/1235/

sudo apt update
sudo apt install python-pip python-dev
# CPU版入手
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
# GPU版はこちら
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl

python
ここから対話モードで以下を入力すると結果が次のように表示された。
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> sess.run(hello)
'Hello, TensorFlow!'
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> sess.run(a+b)
42

これで正常に動いてるらしい。


GNOMEインストール

$ sudo apt-get update
$ sudo apt-get install ubuntu-gnome-desktop




後からGUIインストール(18.04)

# apt-get update
# apt-get -y install ubuntu-desktop
かなり長い。15分くらいかな。
# shutdown -r now
これでGUI環境で起動された。

[Ubuntu]コマンド3

ファイルサーバ(samba)構築

# su
$ apt-get -y install samba
$ mkdir /home/share
$ chmod 777 /home
$ chmod 777 /home/share
$ vi /etc/samba/smb.conf

# 25行目:追記
unix charset = UTF-8
dos charset = CP932

# 30行目
workgroup = XXX

# 51行目: コメントを解除し、IP追記
interfaces = 127.0.0.0/8 192.168.xx.0/24 enp0sxxx
 ※ ここでI/F名を記載漏れてた事が原因で、sambaに接続できない事があった。

# 58行目:コメントを解除し、かつ追記
bind interfaces only = yes
map to guest = Bad User

# 最終行に追記
[share]
path = /home/share
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777


$ pdbedit -a bob
new password:
retype new password:

$ vi /etc/hosts.allow
smbd : 192.168.10.
nmbd : 192.168.10.

$ systemctl restart smbd
$ systemctl restart nmbd

$ systemctl enable smbd
$ systemctl enable nmbd

$ ufw allow samba
$ ufw allow app list



DLNAサーバ(minidlna)構築

# apt-get install minidlna
# vi /etc/minidlna.conf

#変更箇所
media_dir=V,/home/share
inotify=yes
notify_interval=895


# systemctl restart minidlna

これでOculus Go > ギャラリー > host名:dlna、で自動的に接続されて表示された。



フォワードプロキシサーバ構築

# apt-get update
# apt-get upgrade -y
# apt-get install squid -y

# vi /etc/squid/squid.conf

acl localnet src 192.168.0.0/16
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link local machines

acl SSL_ports port 443
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports

acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
http_access deny !Safe_ports


http_access allow localhost manager
http_access deny manager

http_access allow localnet
http_access allow localhost
http_access deny all

http_port 3128

coredump_dir /var/spool/squid

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320

strip_query_terms off
logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %h" "%{User-Agent}>h" %Ss:%Sh
access_log /var/log/squid/access.log combined


# systemctl restart squid
# systemctl enable squid

ここまできたら、クライアントPCのブラウザ設定でプロキシサーバを指定する。
Firefox > オプション > 一番下のネットワークプロキシ欄へ
 > 接続設定
 > 手動でプロキシを設定する
 > プロキシサーバのIPと、squid.confで設定したポート番号を指定

これでプロキシサーバ経由でインターネットへアクセス出来るようになった。




syslogサーバ構築

Ubuntuには最初からrsyslogがインストールされてる。
なのでconfigの設定変更から。
# vi /etc/rsyslog.conf

以下2行をコメントアウトして、syslog(UDP)を受け付けるようにする。
module(load="imudp")
input(type="imudp" port="514")


# vi /etc/rsyslog.d/70-hoge.conf
local0.*  -/var/log/hoge.log


# systemctl start rsyslog
# systemctl enable rsyslog

# vi /etc/logrotate.d/rsyslog


/var/log/debug
/var/log/messages
/var/log/hoge.log > ここに追加
{
rotate 4





リバースプロキシサーバ構築


muninインストール

# apt-get install munin munin-node
# vi /etc/munin/munin.conf

[localhost.localdomain]
 ↓
[h67.hoge.com]


# vi /etc/apache2/conf-available/munin.conf

Alias /munin /var/cache/munin/www
<Directory /var/cache/munin/www>
Require local
Options None
AuthType Basic
AuthName "Munin"
AuthUserFile /etc/munin/munin-htpasswd
Require valid-user
</Directory>

ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
<Location /munin-cgi/munin-cgi-graph>
Require local
Require all granted
<IfModule mod_fcgid.c>
SetHandler fcgid-script
</IfModule>
<IfModule !mod_fcgid.c>
SetHandler cgi-script
</IfModule>
</Location>


BASIC認証のパスワードファイルとして以下を指定。新規に作成される。
# htpasswd -c /etc/munin/munin-htpasswd [USERNAME]

# vi /etc/munin/munin-node.conf
最終行に以下追加。

h67 [FQDN]


munin-nodeは既にActiveになっている。
# systemctl status munin-node
muninは起動しておらず、maskedになってる。
# systemctl status munin

# systemctl restart apache2

他のPCから、アクセスするとmuninのページが開いた。



ソフトウェアRAID(Ubuntu 16.04.06 LTS)
 ※ 一度失敗した状態から再度作成。

# mdadm --misc --stop /dev/md0
# mdadm --misc --remove /dev/md0
# mdadm --misc --zero-superblock /dev/sdb1 /dev/sdc1

# fdisk /dev/sdb
パーティションを全部削除し、1つだけ新規パーティションを作成。
t > パーティションタイプ変更 > 28(Linux RAID) > w

# mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sdb1 /dev/sdc1
# cat /etc/mdstat
# mdadm --detail --scan >> /etc/mdadm/mdadm.conf
# mkfs -t ext4 /dev/md0

# mount /dev/md0 /home/samba

mount: /dev/md0: more filesystems detected. This should not happen,
use -t to explicitly specify the filesystem type or
use wipefs(8) to clean up the device.


# mount -t ext4 /dev/md0 /home/samba
これで無事マウントできた。

あとはfstabへ登録して、自動マウントするようにする。
これで/dev/md0のUUIDを調べる。
# mdadm --detail --scan >> /etc/fstab
# vi /etc/fstab

UUID=xxxx-xxxx-xxxx /home/samba defaults 0 2 > しかし、これでは起動せず。
 ※ UUIDは元々:だったが、他に合わせて-区切りにした。

/dev/md127 /home/samba defaults 0 0 > これで自動マウント成功して起動した。
 ※ 元々/dev/md0を作ったが、上の失敗の後起動したら、md127になってた。

[Ubuntu]コマンド2

DNS設定

apt-get installでインストールしようとしたら、名前解決が出てないようなエラー。
以前もDNSサーバ構築した際にインストールしたはずなのだが。設定が消えてる?

とにかく状態確認すると、GlobalにDNS Servers:の欄が出てない。
# systemd-resolve --status

Global
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
 :


DNS設定には/etc/resolv.confを変更すると思ってたが、調べてみると
Ubuntu 17.04以降ではsystemd-resolvedがdefault動作のため、/etc/resolv.conf
を書き換えても変更されない、だった。
# vi /etc/systemd/resolved.conf

[Resolve]
DNS=192.168.10.130 8.8.8.8 > ここをコメントアウトして記入


# systemctl restart systemd-resolved

すると、Globalに設定内容が反映された。
# systemd-resolve --status

Global
DNS Servers: 192.168.10.130
8.8.8.8
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
 :


この後apt-get install でインストールしたら、ちゃんと出来た。DNS設定が無かった事が原因だった。



DNSサーバ構築

https://www.server-world.info/query?os=Ubuntu_14.04&p=dns

# sudo apt-get -y install bind9 bind9utils
# sudo vi /etc/bind/named.conf
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
#include "/etc/bind/named.conf.default-zones";
include "/etc/bind/named.conf.internal-zones";
include "/etc/bind/named.conf.external-zones";


# sudo vi /etc/bind/named.conf.internal-zones
   
view "internal" {
match-clients {
localhost;
192.168.10.0/24;
};
zone "hoge.link" {
type master;
file "/etc/bind/hoge.link.lan";
allow-update { none; };
};
zone "10.168.192.in-addr.arpa" {
type master;
file "/etc/bind/10.168.192.db";
allow-update { none; };
};
include "/etc/bind/named.conf.default-zones";
};


# sudo vi /etc/bind/named.conf.external-zones


view "external" {
match-clients { any; };
allow-query { any; };
recursion no;
# 外部向け正引き情報を定義
zone "hoge.link" {
type master;
file "/etc/bind/hoge.link.wan";
allow-update { none; };
};
zone "x.y.z.121.in-addr.arpa" {
type master;
file "/etc/bind/x.y.z.121.db";
allow-update { none; };
};
};


# sudo vi /etc/bind/named.conf.options


options {
directory "/var/cache/bind";
allow-query { localhost; 192.168.10/24; };
allow-transfer { localhost; 192.168.10/24; };
allow-recursion { localhost; 192.168.10/24; };

dnssec-validation auto;
auth-nxdomain no;
listen-on-v6 { none; };
};


内部正引き設定ファイル
# sudo vi /etc/bind/hoge.link.lan


$TTL 1D
@ IN SOA dns.hoge.link. root.hoge.link. (
2018050801 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS dns.hoge.link.
IN A 192.168.10.[IP of DNS server]
IN MX 10 dns.hoge.link.

dns IN A 192.168.10.[IP of DNS server]


外部正引き設定ファイル
# sudo vi /etc/bind/hoge.link.wan


$TTL 1D
@ IN SOA dns.hoge.link. root.hoge.link. (
2018050801 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS dns.hoge.link.
IN A [global IP]
IN MX 10 dns.hoge.link.

dns IN A [global IP]


内部逆引き設定ファイル
# sudo vi /etc/bind/10.168.192.db


$TTL 1D
@ IN SOA dns.hoge.link. root.hoge.link. (
2018050801 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS dns.hoge.link.
IN PTR hoge.link.
IN A 255.255.255.0

130 IN PTR dns.hoge.link.


外部逆引き設定ファイル
# sudo vi /etc/bind/x.y.z.121.db


$TTL 1D
@ IN SOA dns.hoge.link. root.hoge.link. (
2018050801 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS dns.hoge.link.
IN PTR hoge.link.
IN A 255.255.255.248

x IN PTR dns.hoge.link.






zabbixサーバインストール

ここへアクセス。
https://www.zabbix.com/jp/download?zabbix=3.4&os_distribution=ubuntu&os_version=bionic&db=MySQL
Install zabbix from packageでサーバをインストールする手順が見れる。
既にzabbix3.4、Ubuntu、18.04(bionic)、MySQLが選択されているはず。
するとその下の手順2番に、ダウンロード先が表示されている。

a. Install Repository with MySQL database
# wget https://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb
# dpkg -i zabbix-release_3.4-1+bionic_all.deb
# apt update

b. Install Zabbix server, frontend, agent
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

c. Create initial database
documentation
# mysql -uroot -p
password > rootパスワードでログインできる。
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password'; > passwordは任意のパスワードを設定。
mysql> quit;

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: > 先ほど設定したzabbixアカウントのパスワードを入力
だいぶ長い。3分くらい待つと終わった。

d. Configure the database for Zabbix server
# vi /etc/zabbix/zabbix_server.conf
DBPassword=password > passwordは任意のパスワードを設定。

e. Configure PHP for Zabbix frontend
# vi /etc/zabbix/apache.conf
php_value date.timezone Asia/Tokyo > 2か所共にコメント解除して、Asia/Tokyoに修正。

f. Start Zabbix server and agent processes
# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2

これでzabbixサーバが起動した。

他PCのブラウザから、http://192.168.xxx.yyy/zabbix へアクセスするとzabbixページが表示された。
 > Configure DB connection = MySQL、localhost、Database port=0、database name=zabbix、User=zabbixとなっているdefault状態で、先程設定したパスワードを入れ、Next Step
 > Zabbix server details = Host=localhost、Port=10051となっているdefault状態で、そのままNext Step。Nameはオプションとの事なので未記入。
 > Pre-installation summary = 以下になった。チェックし、Next Step

Database type MySQL
Database server localhost
Database port default
Database name zabbix
Database user zabbix
Database password *******

Zabbix server localhost
Zabbix server port 10051
Zabbix server name

 > Congratulations! You have successfully installed Zabbix frontend.、と出て、Finishへ

すると、以下のWelcomページになるので、Admin、zabbixでログイン。AdminのAは大文字にすること。
https://www.zabbix.com/documentation/3.4/manual/quickstart/login

[Ubuntu]トラブルシューティング

apt update実行時のE: Sub-process returned an error code

Ubuntu 16.04 LTS
OSインストール直後、以下実行するとエラー。

$ sudo apt update
...
E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'
E: Sub-process returned an error code



https://sekisuiseien.com/computer/10530/

こちらを参考にさせて頂き、以下を実行

# cd /tmp
# mkdir asfix
# cd asfix
# wget https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb
# wget https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
# sudo dpkg -i *.deb



再度実行してみると成功した。

# apt update

アップグレードできるパッケージが678個あります。xxxx





[Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x52 (or later)

ホスト: h170
OS : Ubuntu 18.04 desktop amd64

インストールしようと、このDVDでブートすると、このメッセージが出た。
このメッセージの後に、次のようなメッセージ。

[ 23.83384xx] print_req_error: I/O error, dev sr0, sector 3652000
[ 23.83389xx] Buffer I/O error on dev sr0, logical block 456510, async page read
[ 33.xxxxxxx] print_req_error: I/O error, dev sr0, sector 3652072
[ 33.xxxxxxx] Buffer I/O error on dev sr0, logical block 456509, async page read



Ubuntu 16.04と画面に出て止まる。 その後インストール始まった

ホスト: h170
OS : Ubuntu 16.04



パーティション設定でProblem

ホスト: h170
OS : Ubuntu 16.04

HDDへ自分でパーティション設定をする、と進んで、Swapに16GB、/bootに200MB、残りを/へ設定し、進むと以下メッセージ。

Go back to the menu and correct this problem?
The partition table format in use on your disks normally requires you to create a separate partition for boot loader code.
This partition should be marked for use as a "Reserved BIOS boot area" and should be at least 1 MB in size.
Note that this is not the same as a partition mounted on /boot.
If you do not go back to the partitioning menu and correct this error, boot loader installation may fail later, although it may still be possible to install the boot loader to a partition.

調べてみると、BIOS予約済エリアが無い事が原因らしい。

そこでパーティション設定に戻り、あらたにBIOS予約領域を35MBで作った。どこかのブログに35MB以上でうまくいくと記載。
すると、エラーが出ずに、次のLocation設定へと進めた。



OSインストール後の再起動で止まる

ホスト: h170
OS : Ubuntu 16.04

OSインストールは成功して、再起動しろ、と出たので、そのまま再起動ボタンを押して、
その後、DVDドライブが開いたので、インストーラDVDを抜いて進めたら、以下メッセージで止まる。

Ubuntu 16.04
A start job is running for Ubuntu 1... installer (1min 40s / no limit)

電源ボタン長押しで強制停止させて、再度電源ONしてみると、正常に起動したようだ。なぜ再起動で止まったか原因不明。
しかし、ログインしていじってみると、マウスやアプリ起動など、いずれの動きも遅い。
例えば端末を起動すると、すごくゆっくりに次第にウィンドウが表示されていく様子が見れる。何かおかしい。

# sudo apt update
更新したら改善するかな?と思ってやってみると、以下エラーで止まった。

7ffed86xxxxx - 7ffed86xxxx r - xp 0000 00:00 0 [vdso]
fffffffffff600000-ffffffff601000 r-xp 00000 00:00 0 [vsyscall]
Aborted (core dumped)
パッケージリストを読み込んでいます... 完了
E: problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'
E: Sub-process returned an error code


# sudo apt dist-upgrade
こちらも試してみる。
無事、「完了」となったが、まだ反応は遅いまま。
再起動したら、反応が正常になった。グラフィックとかのドライバが入ってなかったって事かな?
ちなみに、この後、
# sudo apt update
とやったら、さっきはエラーになったのが、今度は「全て最新」と出て、正常に完了した。
カレンダー
12 | 2020/01 | 02
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 -
累積訪問者
現在の訪問者
現在の閲覧者数:
最新記事
最新トラックバック
最新コメント
月別アーカイブ
カテゴリ
プロフィール

bobgosso

Author:bobgosso
FPGAのブログへようこそ!

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード