パッケージ管理あれこれ
2005-11-05-1 / カテゴリ: [cygwin][debian][redhat][Solaris][command] / [permlink]

すぐ忘れるのでメモ

インストール済みのパッケージ一覧出力
# dpkg -l      (debian)
# rpm -qa      (redhat)
# cygcheck -cd (cygwin)
# pkginfo      (Solaris)

インストール済みのパッケージ foo に含まれるファイル一覧
# dpkg -L foo     (debian)
# rpm -ql foo     (redhat)
# cygcheck -l foo (cygwin)
# pkgchk -vn foo  (Solaris)

ファイル /foo/bar をインストールしたパッケージ
# dpkg -S /foo/bar     (debian)
# rpm -qf /foo/bar     (redhat)
# cygcheck -f /foo/bar (cygwin)
# pkgchk -lp /foo/bar  (Solaris)

solaris はかなりアヤシイ.

ファイルがどのパッケージに含まれていたかの確認
2005-08-31-2 / カテゴリ: [unix][Solaris] / [permlink]

dpkg -S /path/file に相当するコマンドは?

% pkgchk -lp /usr/sbin/pkgchk
Pathname: /usr/sbin/pkgchk
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: sys
Expected file size (bytes): 169020
Expected sum(1) of contents: 38077
Expected last modification: Jul 11 05:54:58 2003
Referenced by the following packages:
        SUNWcsu
Current status: installed

パッケージの内容一覧
2005-08-31-1 / カテゴリ: [unix][Solaris] / [permlink]

dpkg -L pkg-name に相当するコマンドは?

% pkgchk -v pkg-name
一覧の表示と同時に、デフォルトからの改竄チェックもおこなう。

% pkgchk -l pkg-name
ファイルリスト以外に、Type/mode/owner/size などの詳細情報も表示する。

パッケージ情報の取得
2005-07-25-3 / カテゴリ: [unix][Solaris][command] / [permlink]

% pkginfo
これで、パッケージ一覧が表示される。
(バージョン情報等を含む)詳しい情報は
% pkginfo -l

特定パッケージについては
% pkginfo | grep -i ssh
application SMCossh        openssh
% pkginfo -l SMCossh
   PKGINST:  SMCossh
      NAME:  openssh
  CATEGORY:  application
      ARCH:  sparc
   VERSION:  3.7.1p2
   BASEDIR:  /usr/local
:
:
こんな感じで。

単純な条件付のファイルリスト取得は grep は使わず find のオプションに指定せよ
2005-07-14-2 / カテゴリ: [unix][Solaris][command] / [permlink]

某所にて、こんなコマンドを見た。
$ find . -mtime +1 -print |grep -v .gz|grep -v "lost+found"

Solaris で試したところ、
$ find . -mtime +1 ! -name "*.gz" ! -name "lost+found" -print
の方が、3倍ほど高速だった。

pts/8:miyazaki@nwmail% time zsh -c 'repeat 100 /usr/bin/find . -mtime +1 -print
| grep -v "\.gz" | grep -v "lost+found"' > /dev/null
zsh -c  > /dev/null  1.11s user 3.15s system 94% cpu 4.522 total

pts/8:miyazaki@nwmail% time zsh -c 'repeat 100 /usr/bin/find . -mtime +1 ! -name
 "*.gz" ! -name "lost+found" -print' > /dev/null
zsh -c  > /dev/null  0.40s user 1.25s system 95% cpu 1.736 total

(ファイル数)
pts/8:miyazaki@nwmail% /usr/bin/find . -mtime +1 -print | grep -v "\.gz" | grep
-v "lost+found" W -l
     34
pts/8:miyazaki@nwmail% /usr/bin/find . -mtime +1 ! -name "*.gz" ! -name "lost+fo
und" -print W -l
     34
pts/8:miyazaki@nwmail% find . W -l
     41

てーか、grep -v .gz | grep -v "lost+found" って、gzip で圧縮したファイルと、lost+found ディレクトリを除きたいんだろうけど、要件を満たしすぎているぞ>担当者
Referrer (Inside): [2006-02-23-2]

find の and/or オプション
2005-07-14-1 / カテゴリ: [unix][Solaris][command] / [permlink]

Solaris の /usr/bin/find は、GNU findutil の -and/-or はない。
かわりに、-a/-o があるので、こっちを使う。
GNU find も、-and/-or の代わりに -a/-o が使える。こっちで覚えた方がいいかも。

ついでに、-and は省略しても同じ条件になる。
って、マニュアルにかいてあるし^^;;;
       expr1 expr2
              And (implied); expr1 が偽の場合は expr2 は評価されない。

       expr1 -a expr2
              expr1 expr2 と同じ。

       expr1 -and expr2
              expr1 expr2 と同じ。

関連: [2005-03-02-1]

Solaris システムコールのトレース
2005-04-05-1 / カテゴリ: [unix][Solaris][command] / [permlink]

# truss -p PID
root で実行すること

容量指定でダミーファイルの作成
2004-11-25-1 / カテゴリ: [unix][Solaris][command] / [permlink]

mkfile nnn[k|b|m] filename

Solari で、Emacs を with X でコンパイル
2004-11-22-3 / カテゴリ: [unix][Solaris][emacs][X] / [permlink]

gcc 2.95.3 で ./configure --with-x; make; make install
カンペキ

Solaris gcc 3.3 で gcc 2.95.3 を make する
2004-11-19-2 / カテゴリ: [unix][Solaris] / [permlink]

loop.c
loop.c:321:8: missing terminating " character
loop.c:322:38: missing terminating " character
make[2]: *** [loop.o] Error 1
make[2]: Leaving directory `/export/home/miyazaki/local/src/gcc/gcc-2.95.3/gcc/ch'
make[1]: *** [cc1chill] Error 2
make[1]: Leaving directory `/export/home/miyazaki/local/src/gcc/gcc-2.95.3/gcc'
make: *** [all-gcc] Error 2
こんなエラーがでた

http://apollo.u-gakugei.ac.jp/~ksuzuki/chlog/2004-01.html
以下のようなエラーが発生

In file included from addmul_1.c:27:
../longlong.h:109:12: missing terminating " character
****以下中略
../longlong.h:1160:9: missing terminating " character

longlong.hの各エラー行の末尾に'\'を追加し,
% make
# make install

makeは正常に完了した.
たぶん
文章〜〜〜 "quoted-string〜〜
  〜〜" 文章〜〜〜〜
って箇所がマズイみたい。

gcc/ch/loop.c の 321 行目の該当箇所で、末尾に \ を追加(改行をエスケープ)
これで OK

Solaris8 + Emacs インストール
2004-11-19-1 / カテゴリ: [unix][Solaris][emacs] / [permlink]

gcc 3.3 だとダメぽい
http://www.scn-net.ne.jp/~garakuta/diary/200403.html#17
makeの最後の方で,elispをバイトコンパイルする途中,「./emacs -q -batch -f list-load-path-shadows」のところとその後のところでemacsがセグるという問題が・・・(;´д`).gdbで追おうお思ったんですが,何かbtしてもlibcの中しか見えず・・・.__do_global_dtors_auxってなんじゃぁ,と検索してみたら答えが見つかりました.Solarisだとgcc-3.3系でダメらしいです.gcc-2.95.3に切替えてsrc/wnnfunc.cを少し修正してビルドしたら動きました.
答え: http://mail.gnu.org/archive/html/bug-gnu-emacs/2003-05/msg00211.html
gcc 2.95.3 でGo

Solaris でディスクの inode 確認
2004-11-09-1 / カテゴリ: [unix][Solaris][command] / [permlink]

df -F ufs -o i
ufs って、Unix File System のことかな。

Solaris 辞書ファイル(word リスト)
2004-10-29-1 / カテゴリ: [unix][Solaris] / [permlink]

/usr/share/lib/dict/words
/usr/dict/words(@)

ps フォーマット
2004-10-12-1 / カテゴリ: [unix][Solaris][command] / [permlink]

$ ps -o user,fname,pid,ppid

Solaris Emacs インストール
2004-07-02-1 / カテゴリ: [unix][Solaris][emacs] / [permlink]

./configure --prefix=/path
コアダンプする
./configure --prefix=/path --with-x=no --with-gcc
OK
ただし、日本語が入力できない(変換はMS-IMEでも)
別のエディタで日本語を入力したファイルをopenした場合は表示のみ可能
leim が必要?
emacs のソースを展開したディレクトリと同じ場所で leim も展開
$EMACS/leim 以下に配置される
再ビルド・再インストールすれば、デフォで C-\ で言語切り替え
漢字変換もできる。すげー

screen インストール(Solaris)
2004-05-12-1 / カテゴリ: [unix][Solaris][command][screen] / [permlink]

src: ftp://ftp.uni-erlangen.de/pub/utilities/screen/
解説: http://www.kawaz.jp/pukiwiki/?screen など
./configure --prefix=/export/home/miyazaki/local/screen-4.0.2

Solaris に lynx インストール
2004-04-15-3 / カテゴリ: [unix][Solaris][command] / [permlink]

http://lynx.isc.org/release/
ふつーにまけまけいんすとーる

Solaris に lv インストール
2004-03-10-1 / カテゴリ: [unix][Solaris][command] / [permlink]

root 権限を持たない場合
% wget http://www.ff.iij4u.or.jp/~nrt/freeware/lv451.tar.gz
% tar zxvf lv451.tar.gz
% cd lv451/build
% ../src/configure --prefix=/export/home/miyazaki/bin/lv-4.50
% make
% make install
(DebianPackageのソースの場合)
build/Makefile の install: の部分で、bin に chown しているため一般ユーザ
ではインストールできない
ので、-o bin -g bin の部分を削る。

Solaris に rxvt インストール
2004-03-05-3 / カテゴリ: [unix][Solaris][command] / [permlink]

Debian Package からソースをDL(笑)
http://ftp.debian.org/debian/pool/main/r/rxvt/rxvt_2.6.4.orig.tar.gz
tar xvf rxvt_2.6.4.orig.tar.gz
cd rxvt-2.6.4.orig
~ono/bin/patch-gnu -p1 < ../rxvt_2.6.4-6.patch
./configure --prefix=/export/home/miyazaki/bin/rxvt  --enable-kanji
make
make install
カテゴリ: Solaris

最終更新時間: 2013-05-02 16:12