わかった!! 直った!!
VirtualBox のゲストって、起動時にホストと時刻同期するそうな。
でまずは、その同期を停止してみた。
参考 https://takoyarosan.hatenablog.com/entry/2018/08/27/232423#%E6%99%82%E5%88%BB%E5%90%8C%E6%9C%9F%E3%82%92%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86
コマンドプロンプトで...
C:\Program Files\Oracle\VirtualBox>VBoxManage setextradata "GUEST123" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
が、まだだめ。
で、更に調べてみたら「システム設定」に「ハードウェアクロックをUTCにする」という項目があることが判明。
参考 https://vboxmania.net/%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E8%A8%AD%E5%AE%9A/
早速設定
VirtualBoxマネージャー から対象ゲストを選択して
設定 => システム => マザーボード
□ ハードウェアクロックをUTCにする <== チェック
おおぅ、直ったぞ、
起動後の時刻JSTが、今の時刻となった!!
ううむ、困った...
FreeBSD を VirtualBox にインストして開発しているが、timestamp(date?)がおかしなことに。
電源ON にした時に、JST 時刻が現在の日本時刻の9時間後となってしまう。
で、もしやと思い UTC 時刻を見ると現在の日本時刻。
例えば、今は11時33分頃だが
% date
2021年 7月10日 土曜日 20時33分14秒 JST
% date -u
2021年 7月10日 土曜日 11時33分16秒 UTC
てな、様子。
更に OpenNtpd 使っているが、特におかしくはなっていないしな、
ググっても、キーワードを何にすればよいか分からず、むむむ...
幸いなことに、reboot 後は reboot 前の設定を維持するので、しばらくは電源ONのときだけは date コマンドで時刻修正だなぁ。
FreeBSD12 に mozc 入れて emacs/boild-mozc で使用中。
で、mozc_tool の使い方をすぐ忘れるのでメモ
# Mozcの設定
/usr/local/bin/mozc_tool --mode=config_dialog
# 単語登録
/usr/local/bin/mozc_tool --mode=word_register_dialog
# 辞書ツール
/usr/local/bin/mozc_tool --mode=dictionary_tool
# 文字入力パレット
/usr/local/bin/mozc_tool --mode=character_palette
# 手書き文字認識
/usr/local/bin/mozc_tool --mode=hand_writing
ファイルの詳細情報を取得するコマンド
いろいろとパラメータあるようだが、ふつーに確認するなら次
- FreeBSD
% stat -x aaa
File: "aaa"
Size: 35861 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: ( xxxx/ foo) Gid: ( xxxx/ bar)
Device: 18446744072612270273,18446744071622754345 Inode: 231 Links: 1
Access: Wed Jan 30 00:27:44 2019
Modify: Fri Jan 31 16:20:59 2020
Change: Fri Jan 31 16:20:59 2020
- Linux
% stat aaa
File: `aaa'
Size: 18 Blocks: 8 IO Block: 4096 通常ファイル
Device: fd04h/64772d Inode: 247548844 Links: 1
Access: (0644/-rw-r--r--) Uid: ( xxxx/ foo) Gid: ( xxxx/ bar)
Access: 2020-01-31 18:14:34.599212020 +0900
Modify: 2020-01-31 18:14:34.599212020 +0900
Change: 2020-01-31 18:14:34.601212047 +0900
Birth: -
ちなみに FreeBSD でパラメータなしでは、ごちゃごちゃっと1行で表示される。
目視用ではなく shell 通して加工するためなんだろなぁ。
自社サーバの入れ換え中で、旧サーバ(FreBSD9.1/UFS)から新サーバ(FreeBSD12.1/ZFS)へファイルをどっさりコピー。
で、それぞれであるディレクトリを du -sh . したところ
旧サーバ 33G
新サーバ 14G
となり、コピー失敗かなと。
で、ちょっとお試しで個別ファイルのサイズを du -sh * したところ、
旧ファイルが 2.9G に対し新ファイルが 635M と全然違う。
が、sum すると全く一緒で、ls -l したら、いずれも 2.9G となった。
こりゃ du の何かが違うと思い、ぐぐって分かったことは、
UFS ファイルシステムでは、du コマンドが、ファイル内のデータブロックのサイズを報告します。
ZFS ファイルシステムでは、du コマンドが、ディスクに格納されているときのファイルの実際のサイズを報告します。
だそうな。
なるほど。
FreeBSD12 から ls -l の表示順が変更となったよう。
linux 系の ls と同様に英大文字小文字の区別がなくなってしまった。
こんな感じ (@FreeBSD12.1)
% ls -l
total 3
-rw-r--r-- 1 foo bar 0 11月 19 10:54 aaa
-rw-r--r-- 1 foo bar 0 11月 19 10:54 AAA
-rw-r--r-- 1 foo bar 0 11月 19 10:54 bbb
-rw-r--r-- 1 foo bar 0 11月 19 10:54 BBB
-rw-r--r-- 1 foo bar 0 11月 19 10:54 ccc
-rw-r--r-- 1 foo bar 0 11月 19 10:54 CCC
いやー自分的には昔からのこちら良いけど (@FreeBSD9.1)
% ls -l
total 0
-rw-r--r-- 1 foo bar 0 11月 19 10:54 AAA
-rw-r--r-- 1 foo bar 0 11月 19 10:54 BBB
-rw-r--r-- 1 foo bar 0 11月 19 10:54 CCC
-rw-r--r-- 1 foo bar 0 11月 19 10:54 aaa
-rw-r--r-- 1 foo bar 0 11月 19 10:54 bbb
-rw-r--r-- 1 foo bar 0 11月 19 10:54 ccc
今まで、ls で上位に表示させるために先頭大文字のファイル名を付けたりしていたのに、それが出来なくなってしまう...
で、昔風 ls 表示も出来ない分けではなくて、次のようにすれば良いとか。
export LC_ALL=C
でも、そうするとアチコチに影響が出てしまうしなぁ...
ううむ、ls のパラメータとして昔風表示できないかなぁ...
メインサーバ FreeBSD 10.1-RELEASE-p9 をアップグレードしないで放っておいて、久しぶりに pkg install しようとしたところ、pkg 自体のアップデートが実行されて動かなくなっってしまった。
/usr/local/lib/libpkg.so.4: Undefined symbol "openat"
で、以下を参考に
pkg-static upgrade -f
したが、260個(!)もアップグレードがあり恐いので止めて、
cd /usr/ports/ports-mgmt/pkg/
make reinstall
したが、こちらも NG
困った、pkg ダメなままだ...
参考
http://yamadawindsurf.blogspot.jp/2017/04/pkg.html
もともと windows とサーバ(FreeBSD)を samba で接続していたので、Mac も samba でいいや、と思い接続。
そこそこ順調だったが、新ファイルの設定などサーバ側の状態が変化しても、Mac 側に反映されず、そのリフレッシュ方法が見つからなかった。
が、こんな記事を発見。
http://blog.goo.ne.jp/m4g/e/46587961cf325e13c0c6bfdd3a6397aa
なんでも
当該フォルダに新規フォルダを作成するかファイルをコピーする。ファイルやフォルダを新たに作成するという事でリフレッシュがかかるようです。
だそうで、試しに表示しているディレクトリで、Mac から「新規フォルダを作成」してみたら、確かにリフレッシュされた。
って、面倒くせー!!
こりゃだめだわな。
ここはやっぱり正統派 NFS を設定するかな...
mac mini 買った。
で、windows では cygwin/X11 サーバに FreeBSD の X-client を生表示していたが、今回から ssh X11 forwarding を使ってみることに。
しかし
ssh -X foo
すると、
X11 forwarding request failed on channel 0
となり、NG 。
で、sshd_config などを確認してもおかしなところが見つからず。
と、ssh でのデバッグモードアクセスを発見。
ssh -v -X foo
結果、FreeBSD に xauth がインストールされていないことが判明。
... が、この FreeBSD は 9.1 と古くて ports も pkg もサポート切れで、xauth インストールできない。
わん、どうしようかな。
1. FreeBSD upgrade する
ううむ、メインサーバだしな、こりゃ恐いわ。
2. mac X11 の XQuartz を調べて生で使用する
出来るかも分からないし、たぶんネット情報もあまりないだろうな。
(ssh forwarding が主流だからな)
カンタンに設定できた!
上の記事参照
前のblog[2013-09-19]を参考に、情報追加
コマンド | 内容 |
pkg update | リモートリポジトリの取得 |
pkg update -f | リポジトリの強制取得(pkg コマンドのバージョンアップなど) |
pkg upgrade | インストール済PKGのアップグレード |
pkg info [PKGNAME] | インストール済PKGの情報表示 |
pkg info -f PKGNAME | インストール済PKGの詳細情報表示 |
pkg verion | インストール済PKGの新旧情報表示 |
pkg install PKGNAME | PKG インストール |
pkg delete PKGNAME | PKG 削除(アンイストール) |
pkg autoremove | 依存導入後に不要となったPKGの検出と削除 |
pkg search PKGNAME | PKGの検索 |
FreeBSD の PHP(php5-5.4.32など) って、ホント言語処理しか入らない。
で、少なくともこの辺を別に入れないと、何もできないよね。
mod_php5-5.4.32,1 PHP Scripting Language
php5-mbstring-5.4.32 The mbstring shared extension for php
php5-session-5.4.32 The session shared extension for php
このあたりも必要かもな。
php5-mysql-5.4.32 The mysql shared extension for php
php5-mysqli-5.4.32 The mysqli shared extension for php
php5-json-5.4.32 The json shared extension for php
何をしたか不明だが、pkg search ができなくなる。
# pkg seach emacs
# <== って、全く検索されない
install や upgrade は 同じくダメだが、pkg info や version は見られるので、どうも、検索系が NG 。
リポジトリの登録系トラブルと推測して、pkg update しても
# pkg update
Updating repository catalogue
FreeBSD repository is up-to-date
All repositories are up-to-date
「最新だぜ」と言われてしまう(orz)
調べたところ update -f があるそうなので、気を取り戻して、実行した
# pkg update -f
Updating repository catalogue
Fetching meta.txz: 100% of 968 B
Fetching digests.txz: 100% of 2 MB
Fetching packagesite.txz: 100% of 5 MB
Adding new entries: 100%
Incremental update completed, 23543 packages processed:
0 packages updated, 0 removed and 23543 added.
ところ、23543 も再登録されたよう。
で、めでたく pkg search も復活しました。
# pkg search emacs
apel-emacs24-10.8_9
auctex-emacs24-11.87_2
bbdb-emacs24-2.35_8
...
...
FreeBSD で openntpd 使うことにした。
で、ntpd を題材に(いまさらだけど)syslog の設定をメモ。
- カラのログファイルを作成(これでハマってしまった!)
# touch /var/log/ntpd.log
- /etc/syslog.conf へ追加
!ntpd
*.* /var/log/ntpd.log
- /etc/newsyslog.conf へ追加
/var/log/ntpd.log 644 5 100 * J
ログファイル パーミッション ファイル数 最大サイズ(KB) 日付無視 圧縮
- ログ再起動
# /etc/rc.d/syslogd restart
# /etc/rc.d/newsyslog restart
- openntpd 再起動
# /usr/local/etc/rc.d/openntpd restart
で、以前[2013-05-26] port make のオプションで config を一括設定する方法を書いた。
今度は、依存も含めて全 ocnfig をデフォルト指定で make install する方法。
# make -DBATCH install
ついでに 依存している一覧表示オプション
# make all-depends-list
あまりゲーム機に興味ないが、Playstation4 が FreeBSD と Clang を使用しているとか。
最近元気ない SONY さんだが、なかなかのセンスです。
http://news.mynavi.jp/news/2013/06/25/037/
http://www.scei.co.jp/ps4-license/
アルファリリースが clang で実装されたとか。
http://www.infoq.com/news/2013/09/freebsd10-clang
clang デフォルトの話、2年くらい前からあったが、いよいよ現実的になってきた。
楽しみ。
ソフト開発で、GPL(特に GPL3) にビクビクしながら、 Linux+gcc(+lib) を使っている人は、全員 FreeBSD+clang に移行すべきだよね。
開示強制の不安無く、安心してソフト作れます。