vimで自動インデント

vimで自動インデントをONにする方法.
.vimrcに以下を記述.

filetype indent on

これで再読み込みすればOK.

Socketプログラムのエラー

Geekなぺーじ:Linuxネットワークプログラミングに書いてあるプログラムをコンパイルしたらエラーが発生.

error: ‘memset’ was not declared in this scope
error: ‘close’ was not declared in this scope
error: ‘inet_addr’ was not declared in this scope

調べたら,memset,close,inet_addrはそれぞれstring.h,unistd.h,arpa/inet.hにあった.
とりあえずincludeしたら無事コンパイル通った.

#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>

NISの設定メモ

NISの設定をした時の記録.
忘れそうなので,とりあえずメモっとく.

# NIS(YP)をインストール
yum install ypserv

# yp関連のコマンドがインストールされたか確認.
# ypと入力した後に,<tab>を押して確認できる.
yp

# /etc/ypserv.confにはうだうだ書いてありますよ,って確認だけ.
vi /etc/ypserv.conf

# ドメインネームをつける
ypdomainname hogemoge.jp

# /var/yp/にyp用のMakefileが存在するから,makeする.
# ドメインネームに関連するグループとかユーザが生成される.
cd /var/yp/
make

# /etc/sysconfig/networkにホストネームだけでなく,NISドメインネームも記述する.
vi /etc/sysconfig/network

# 新しくユーザとパスワードを作る.
useradd kano4
passwd kano4

# /var/yp/でmakeをもう一度実行.(userを加えたから)
cd /var/yp/
make

# ユーザが加えられた事を確認.
# 上手くいっていれば,passwd.bynameに加えたユーザ名があるはず.
vi hogemoge.local/passwd.byname

# NISサーバを動かす.
service ypserv start

# NISサーバをデフォルトで動作するようにする.
chkconfig ypserv on

# NISサーバがデフォルトで動くようリンクはられていることを確認できる.
cd /etc/rc.d/rc3.d/

# ファイルのタイプを確認できる.
# (上の操作で見たファイルがリンクであることを確かめるために使った.)
file *

# おまけ
# ドメインネームが上手くいかないと思ったら,
# 異なるファイルをとってきていたらしい.
vi /etc/hosts

vimでsyntaxコマンドが使えない

ubuntuのvimで,”syntax on”を実行すると,以下のようなエラーが発生.

Sorry, the command is not available in this version: syntax on

<解決策>
ubuntuではどうやらデフォルトでvimの簡易版がインストールされているらしい.
そのため,一度vim-commonを削除してから,再度vimをインストールする.

sudo apt-get remove vim-common
sudo apt-get install vim

これで,”syntax on”コマンドが使えるようになった.
あとは,~/.vimrcとかに色々書いとけばいいんじゃないだろうか.

おまけ:vimのタブ幅の調整

set tabstop=4(文字数)

ubuntu apt-cdromのエラー

ubuntuを利用していたが,ある日アップデートしようとしたら以下のようなエラーが表示された.

全てまたは一部のリポジトリのインデックスファイルがダウンロードできませんでした

指定されているリポジトリが既に存在しないか、あるいはネットワークに問題がある可能性があります。古いインデックスファイルがある場合はそれが使用されますが、無い場合にはそのリポジトリは無視されます。ネットワーク接続を確認し、正しいリポジトリに設定されているか確認してください。

[Ubuntu 8.04 _Hardy Heron_ Japanese Remix - Release i386 (20080425)]/dists/hardy/main/binary-i386/Packages.gz の取得に失敗しました この CD-ROM を APT に認識させるには apt-cdrom を使用してください。新しい CD-ROM を追加するために apt-get update は使用できません。
cdrom:[Ubuntu 8.04 _Hardy Heron_ Japanese Remix - Release i386 (20080425)]/dists/hardy/restricted/binary-i386/Packages.gz の取得に失敗しました この CD-ROM を APT に認識させるには apt-cdrom を使用してください。新しい CD-ROM を追加するために apt-get update は使用できません。
http://us.archive.ubuntu.com/ubuntu/dis … ackages.gz の取得に失敗しました 404 Not Found [IP: 91.189.88.46 80]
いくつかのインデックスファイルのダウンロードに失敗しました。これらは無視されるか、古いものが代わりに使われます。

何度アップデートを試しても毎回同じエラーが出てうざいので調べてみた.
すると,/etc/apt/sources.listに書いてある1行目が原因と判明.

早速1行目をコメントアウトしてみたところ,無事アップデートできた.

ちなみに後でわかったことだが,
「システム→システム管理→ソフトウェア・ソース→サードパーティのソフトウェア」の中にあるcdrom:[Ubuntu 8.04~]
のチェックを外せばよかったらしい.

次のページ →