Hatena::Groupmylinux

今日も元気にlinux

2008-12-03

[][]vsftpdの基本設定 12:09 vsftpdの基本設定 - 今日も元気にlinux を含むブックマーク はてなブックマーク - vsftpdの基本設定 - 今日も元気にlinux vsftpdの基本設定 - 今日も元気にlinux のブックマークコメント

vsftpdでFTPサーバを動作させたのでメモ。

# vsftpd -v
vsftpd: version 2.0.5

基本設定は/etc/vsftpd/vsftpd.confで行う。以下主要な部分だけを抜粋。後日追加するかもしれん。

# cat vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
# 匿名ログインを許可しない
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
# ローカルユーザーのログインを許可する
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
# FTPの書き込みコマンドを許可する
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
# デフォルトのumaskを022とする
local_umask=022

# /etc/vsftpd/user_listを有効にする
userlist_enable=YES
# /etc/vsftpd/user_listをホワイトリストとして動作させる
userlist_deny=NO

# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
# 以下の3つの設定で、chroot_list_fileに書かれているユーザーはlocal_rootより上のディレクトリに移動できないようになる。
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/user_list
#
local_root=/var/www

vsftpd: version 2.0.5には/etc/vsftpd/ftpusersというファイルがあり、ここに書かれているユーザーはftpログインできない。つまりuser_listに名前がある、かつftpusersに名前がないユーザーのみ、/var/www以下のディレクトリftpログインできる。

なんでこんな仕様になっているかは分からないが、デフォルトではシステムアカウントがuser_listとftpusers両方に記載されており、自分のログインアカウントのみuser_listに記載されていた。つまり何も設定しなくても

service start vsftpd

と打てば自分のアカウントftpログインできる。

もちろんこれは危険なので

ftpログイン専用のアカウントを作成する。

usreadd user01_www
passwd user01_www
usermod -s /sbin/nologin user01_www

useradd -s /sbin/nologinとすれば、システムへのログインを禁止できる。

んで、user_listから自分のログインアカウントを削除し、user01_wwwを追記すればOK。

kazukazu2010/10/01 12:42usreadd じゃなくて useradd ですね。
とても参考になりました。
ありがとうございます。

2008-11-29

[][]rubyをソースからインストールアンインストール 21:04 rubyをソースからインストール→アンインストール - 今日も元気にlinux を含むブックマーク はてなブックマーク - rubyをソースからインストール→アンインストール - 今日も元気にlinux rubyをソースからインストール→アンインストール - 今日も元気にlinux のブックマークコメント

勉強のためにapt-getではなくソースからrubyインストールしようと試みた。

no title

% wget ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.6-p114.tar.gz
% tar -xvzf ruby-1.8.6-*.tar.gz
% cd ruby-1.8.6-*
% ./configure
% make
% su
# make install
# exit
% make clean

これでrubyが/usr/local/bin以下にインストールされた。続いてrubygemsインストールも同じようにソースから。んで、取り合えずgem install rakeしようと思ったらエラーが…。

$ gem install rake
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- zlib (LoadError)
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/package.rb:10
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/format.rb:9
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/installer.rb:11
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:3
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:4
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:140:in `load_and_instantiate'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:65:in `[]'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:118:in `find_command'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:104:in `process_args'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:75:in `run'
	from /usr/local/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:39:in `run'
	from /usr/local/bin/gem:24

zlibが入ってないからだなぁとかいろいろ試したんだがどうにも復旧せず、諦めてapt-getでrubyとrubygemをインストールすることにした。

その後、同じようにgem install rakeとすると同じエラーが…(汗 どうやら/usr/local/binの方を優先して読みにいっているようです。

$ which -a ruby
/usr/local/bin/ruby
/usr/bin/ruby
$ which -a gem
/usr/local/bin/gem
/usr/bin/gem
$ set | grep ^PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

ふむふむ。

  1. /usr/local/sbin
  2. /usr/local/bin
  3. /usr/sbin
  4. /usr/bin
  5. /sbin
  6. /bin
  7. /usr/games

の順番なのね。これを入れ替えるのはまずそうだし、フルパス打てばいいんだけど面倒なので/usr/local/bin以下のrubyアンインストールすることにする。

調べてみた。

調査の結果、ソースからインストールしたアプリアンインストールするのは面倒な作業だということが分かりました。

make unintallが使えない=ほとんどの場合は、Makefileの中身を見るorログを確認してインストールしたファイルを手動で消去する。あるいはこういうツールを使うのでもいいらしい。

make uninstallってほとんどないですよね。だからCheckInstall - devworks

CheckInstall Homepage

あ、けどこれCheckInstallで導入したやつしかアンインストールできないんだよね(汗 もう面倒なので/usr/local/bin以下のファイル全消去することにします。

$ ls -al
合計 2044
drwxr-xr-x  2 root root    4096 2008-11-27 01:45 .
drwxr-xr-x 10 root root    4096 2008-10-30 07:53 ..
-rwxr-xr-x  1 root root    3882 2008-11-27 01:36 erb
-rwxr-xr-x  1 root root     788 2008-11-27 01:45 gem
-rwxr-xr-x  1 root root     379 2008-11-27 01:36 irb
-rwxr-xr-x  1 root root    1543 2008-11-27 01:36 rdoc
-rwxr-xr-x  1 root root    1491 2008-11-27 01:36 ri
-rwxr-xr-x  1 root root 2055069 2008-11-27 01:36 ruby
-rwxr-xr-x  1 root root     153 2008-11-27 01:36 testrb
$ sudo rm -rf *
$ ls -al
合計 8
drwxr-xr-x  2 root root 4096 2008-11-29 18:57 .
drwxr-xr-x 10 root root 4096 2008-10-30 07:53 ..

きれいさっぱりw

その他参考情報

Jewel-mmo開発日記

no title

[][]/etc/fatabで他PCのドライブをマウントするとき、IDとpasswordを外部ファイル化する。 00:05 /etc/fatabで他PCのドライブをマウントするとき、IDとpasswordを外部ファイル化する。 - 今日も元気にlinux を含むブックマーク はてなブックマーク - /etc/fatabで他PCのドライブをマウントするとき、IDとpasswordを外部ファイル化する。 - 今日も元気にlinux /etc/fatabで他PCのドライブをマウントするとき、IDとpasswordを外部ファイル化する。 - 今日も元気にlinux のブックマークコメント

/etc/fstabで起動時に別PCのドライブを自動的にマウントさせにいくことが可能です。

$ ls -al /etc/  | grep fstab
-rw-r--r--   1 root root       597 2008-11-26 23:29 fstab

//192.168.1.101/D	/home/user01/D	cifs	username=user01,password=PASS01,codepage=cp932,iocharset=utf8,defaults	0	0

とはいえ/etc/fstabはユーザーにも読み取り権限がありパスワードが丸見えなので、クレデンシャルオプションを使用して別ファイルにパスワードを記録します。

//192.168.1.101/D	/home/user01/D	cifs	credentials=/etc/smbpasswd,codepage=cp932,iocharset=utf8,defaults	0	0

$ cat /etc/smbpasswd

username=user01
password=PASS01

んで外部ファイルのアクセス権限を操作し、rootしか読めないようにする。

$ sudo chown root:root /etc/smbpasswd
$ sudo chmod 0600 /etc/smbpasswd
$ ls -l /etc/smbpasswd
-rw------- 1 root root 35 2008-11-29 21:55 /etc/smbpasswd

参考文献

Electronic Genome - /etc/fstabのユーザ名とパスワードを外部ファイル化する

ChietherChiether2012/08/09 17:29さて、make installからのアンインストール。 今更ながらのコメントですが。
私の環境(1.8.7, 1.9.3)での確認ですが .installed.list というファイルができているはずです。

2008-11-24

[][][]XWindowSystemについて 11:56 XWindowSystemについて - 今日も元気にlinux を含むブックマーク はてなブックマーク - XWindowSystemについて - 今日も元気にlinux XWindowSystemについて - 今日も元気にlinux のブックマークコメント

2種類のXWindow起動方法がある。

1.ランレベル5によるGUIログイン

これは普通。

2.ランレベル3→startx

Redhat系の場合、inittab内のランレベルを変更する、Debian系の場合、update-rc.d -f gdm removeなど、/etc/init.d/gdmを起動させないようにすればCUIログインになる。

startxによって起動された場合、Xクライアントは~/.xinitrc、なければ/etc/X11/xinit/xinitrcを読み込む。どっちがあるかはパッケージによって違うのでlocate xinitrcなどすれば分かる。xinitrcはただのラッパーで本スクリプトはxsessionやXclientsなどになる。どれを呼び出しているかはxinitrcの中に書いてあるので参照する。

同じくXサーバは~/.xserverrc、なければ/etc/X11/xinit/xserverrcを読み込む。

[][][][]XDMの設定について 11:56 XDMの設定について - 今日も元気にlinux を含むブックマーク はてなブックマーク - XDMの設定について - 今日も元気にlinux XDMの設定について - 今日も元気にlinux のブックマークコメント

XDMとはgnomeKDEなど、Windowsでいうエクスプローラのことである。

XDMの設定ファイルの場所について

各種教本では、「XDMの設定ファイルは/etc/X11/gdm(kdm)以下にあるよ」と書いてあるのだが、Ubuntu8.10もCentOS5もそんな所にはファイルを置いていなく、/etc/gdm/以下にパスが変更された。まぁ変更されたってより他のアプリと同じパスに修正されたと言うべきか。

★CentOS5
[user01@eeco gdm]$ ls -al
合計 84
drwxr-xr-x  7 root root  4096  6月 25 05:46 .
drwxr-xr-x 98 root root 12288 11月 24 04:03 ..
drwxr-xr-x  2 root root  4096 11月  5 14:11 Init
drwxr-xr-x  2 root root  4096  6月 25 05:46 PostLogin
drwxr-xr-x  2 root root  4096  6月 25 05:46 PostSession
drwxr-xr-x  2 root root  4096  6月 25 05:46 PreSession
-rwxr-xr-x  1 root root  5536  5月 29 02:19 XKeepsCrashing
lrwxrwxrwx  1 root root    21  6月 25 05:46 Xsession -> ../X11/xinit/Xsession
-rw-r--r--  1 root root  2597  5月 29 02:19 custom.conf
-rw-r--r--  1 root root  4048  5月 29 02:19 locale.alias
drwxr-xr-x  2 root root  4096  6月 25 05:46 modules
-rw-r--r--  1 root root    71  5月 29 02:19 securitytokens.conf

★Ubuntu8.10
user01@ubuntu-ice:/etc/gdm$ ls -al
合計 132
drwxr-xr-x   7 root root  4096 2008-11-23 23:36 .
drwxr-xr-x 124 root root  4096 2008-11-24 09:50 ..
drwxr-xr-x   2 root root  4096 2008-11-24 09:24 Init
drwxr-xr-x   2 root root  4096 2008-10-30 08:07 PostLogin
drwxr-xr-x   2 root root  4096 2008-11-24 09:23 PostSession
drwxr-xr-x   2 root root  4096 2008-11-24 09:22 PreSession
-rwxr-xr-x   1 root root  4182 2008-10-15 18:56 XKeepsCrashing
-rwxr-xr-x   1 root root  6259 2008-10-15 18:53 Xsession
-rw-r--r--   1 root root   132 2008-10-23 22:40 failsafeBlacklist
-rwxr-xr-x   1 root root  8504 2008-10-23 22:40 failsafeDexconf
-rwxr-xr-x   1 root root  4582 2008-10-23 22:40 failsafeXServer
-rwxr-xr-x   1 root root  7443 2008-10-23 22:40 failsafeXinit
-rw-r--r--   1 root root 34161 2008-11-23 23:36 gdm.conf
-rw-r--r--   1 root root  2142 2008-10-15 18:56 gdm.conf-custom
-rw-r--r--   1 root root  3601 2008-10-15 18:56 gdmprefetchlist
-rw-r--r--   1 root root 10871 2008-10-15 18:53 locale.conf
drwxr-xr-x   2 root root  4096 2008-10-30 08:07 modules

CentOSに至ってはgdm.confというファイル名も廃止され、custom.confに変更されている。

CentOS5のgdmの設定 - CreNanの日記

これじゃどの設定ファイルか分かったもんじゃない。このgdm.conf(custom.conf)を編集するといろんな事ができそうなんだが、追っていくときりがないので省略。

[][][]Xサーバの設定 15:57 Xサーバの設定 - 今日も元気にlinux を含むブックマーク はてなブックマーク - Xサーバの設定 - 今日も元気にlinux Xサーバの設定 - 今日も元気にlinux のブックマークコメント

xdmやgnomeKDEはXクライアントでした。Xサーバの設定については

/etc/X11/xorg.conf

で行う。これはX.org X11の場合で、XFree86を導入しているディストリでは/etc/X11/XF86Configというファイルになる。

といってもメジャーなディストリはほぼ全てX.org X11みたいだが。

これも設定を一つずつ見ていくと大変なのでパス。

[][]リソースの設定 15:57 リソースの設定 - 今日も元気にlinux を含むブックマーク はてなブックマーク - リソースの設定 - 今日も元気にlinux リソースの設定 - 今日も元気にlinux のブックマークコメント

ウィンドウバーの色やフォントの種類をフォントの種類をコマンドラインから設定できますよ、というお話。システム管理ではあまり使わなさそうだし、デスクトップなら普通にGUIから設定するので尚更使わない。

教本には「/usr/lib/X11/以下にファイルがある」と書いてあるが、CentOSは/usr/share/X11/app-defaultsだし、Ubuntuは/etc/X11/app-defaultsだしでいろいろ場所が違う。取り合えずlocate app-defaultsして探すしかない。

[][][]コンピューター名の変更 15:57 コンピューター名の変更 - 今日も元気にlinux を含むブックマーク はてなブックマーク - コンピューター名の変更 - 今日も元気にlinux コンピューター名の変更 - 今日も元気にlinux のブックマークコメント

hostnameコマンドでコンピューター名の表示、hostname [コンピューター名]でコンピューター名の変更ができる。コンピューター名の変更には管理者権限が必要である。

ちなみにコンピューター名は

  • /etc/hostnameファイル (Debian)
  • /etc/sysconfig/networkファイル (Redhat)

に記載されており、PC起動時にこのファイルを読み込んでホスト名を決定しているようである。が、hostnameコマンドでコンピューター名を変更しhostnameコマンドで新しいコンピューター名を確認できるが、このファイルに即時反映されない。おそらく内部的に値をキャッシュし次回再起動時に反映するのだろう。が、その影響は再起動前から及んでおり、コンピューター名を変更した後sudoするとエラーメッセ−ジが表示される。

user01@ubuntu-ice:/etc$ sudo -i
sudo: unable to resolve host ubuntu-ice3
root@ubuntu-ice3:~# exit

Windowsでもコンピューター名を変更した後は再起動を求められるように、コンピューター名を変更すると各所に影響が出る。やはりコンピューター名の変更というのは簡単なものではなく、むやみに変えるものではない。変えたとしてもすぐに再起動するべきだ。

[][][]ネットワーク設定 15:58 ネットワーク設定 - 今日も元気にlinux を含むブックマーク はてなブックマーク - ネットワーク設定 - 今日も元気にlinux ネットワーク設定 - 今日も元気にlinux のブックマークコメント

ネットワーク設定は以下のファイル。

★Debian
/etc/network/interfaces

auto lo
iface lo inet loopback


★Redhat
/etc/sysconfig/network-scripts/ifcfg-eth0

# Intel Corporation 82557/8/9 [Ethernet Pro 100]
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=00:10:A4:A6:E5:4C
ONBOOT=yes
TYPE=Ethernet

上記はどちらもDHCP設定のもの。固定IPの場合は、その旨を設定ファイルに記載する。

Ubuntuはなぜかループバックアドレス・インターフェイスの設定しか記載されていないが、記載されていないデバイスはデフォルトでDHCPにでもなってくれるんだろう。

[][][]Linuxにおけるssh 15:58 Linuxにおけるssh - 今日も元気にlinux を含むブックマーク はてなブックマーク - Linuxにおけるssh - 今日も元気にlinux Linuxにおけるssh - 今日も元気にlinux のブックマークコメント

Linuxは特別な設定をしなくても、最初からssh使えて便利ですよ、というお話。

sshの設定ファイル

・sshサーバ
/etc/ssh/sshd_config

・sshクライアント
/etc/ssh/ssh_config

例えばsshd/configを設定することで、パスワード認証じゃなく鍵認証じゃなきゃだめ!とかに設定できます。

SSHの接続方法

ssh ユーザー名@接続先サーバ

2008-11-23

[][][]tmpfsってなんですか? 00:57 tmpfsってなんですか? - 今日も元気にlinux を含むブックマーク はてなブックマーク - tmpfsってなんですか? - 今日も元気にlinux tmpfsってなんですか? - 今日も元気にlinux のブックマークコメント

デバイスの話に関連して、tmpfsという面白い機能を勉強。

tmpfsというのは物理メモリ上に一定量のブロックファイルを作成し(デフォルトで物理メモリの半分)、それを任意のディレクトリマウントしてRAMディスクとして使用できる機能である。

例えば、メモリを3GB積んでるが普段はそんなに使わない。じゃあ、2GBをtmpfsとして/home/user01/chash/とかにマウントして、そこにキャッシュファイルや作業用ファイルなどを置こう。PCを落とすとデータが消えるので必要なら物理ディスク上にコピーしよう、って感じ。

tmpfsが/dev/shmをマウントしている件 - サーバー技術メモ

RAMディスクを作成しHDDへのアクセスを抑制する - ちりあくた

tmpfsってのはファイル名やディレクトリ名ではなくNTFSやFAT32のようなファイルシステム=「機能」として認識するのが正しい。

デフォルト設定

上記で書いたとおり、デフォルトでも物理メモリの半分は/dev/shmにtmpfsとして割り振られる。まぁ/dev以下にわざわざ作業ファイルを保管するのも不自然なので、/dev/shmへのマウントを解除して/tmpやら/home/user01/tmpやら/var/logやらにマウントし直す方が分かりやすいと思われる。それには/etc/fstabを編集し、PC起動時に自動的にtmpfsが働くようにしてやればよい。

tmpfs使うと物理メモリ削るの?

物理メモリの余りを利用して高速のRAMディスクを作る機能なので削ります。ただし削られるのはtmpfsとしてマウントされたディレクトリにファイルを置いたタイミングなので、マウントするだけならタダ。

tmpfs は本当に容量が動的なのか - naoyaのはてなダイアリー

CentOSUbuntuの設定の違い

CentOSは/etc/fstabにtmpfsをマウントする一文が書かれ、/etc/default/tmpfsに書かれている分だけ/dev/shmにマウントするみたいです。まぁデフォルト設定消さなくてもそこにファイルを置かない限りマウントしてないも同然なので気にしなくても問題ないと思いますが。

[][][][]killとkillallについて 21:50 killとkillallについて - 今日も元気にlinux を含むブックマーク はてなブックマーク - killとkillallについて - 今日も元気にlinux killとkillallについて - 今日も元気にlinux のブックマークコメント

killは引数としてプロセスIDを取り、killallは引数としてプロセス名やデーモンの名前を取る。killは1つのプロセスのみを殺すが、killallは名前どおり合致したプロセス名全てを殺す。

kill and killall

例えばテンポラリの対応でPC起動時に起動するプロセスをログオンしたタイミングで殺したい。こういう場合、殺すプロセス名は分かっていてもPIDは毎回変わるので指定できない。こういう時はkillallを使う。

引数がPIDか名前かでコマンド名が違うのが使い辛い。WINDOWSみたいにコマンド同じでオプションで変更できればいいのに。

[][][]sambaについて(プロセス管理) 21:50 sambaについて(プロセス管理) - 今日も元気にlinux を含むブックマーク はてなブックマーク - sambaについて(プロセス管理) - 今日も元気にlinux sambaについて(プロセス管理) - 今日も元気にlinux のブックマークコメント

sambaとはLINUXのファイル共有プログラムである。windowsで言うところのsmbってところかな…。ありゃプロトコルだけど。

基礎から学ぶWindowsネットワーク:第20回 ファイル共有プロトコルSMB/CIFS(その1) (1/3) - @IT

LINUXsambaの実行プログラムはnmbd(NetBIOSのネームサーバーデーモン)とsmbd(sambaサーバデーモン)である。

# whereis nmbd
nmbd: /usr/sbin/nmbd /usr/share/man/man8/nmbd.8.gz
# whereis smbd
smbd: /usr/sbin/smbd /usr/share/man/man8/smbd.8.gz

こいつらを常時起動でアクセス待ち受けでも良いのだが、ポートを監視してアクセスがあったときだけサービスを起動する、インターネット系スーパーサーバ"xinetd"を使うとメモリが節約できる。

xinetdの使い方

1./etc/servicesファイルの設定

これはxinetd用インデックスファイルみたいなもの。どのポートがどのサービスを受け持っているか定義する。といってもsambaインストール時に追記されている事がほとんどなので編集の必要はないことが多い。

netbios-ns 137/udp
netbios-ssn 139/tcp

2./etc/xinetd.d以下にファイル作成

先ほどのインデックスファイルから参照されるファイルを作成。

$ cat /etc/xinetd.d/netbios-ns
service netbios-ns
{
        disable = no
        socket_type = dgram
        protocol = udp
        wait = yes
        user = root
        server = /usr/sbin/nmbd
        only_from = 192.168.0
}

$ cat /etc/xinetd.d/netbios-ssn
service netbios-ssn
{
        disable = no
        socket_type = stream
        protocol = tcp
        wait = no
        user = root
        server = /usr/sbin/smbd
        only_from = 192.168.0
}

3.xinetdの再起動

スーパーサーバ再起動

/etc/init.d/xinetd restart

ちなみにこの時点では普通に起動したsambaプロセスが残ったままである。ので、killするかPC再起動。何もしていないときはsambaプロセスは起動していないが…

$ ps -aux | grep smb
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
user01   3322  0.0  0.2   4976   740 pts/1    R+   13:17   0:00 grep smb

手元のwindowsPCからアクセスに行くとsmbdプロセスが起動される。

[keisuke@eeco init.d]$ ps -aux | grep smb
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
user01   3354  2.1  1.3  14872  4444 ?        Ss   13:19   0:00 smbd
user01   3359  0.0  0.2   4980   752 pts/1    R+   13:19   0:00 grep smb

余談:chkconfig smb offするとどうなるか?

普通にxinetdで機能します。chkconfigで操作できるのは起動時にどうするかの設定であって、起動してからxinetd経由で起動するsmbにはノータッチ。


[]忘れっぽいのでもう一度各種設定確認ファイル 21:50 忘れっぽいのでもう一度各種設定確認ファイル - 今日も元気にlinux を含むブックマーク はてなブックマーク - 忘れっぽいのでもう一度各種設定確認ファイル - 今日も元気にlinux 忘れっぽいのでもう一度各種設定確認ファイル - 今日も元気にlinux のブックマークコメント

CPU/ディスク情報確認 /proc/cpuinfo /proc/devices

ディスク容量確認 df -h du-sm

ネットワーク全般 /etc/sysconfig/network

IPアドレス設定 /etc/sysconfig/network-scripts

サービス設定確認(各ランレベルでの設定) chkconfig --list

サービス設定確認(現在の状況) service --status-all

サービス設定 chkconfig [サービス名] on/off/reset

サービスONOFF service [サービス名] start/stop/restart

[][]sambaの設定(ユーザー・共有管理) 21:50 sambaの設定(ユーザー・共有管理) - 今日も元気にlinux を含むブックマーク はてなブックマーク - sambaの設定(ユーザー・共有管理) - 今日も元気にlinux sambaの設定(ユーザー・共有管理) - 今日も元気にlinux のブックマークコメント

sambaを使うにはOSのユーザーと別途ユーザー登録をする必要がある。コマンドは"smbpasswd"を使う。passwdのsamba版みたいなもん。ここでWindows(というかアクセス元PC)と同じユーザー名・パスワードを設定すると、samba共有にアクセスするときいちいちユーザー名・パスワードを入力しなくて良いので便利。

samba自体の詳しい設定は/etc/samba/smb.confをいじる。まぁここらへんは詳しく追い出すときりがないので省略。文法ミスがないかのチェックにtestparmを使う。

# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[public]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions

LinuxからWindowsの共有ファイルをマウント

Windows上のファイルにLinuxからアクセスするには

Windows上のファイルにLinuxからアクセスするには(mount.cifs編) − @IT

LinuxからWindows共有がかかっているディレクトリマウントするにはsmbmountかcifsを使用する。ちなみにファイルシステム"smbfs"としてマウントする時は、smbmountコマンドとmount -t smbfsの2つが使えるが、cifsはmountコマンドのみである。といってもmountに統一してくれた方がやりやすくていい。

smbmount //192.168.1.101/share/ /home/user01/tmp
mount -t smbfs (-o user=user01) //192.168.1.101/share /home/user01/tmp
mount -t cifs (-o user=user01) //192.168.1.101/share /home/user01/tmp

※括弧でくくってあるが、userは実質必須。

CentOS5ではsmbfsが廃止されcifsを使うようになっているので、smbfsは今後なくなっていくんじゃないかなぁ。

SMBとCIFSの違いはこちら。

基礎から学ぶWindowsネットワーク:第20回 ファイル共有プロトコルSMB/CIFS(その1) (1/3) - @IT

SMBの方がNetBIOSを使用した比較的古い共有プロトコル。CIFSはTCP/IPオンリーの新しめの共有プロトコル

ちなみにnfs

LINUXの伝統的なファイル共有にNFSというのがあるのだが、さまざまなOSが混在する今では今ではあまり使われなくなったらしい。ただし試験には出る。

[][][][][]ユーザー管理 21:50 ユーザー管理 - 今日も元気にlinux を含むブックマーク はてなブックマーク - ユーザー管理 - 今日も元気にlinux ユーザー管理 - 今日も元気にlinux のブックマークコメント

[][][]シェルの変更 21:50 シェルの変更 - 今日も元気にlinux を含むブックマーク はてなブックマーク - シェルの変更 - 今日も元気にlinux シェルの変更 - 今日も元気にlinux のブックマークコメント

chshコマンドあるいはusermod -sでシェルの変更ができる。

chsh ←自分のログインシェルを変更
chsh -l ←ログインシェルに指定可能なリストを確認(Redhat系)

指定可能なシェル一覧は/etc/shellsファイルに記載してある。これ以外のシェルも指定可能だが、パスを待ちがうと次回ログイン時にシェルを起動できなくなるので注意。


[][]Ubunturootについて 21:50 Ubuntuのrootについて - 今日も元気にlinux を含むブックマーク はてなブックマーク - Ubuntuのrootについて - 今日も元気にlinux Ubuntuのrootについて - 今日も元気にlinux のブックマークコメント

Ubuntuでは普通にsu - としてrootになろうとしても無理。なぜならrootパスワードが設定されておらずログインできないから。su -と同じ事をするにはsudo -iでOK。

sudoの設定とか - 今日も元気にlinux - mylinuxグループ

Ubuntu には root のパスワードがない。 : tnomuraのブログ

ところでUbuntuでvisudoするとエディタemacs風味なのが使いにくいんだが、なんとかならんものか…。

[][]bashの動きについて 21:50 bashの動きについて - 今日も元気にlinux を含むブックマーク はてなブックマーク - bashの動きについて - 今日も元気にlinux bashの動きについて - 今日も元気にlinux のブックマークコメント

ログイン字は以下の順番でbashの定義ファイルが読み込まれる。

  1. /etc/profile
  2. ~/.bash_profile # シェルオプションを指定
  3. ~/.bashrc # エイリアスやユーザー関数を指定
  4. /etc/bashrc

この4つはどれもほどほどに重要。

シェルオプションについて

環境変数bash内限定版。

set -o # オプションを一覧表示
set -o オプション # オプションを有効にする
set +o オプション # オプションを無効にする

set -o ignoreeof

→Ctrl+Dでのログアウトができなくなる。

set -o xtrace(set -xも同等)

エイリアスで実行しても、実コマンドが表示される。

ユーザー関数について

~/.bashrc内にfunctionを記載し、シェルで使えるようにする。

function lm ()
{
  ls -l $* | more
}

vbモジュールを最初に読み込んで、ターミナル内で環境変数として設定。そのセッション終了まで使えるようにするのと同じ。

デフォルトの定義ファイルについて

/etc/skelというディレクトリに存在する。新しくユーザーを作成した際にはここのファイルが新しいユーザーのホームディレクトリにコピーされる。まぁWindowsでいうDocuments and Settings\All users以下のファイルみたいなもの。

ufjjkcagniufjjkcagni2014/06/24 10:57ipdyanzmjovy, <a href="http://www.kmiaejnjsa.com/">shnnpeuoli</a> , [url=http://www.zrvjpvlmxr.com/]btyvgtylvw[/url], http://www.pgbhbonjyn.com/ shnnpeuoli

2008-11-22

[][]vimを本気で使ってみる 11:10 vimを本気で使ってみる - 今日も元気にlinux を含むブックマーク はてなブックマーク - vimを本気で使ってみる - 今日も元気にlinux vimを本気で使ってみる - 今日も元気にlinux のブックマークコメント

Vim講座1 - think and errorに触発されて、本気でvimキーバインドを覚えて用と思った。

vimtutorでお勉強

ただ「覚える」だけではすぐに忘れる。練習問題で体に覚えこませるのが重要。

# vimtutor

を実行するとvimチュートリアルテキストが起動する。これで良く使うvimコマンドは勉強できる。これを作った人には本当に感謝したい。対機械ばかりに目が行きがちなプログラマーの中で、対人間を意識したチュートリアルを作れる人は尊敬する。

一度やっただけでは"身に"つかない。毎日繰り返し1週間くらいやればOKかなぁ。

vimperatorで普段からvim

Firefoxアドオンのvimperatorを使うと、Webブラウジングvimキーバインドで行える。vimと操作が被ってないところもあるが、毎日vimを使うって意味ではちょうどいい。Ubiquityよりは普段使いできそう。


Emacsとの違い

伝統的に

  • vi→設定ファイルなど簡単なテキストファイルを編集するためのもの。軽い。
  • Emacsプログラムなど複雑なテキストを書くためのもの。重い。

ということになっている。もっとも今では両者が歩みつつあるらしいが、システム定義ファイルをいじるのはvi方式で行う場合が多い(visudoコマンドなど)。なのでシステム管理者はviプログラマEmacsを覚えるといいだろう。

fvkaclfvkacl2011/02/18 03:21r8XH5v <a href="http://xfkjtlcsjvke.com/">xfkjtlcsjvke</a>, [url=http://mmufzratdmlh.com/]mmufzratdmlh[/url], [link=http://loazykhwqrcp.com/]loazykhwqrcp[/link], http://mdxkvuedhchh.com/

GibbyGibby2012/06/09 07:25At last! Someone with the insight to solve the prbolem!

arawnnlcdarawnnlcd2012/06/10 01:171WrJ4u <a href="http://evjraqhiuxqe.com/">evjraqhiuxqe</a>

nrjcicfnrjcicf2012/06/11 08:18DEjzWb , [url=http://srdnbsrtmfrs.com/]srdnbsrtmfrs[/url], [link=http://eraurqklnedv.com/]eraurqklnedv[/link], http://rpmtjnhrlnva.com/

yfhwcthxnzyfhwcthxnz2012/06/12 09:00tlcekl <a href="http://hqznzwwrtobp.com/">hqznzwwrtobp</a>

viywucqutviywucqut2012/06/13 14:26NtJ6S9 , [url=http://pckpcyrsrsdb.com/]pckpcyrsrsdb[/url], [link=http://vqnbcnfvfwwy.com/]vqnbcnfvfwwy[/link], http://ghctkubwhwez.com/