2009年09月21日

ファイルサーバーを作ってみる(9 勉強会)

文字ばっかりですがく〜(落胆した顔)


sudo :

 sudoって一般ユーザ(今回はjet)が、管理者としてコマンドを実行するためのコマンドです。


 今回多用してるけど、

 それは、ファイルサーバー構築はコンピュータにかなり影響を与える作業だから。

 管理者でしか行えないようになってます。


 ちなみに、後で作った一般ユーザ(今回はstar)は、

 starでログインした後、sudoしようとすると、出来ません。

 "star is not in the sudoers file なんちゃら"

 と注意されます。

 
 もし、starもsudoできるようにする場合、

 ubuntuでは、adminグループに所属してる必要があります。


 必要ないですが、一度設定してみます。


 /etc/group ファイルを編集しますが、

 管理者で変更するので、sudo出来るjetユーザで作業します。


 jet@jet-desktop:~$ sudo vi /etc/group
 (それか、$ gksu gedit vi /etc/group 等)

 adminの行を探すと、

 admin:x:121:jet という行があるので下のように編集します。

 admin:x:121:jet,star

 これを保存したら、starでsudoできます。


 まず、starとしてログインします。

 jet@jet-desktop:~$ sudo su - star

 で、sudoが必要なコマンドを実行してみます。

 star@jet-desktop:~$ sudo sysv-rc-conf

 ちゃんとsudoできて表示されます。(ちなみに、qキーで終了)

 
 ところで、なんでsudoにはadminグループになる必要があるって知ってるのかは、

 /etc/sudoersというsudo設定ファイルの中身を見たからです。

 ちなみに、sudo visudoというコマンドでこのファイル開けたりします。


 このファイルの下の方に、adminって。

 他のLinuxだと、adminじゃなくwheelとか多い。


 とりあえず、starのadminを元に戻して消しましょ。

 みんなが管理者になれるのは、セキュリティ的によくなさそ。

 ※jetまで消さないこと。消すと誰もsudo出来なくなる!





apt-get install パッケージ名:

 ubuntuのマウス操作のアップデート・マネジャー同じデータベース使ってます。

 キーボードからでも操作できると楽な時も多いので、補足。

 インストールは $ apt-get install パッケージ名

 パッケージ名からネットを通じてダウンロードしてインストールしてくれるツールです。

 パッケージが他のパッケージを利用してる場合、

 そのパッケージもついでに拾ってくれます。(依存関係の解消)

 ただ、既に自分でネットから取得したりした、

 手元にあるパッケージ(debファイル)をインストールする場合、

 dpkg -i debファイル

 とします。
 
 dpkgは、依存関係は見ないので、まあ少し注意。

 また、インストールしたのはいいけど、/usrに実行ファイルとか、

 /etc/に設定ファイルとか、どこにいれたんだよ!

 ってときには、

 dpkg -L パッケージ名 でインストールファイルがわかります。

 



apt-get remove パッケージ名:

 パッケージ名を削除します。




apt-cache policy パッケージ名:

 パッケージが既にインストール済みかどうかチェックできます。




apt-cache search キーワード :

 インストールしたいけど、ちゃんとしたパッケージ名忘れた!

 ってときはこれ。検索します。インストールしてないものも。




あと、
apt-get update : ネットからパソコンへデータベース情報を更新
 apt系コマンドを使う時は、まずこれをすべき。
apt-get upgrade : データベース情報からインストールパッケージを最新に更新
apt-get dist-upgrade:システム基幹のカーネル系を最新に。


 基本的にapt系は、インストールしてるしてないに関わらず、

 パッケージのデータベース情報を参照するってことを念頭に置けばOKです。




Windows側のチップ:


Windowsのエクスプローラって、

一度、jetとして共有ディレクトリにアクセスすると、

しばらく、他のユーザ(star)で入ることができません。


そういうときは、DOSプロンプトで、

net use x: \\jet-desktop\star /user:star

とすれば、ドライブXとしてアクセス出来きます。

覚えづらいので、

net use /?

でヘルプからコマンド作成できるようにしたら簡単。



 
posted by ひでまる at 00:00| 京都 ☁| Comment(0) | ファイルサーバ構築 | このブログの読者になる | 更新情報をチェックする

2009年09月20日

ファイルサーバーを作ってみる(8)

前回、VirtualBox内で起動したゲストOSであるubuntuのsamba設定が終りました。


さて、ホストOSであるWindowsXPからubuntuへアクセスします。



アクセスの仕方は色々ありますが、


一般的なのは、Windowsのエクスプローラーを開いて、

mynetwork.PNG

左側のツリー内から、

「マイネットワーク」→「ネットワーク全体」

  →「Microsoft Windows Network」→「Mshome」

  →「jet-desktopなんちゃら」

とクリックしていけばOK。



たまに、「ネットワーク全体」が表示されない現象が起こるけど、


その場合なら、

filename.PNG

「スタート」ボタンから「ファイル名を指定して実行」で

\\jet-desktop

と入力すればOK。



でも、毎回こんなことするのはいやなので、

Windowsのバッチスクリプト作ります。


ファイル名「fileserver.bat」 fileserver.batのダウンロード用リンク
(以下、jetのところは、各自のコンピュータ名またはユーザ名を指定して)
--------------------------------
@echo off
vol y:
if errorlevel 1 (
echo publicフォルダのパスを作成します。
net use y: \\jet-desktop\public /user:jet
)
vol z:
if errorlevel 1 (
echo 個人フォルダのパスを作成します。
net use z: \\jet-desktop\jet /user:jet
)
Explorer.exe /e,z:

---------------------------------

batfile.PNG

これを保存して、ダブルクリックすると、

ドライブYにpublic、ドライブZに個人用ディレクトリとしてすぐアクセス。


完成です!


おちかれ〜でした〜手(チョキ)ビール


次回、こまごまと、便利ツールや基礎知識まとめにします。




posted by ひでまる at 00:00| 京都 ☀| Comment(0) | ファイルサーバ構築 | このブログの読者になる | 更新情報をチェックする

2009年09月19日

ファイルサーバーを作ってみる(7)

前回、共有ディレクトリを作成したので、

sambaの設定へ移ります。


まず、sambaにもユーザとパスワード登録の必要がある。

ubuntuと同じパスワードを設定するのが正解らしい。

jet@jet-desktop:~$ sudo smbpasswd -a jet

-a は必ず要ります。 addの略かな。




えーと、

ユーザjetだけでは、、って感じなので、ユーザstarを新規作成します。

まず、ubuntuに新規登録。

jet@jet-desktop:~$ sudo adduser star

次に、sambaにも同じく登録。

jet@jet-desktop:~$ sudo smbpasswd -a star

確認で、

jet@jet-desktop:~$ ls /home/star/

ってすると、前回、/etc/skel/に作ったsambaディレクトリがコピーされてます。




とうとう、大詰め。

sambaの設定ファイルを触ります。

/etc/samba/smb.conf を編集します。

その前に、バックアップとります。

jet@jet-desktop:/etc/samba$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.org

(長げ! いえ、TABキーで文字補完すれば大したことなし)


エディタは私はviを使用します。

jet@jet-desktop:/etc/samba$ sudo vi /etc/samba/smb.conf

windows感覚で使いたい人は、

jet@jet-desktop:/etc/samba$ gksu gedit /etc/samba/smb.conf

て感じかな。



少々量が多い。後半丸ごと載せとこ。

凄そうなこと書いてますが、

こちらの「Windowsファイルサーバー構築(Samba)」さんを参考にしました。(ありがとわーい(嬉しい顔)

ただ、ちょっとだけアレンジはしてます。




[global]セクション追加行

unix charset = UTF-8
dos charset = CP932
display charset = UTF-8

disable spoolss = yes



[global]セクション変更行

workgroup = MSHOME


[homes]セクション全体変更

[homes]
comment = Home Directories
path = %H/samba
browseable = no
writable = yes
vfs objects = recycle
recycle:repository = .recycle
recycle:keeptree = no
recycle:versions = yes
recycle:touch = no
recycle:maxsize = 0
recycle:exclude = *.tmp ~$*


[public]セクション全体追加([homes]セクションの続きでOK)

[public]
comment = Public Stuff
path = /home/samba
public = yes
writable = yes
only guest = yes
vfs objects = recycle
recycle:repository = .recycle
recycle:versions = yes
recycle:touch = no
recycle:maxsize = 0
recycle:exclude = *.tmp ~$*




smb.conf完全版は、こちら。
(ただし、Ubuntu9.04[kern:2.6.28-15]、samba: 2:3.3.2-1)
smb.conf




ちなみに、vfs objects = recycleって行からは、

共有ディレクトリのゴミ箱設定。

ゴミ箱にずっと溜まっては困るから、一週間毎に削除します。

(って、これも上の参考サイトのまんまパクリちっ(怒った顔)


以下、cron(クーロン)という一定期間毎に実行する機能を使います。

一応、今のランレベルでcronが自動起動してるかsysv-rc-confで調べましょう。

jet@jet-desktop:~$ sudo sudo sysv-rc-conf

runlevelcron.PNG

OK、チェック入ってる。


じゃ、ファイルを一週間毎に実行するディレクトリに、

ファイルを新規作成します。

jet@jet-desktop:~$ sudo vi /etc/cron.weekly/recyclewatch

-------------------------------------
#!/bin/bash
for user in `ls /home/`
do
if [ -d /home/$user/.recycle ]; then
tmpwatch -f 720 /home/$user/.recycle/
fi
done
-------------------------------------

(tmpwatchコマンドは一定期間でファイル等を削除。720は720時間(30日))



変更を保存したら、sambaの再起動です。

jet@jet-desktop:/etc/samba$ sudo /etc/init.d/samba restart


これで、ubuntu側の設定完了!!ビール


次回、Windowsからアクセスしてみます!


posted by ひでまる at 00:00| 京都 ☁| Comment(0) | ファイルサーバ構築 | このブログの読者になる | 更新情報をチェックする

2009年09月18日

ファイルサーバーを作ってみる(6)

前回で、基本設定は終ったみたいなので、

ファイルサーバーを作りにかかります。



ubuntuの「アプリケーション」>「アクセサリ」>「端末」起動して、

sambaをインストールする。

jet@jet-desktop:~$ sudo apt-get install samba


sambaって、その世界では有名なファイルサーバーのソフトの名前なんです。



しばらくして、インストール出来たみたい。

* Starting Samba daemons [ OK ]

って画面にでました。


デーモンとして、もう常駐してるみたいです。



ubuntuを再起動しても起動してくれるのか、調べたい。


まず、ランレベル調査。(ランレベル:一人用とか複数人数用等々の起動レベル)

jet@jet-desktop:~$ runlevel
N 2

2でした。


他のLinuxでは、ランレベル毎のスタートアップ起動を

chkconfigってコマンドで見るのだが、

ubuntuは、chkconfigコマンドがない!


うぅ。調べた。。

こうするらしい。


まず、インストール。(なぜ最初から入れないの?)

jet@jet-desktop:~$ sudo apt-get -y install sysv-rc-conf

実行します。
jet@jet-desktop:~$ sudo sysv-rc-conf

runlevel.PNG

OK。起動指定されてました。"q"キーで終了。



じゃあ、

ファイルサーバーの共有ディレクトリの構成を決めます。


誰でも書き込める、パブリックなディレクトリを

 /home/samba

各ユーザー毎のディレクトリを

 /home/ユーザ名/samba

にすることにしましょ。




じゃ、パブリックなディレクトリ作成。

jet@jet-desktop:~$ sudo mkdir /home/samba


誰でも読み書きしたいので、所有者とグループをsambaに設定します。

sambaのパブリックな動作の時は、

ユーザ:nobody、グループ:nogroup

だそうなので、

jet@jet-desktop:~$ sudo chown nobody:nogroup /home/samba/




次に、ユーザjetのディレクトリ作りましょ。

jet@jet-desktop:~$ mkdir ~/samba

権限は、jetはjetなので、特に何もしない。




以後、ユーザ増やしたとき、/home/ユーザ名/samba

と、勝手に作ってほしいので、/etc/skel/の中にsambaディレクトリ作成。

jet@jet-desktop:~$ sudo mkdir /etc/skel/samba

この/etc/skel/の中に入れたものは、以後ホームディレクトが作成されたとき作成されます。




これで、ディレクトリ設定終ったんじゃない?

ヨシ!


posted by ひでまる at 00:00| 京都 ☁| Comment(0) | ファイルサーバ構築 | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は180日以上新しい記事の投稿がないブログに表示されております。