2014/01/18(土)samba4メモ

ADの動作はめんどいので抜きにして、ユーザーの作成メモ。
samba-tool user create ${USER} --uid ${USER} --gid-number ${GID} --rfc2307-from-nss
smb4.conf に追加
idap_ldb:use rfc2307 = yes
uid が一致しないとUnixアカウントと紐つかないので、アクセス権が足りない状態になる。

2013/12/28(土)dot.files

emacs。フォント周りは環境に合わせて。
Windowsではファイル名にshift_jisを使うように↓を入れておく。
(set-file-name-coding-system 'shift_jis-dos)
もしくは
(set-file-name-coding-system 'cp932-dos)
(setq load-path
      (append (list nil "~/.elisp")
              load-path))
(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(inhibit-startup-screen t)
 '(menu-bar-mode nil)
 '(scroll-bar-mode nil)
 '(tool-bar-mode nil))

; dont make bakckup files
(setq make-backup-files nil)

(cond (window-system
       (set-face-attribute 'default nil
			   :family "Inconsolata"
			   :height 105)
       (set-fontset-font(frame-parameter nil 'font)
			'japanese-jisx0208
;			'("Meiryo")
;			'("Hiragino Kaku Gothic ProN W3")
			'("HGHeiseiKakugothictaiW3")
			)
))

; asign backspace to C-h
;(global-unset-key "\C-\\")
(global-set-key "\C-h" 'backward-delete-char)
(global-set-key [delete] 'delete-char)
(global-set-key [backspace] 'backward-delete-char)

; language environment
(set-language-environment "Japanese") 
(prefer-coding-system 'utf-8-unix)
(set-default-coding-systems 'utf-8-unix)
(set-terminal-coding-system 'utf-8-unix) 
(set-keyboard-coding-system 'utf-8-unix)

;display time
(display-time)

;; color 黒板いろ
(set-background-color "#101010")
(require 'font-lock)
(add-hook 'font-lock-mode-hook '(lambda ()
(set-face-foreground 'default "#F0E0D0")
(set-face-background 'default "#002000")
(set-face-foreground 'font-lock-builtin-face "AliceBlue")
(set-face-foreground 'font-lock-comment-face "LightSlateGray")
(set-face-foreground 'font-lock-string-face  "SeaShell3")
(set-face-foreground 'font-lock-keyword-face "aquamarine1")
;;(set-face-foreground 'font-lock-constant-face "black")
(set-face-foreground 'font-lock-function-name-face "LightSkyBlue")
(set-face-foreground 'font-lock-variable-name-face "PaleTurquoise")
(set-face-foreground 'font-lock-type-face "LightSeaGreen")
(set-face-foreground 'font-lock-warning-face "LemonChiffon")
(set-face-bold-p 'font-lock-function-name-face t)
(set-face-bold-p 'font-lock-warning-face nil)
))
(global-font-lock-mode t)

(put 'narrow-to-region 'disabled nil)
(put 'upcase-region 'disabled nil)
(put 'downcase-region 'disabled nil)
tmux。Ctrl-B って超使うじゃん。Ctrl-Zなら一連の流れに組み込まれる事は少ないので大丈夫。他のキーは全部流れで打つ中の一部になるのでプレフィクスキーには出来ない。C-z bg を考えずに打つことは、俺はしない。考えるって事じゃなく単に癖が付いてない。
set-option -g prefix C-z
unbind-key C-b
bind-key C-z send-prefix
set-option -g update-environment "DISPLAY SSH_ASKPASS SSH_AUTH_SOCK SSH_AGENT_PID SSH_CONNECTION WINDOWID XAUTHORITY"
zsh
# Lines configured by zsh-newuser-install
bindkey -e
# End of lines configured by zsh-newuser-install
# The following lines were added by compinstall
zstyle :compinstall filename ~/.zshrc

fpath=(~/.zsh/functions/Completion ${fpath})
autoload -Uz compinit
compinit
# End of lines added by compinstall
HISTFILE=$HOME/.zsh-history
HISTSIZE=100000
SAVEHIST=100000
setopt extended_history
function history-all {history -E 1}

tcsh-backward-delete-word () {
	local WORDCHARS="${WORDCHARS:s#/#}"
	zle backward-delete-word
}
zle -N tcsh-backward-delete-word
bindkey '^W' tcsh-backward-delete-word

setopt Ignoreeof
unsetopt AUTO_MENU

alias h='history 25'
alias j='jobs -l'
alias ll='ls -lA'
alias la='ls -a'
PROMPT=[$USER@%m]%T%%
RPROMPT=[%~]

if [ -n $DISPLAY ]; then
    export LANG=ja_JP.UTF-8
fi

2013/06/24(月)jail を make world

  • 標準以外の場所に置いたソースから
  • 標準以外の場所でビルドして
  • jail を mergemaster する
標準以外の場所でビルドする場合は、単に MAKEOBJDIRPREFIX を付ける。
ただし、これは make 変数ではなく環境変数なので make.conf や src.conf で指定してはいけない。微妙に変な事になるみたい。

普通に。
cd /data/src/stable/src
sudo env MAKEOBJDIRPREFIX=/data/src/stable/obj make -j 8 buildworld
sudo env MAKEOBJDIRPREFIX=/data/src/stable/obj make -j 8 kernel
sudo env MAKEOBJDIRPREFIX=/data/src/stable/obj make installworld
jail を。DESTDIRはmake変数。
sudo env MAKEOBJDIRPREFIX=/data/src/stable/src make installworld DESTDIR=/data/jail/jail0
sudo mergemaster -UPiF -D /data/jail/jail0 -t /data/jail/jail0/var/tmp/temproot -m /data/src/stable/src

2012/11/21(水)CGI実行のためのアカウント設定

言わずもがなだけど、Userdir で CGI を実行する時に
  • Suexec を使うならプライマリグループは無難なものにする
    • wheel とか operator とかにしない
      • ていうか、sudo が一般的な今、operator に所属するのは割と危険
  • Suexec を使わないなら www に所属しておく、実行ファイルは chmod g+x しておく
Suexec の実行可能なディレクトリはビルトインで指定されているので、public_html 以外のディレクトリを使うならそのようにコンパイルする。

2012/11/20(火)日常環境を jailed にした

日ごろ使う環境を jail 上に構築しなおした。
  • 3年に一度くらい、何かの拍子にシステム構築しなおす機会に出くわすんだけど、めんどくさい
    • jail にしておけば、バックアップから何も考えずに書き戻せば使える
  • /etc をバックアップしたいなぁ
    • ファイルベースでの丸ごとバックアップだとリンクやら flag やらの情報が抜けかねないし、ファイル指定でのバックアップで抜けが出ても嫌だ。
    • /etc を zfs パーティションにしたら簡単なんじゃないか?
    • 生環境だと、/etc が起動パーティションにないと rc.conf とか fstab が読めないのでいちいちシングルユーザーに落ちる
    • jail ならできる
インストールディスクとは別に、でかいディスク2本を zfs でミラーリングしてるので、個人使用ならこれで冗長性は十分。ここに日常環境を入れておく。
  • この jail 専用の zfs パーティションを用意して、子パーティションに全部入れる
    • /etc,/usr/local/etc を別パーティションにする
    • zfs jail でこのパーティションを jail にくれてやる
    • バックアップの必要が無い、ports や src は別のパーティションに入れてもいい
新しくシステムを作るときには、option VIMAGE でカーネルを作り直したらもう完了。
VIMAGE が experimental じゃなくなったら手間なしで完了。


そして、jail.conf(5) や、zfs jail するタイミングをどうすればいいんだ、というねたに続く。