« 2012年2月 | トップページ | 2012年9月 »

2012年8月の2件の記事

2012年8月 6日

CentOS 5.3を5.8にアップデート

テストに使っているVMwareゲストのCentOS 5.3を5.8にアップデートした。「yum update」一発であとは勝手にやってくれるのだが、会社のネットワークの中からはプロキシを通さないと外部サイトにアクセスできない。/etc/yum.confにプロキシサーバと認証アカウントを設定する。

proxy=http://******************:NNNN
proxy_username=************
proxy_password=************

パスワードを平文で書くのはどうにかならないものか。

全部で527個のパッケージをインストールしたりアップデートしたりし、総ダウンロード容量は724MBだった。

Transaction Summary
====================================================================================================
Install     65 Package(s)
Update     462 Package(s)
Remove       0 Package(s)

Total download size: 724 M

編集済みのシステム設定ファイルを上書きしないように、.rpmnewという拡張子のファイルが作られた。/etc/profile.d/vim.shだけは上書きして、既存のものを.rpmsaveに待避した。

warning: /etc/sysconfig/iptables-config created as /etc/sysconfig/iptables-config.rpmnew
warning: /etc/profile.d/vim.sh saved as /etc/profile.d/vim.sh.rpmsave
warning: /etc/updatedb.conf created as /etc/updatedb.conf.rpmnew
warning: /etc/yum.repos.d/CentOS-Base.repo created as /etc/yum.repos.d/CentOS-Base.repo.rpmnew
warning: /etc/sudoers created as /etc/sudoers.rpmnew
warning: /etc/yum.conf created as /etc/yum.conf.rpmnew

| | コメント (0)

CentOS 5.8のsudoeditでシンタックスハイライト

システム設定ファイルを編集するときは、sudo vimではなくsudoeditを使うのがセキュリティの観点から望ましい。前者はvimをrootで実行する。後者はvimをログインユーザで実行する。vimで編集中に:shコマンドでシェルに入ったとき、前者はrootのシェルが開き、後者はログインユーザのシェルが開く。またvimそのものやロードするスクリプトに悪意あるコードが混入しても、後者は一般ユーザ権限でしか動作しないので、影響範囲を抑えることができる。

ところでCentOS 5.8のsudoeditでファイルを開くと、自分の.vimrcで設定しているシンタックスハイライトが利かず、ソースが読みづらい。これはsudoeditが作る一時ファイルに拡張子がないからだ。Sudo 1.7.4で機能改良されている。

Major changes between version 1.7.3 and 1.7.4b1
http://www.gratisoft.us/sudo/devel-old.html#1.7.4b1

Sudoedit will now preserve the file extension in the name of the temporary file being edited. The extension is used by some editors (such as emacs) to choose the editing mode.

CentOS 5.8のSudoは1.7.2p1で、「sudoedit test.php」を実行すると一時ファイル/var/tmp/testYZH3jk8Ebu6Mを作る。拡張子がないため、どのシンタックスを使えばいいのかvimが判断できない。「:set syntax=XXX」と自分で設定しなければいけない。CentOS 6.2のSudo 1.7.4p5は/var/tmp/testXXeL4COl.phpと拡張子付きの一時ファイルを作るので、シンタックスハイライトが自動的に有効となる。もちろん.vimrcで「syntax=enable」としておく必要がある。

またCentOS 5.8の/bin/viはTinyバージョン、CentOS 6.2のはSmallバージョンでコンパイルされたvimで、どちらもsyntax機能が組み込まれていない。sudoeditはEDITORやVISUAL環境変数に設定されたエディタを使うから、そこを「vi」と設定してしまうと、やはりシンタックスハイライトが利かなくなる。

sudoeditはログインユーザの.vimrcを見るが、sudo vimはrootの.vimrcを使うという話をWebで見かけた。しかし私の環境ではどちらもログインユーザの.vimrcを読み込んでいる。

| | コメント (0)

« 2012年2月 | トップページ | 2012年9月 »