您的位置:首页 > 运维架构 > Linux

linux服务器的所有服务web/dns/dhcp/vsftp-nfs-samba的配置

2018-01-03 20:01 691 查看
nfs是sun开发的 network filesystem 网络文件系统,相当于win的映射网络驱动器, 可以将一台nfs服务器上的目录“挂载”到本地机器上的 一个 本地目录 一样的操作。

nfs的配置文件是: /etc/exports ['eksp2rt] 输出, 出口

vi /etc/exports: /home/dir_to_exported clients_nfs (rw, sync等共享选项)

实际上nfs共享的配置和使用 跟 使用smbclient 或mount 来使 linux共享windows的共享文件夹的思想和步骤方法是一样的

这些服务大多 通常是 c/s 模式( web服务是b/s模式) , 先是在服务器上配置好相应的服务, 然后在 客户端通过对应的客户端软件(如browser, xshell, ftp, telnet等)来访问.

要知道, linux上的几乎所有的服务(服务器/服务器软件)都是命令行的(配置是基于各种conf文件的), 基本上,你是看不到 服务的 X 图形界面的. 但是,只有win的服务(服务软件程序) 才会有图形界面. 比如 win server 200?这的各种服务器的配置就是用 "向导wizard"图形界面来配置的.

而且lin上的服务所对应的 client 也几乎是 命令行的.

使用 nfs, 首先在服务器上配置好 nfs服务并启动nfs服务. 然后, 在客户端机器上直接mount 就行了, 如同 共享win上的文件夹一样, 只不过使用的 -t类型不同而已:
mount -t nfs -o  10.1.1.1:/share  /mnt/share
注意这里的格式是: 主机的ip:(冒号)加共享目录

关于linux这的mount?

mount的意思是挂载、装载: 它相当于一个容器container, 将另一个目录的内容 “挂载、装载load”到当前目录中来, 也就是相当于 你买菜的时候, 你提了一个篮子, 把其他地方的菜 mount 、load装到你的篮子里面来。 但是这个时候, mount只是临时的, 你的篮子还是篮子,或者说, 你的mount的目标目录比如常用的 /mnt/share还是原来的样子, 被mount的内容(并不会永久)的属于这个目录。 只是临时性的。

或者说, 你用汽车 来 装载货物(叫 mount), 汽车卸载货物叫 umount。

mnt就是mount的意思, 它提供的目的, 就是装载其他临时性的东西。 所以, 以后凡是要装载、临时挂载的内容都应该挂载到这个目录下

umount 的意思, 仅仅是 把原来装载的内容 拿出来 而已, 比如上面的例子, 把菜从篮子里拿出来, 把货物从汽车上卸下来, 对原来的篮子和汽车并没有什么影响, 篮子还是篮子, 汽车还是汽车。所以,理解mount和umount(是u-mount,不是un-mount),就把他当做是装东西和拿东西出来。

为什么操作目录umount的时候, 会提示 directory is busy?

这是因为当年在某个目录下, 当前目录下, 去对目录做破坏性操作,如: mv,rm, umount的时候,都会提示你busy,如图在win中当年打开了一个doc文档你又要删除它的时候, 也会提示你文档正在使用不可被删除,这时只要你 退出当前目录就可以操作了

showmount命令, 应该是针对 “共享出 文件夹”的 nfs服务器 而言的, 是查看当前nfs服务器上的 有哪些共享出来的目录,有哪些连接上来的nfs客户端?

在linux中, 除了文件和目录有属主和所属组外, 任何一个服务, “同样有属主和组”, 也就是说, 服务都是对应着一个 运行这个服务的用户和组。只有这个用户和组(至少是权限高于这个用户的其他用户和组)才能运行这个服务! 比如httpd服务,就是以 apache :apache 的用户和组的身份来运行的, mysql是以mysql:mysql用户和组的身份 来运行的。 因此对于某个资源(文件和目录), 要想某个服务能够正常访问、正常使用它的话, 最好是将这个资源修改成属于这个用户和对应的组。比如:

nfs服务是以 nfsnobody用户来运行的, 所以, 可以将 要共享的目录 :/home/nfs 设置成 :
chown -R  nfsnobody:nfsnobody /home/nfs
这个正是要吸取以往的apache httpd 服务使用中的教训

1. nfs服务只能是, 只是针对 linux主机, 对win 主机不适用!

lease: li:s , 租约, 租借, 租期。

linux的
kernel.org
决定关闭 ftp?

Linux 内核官网 kernel.org 宣布将在 3 月 1 日关闭 FTP 服务器 ftp.kernel.org,12 月 1 日关闭 mirrors.kernel.org。 kernel.org 解释了关闭 FTP 服务器的理由:FTP 协议是低效的,需要向防火墙和负载均衡守护进程添加复杂的程序;FTP 服务器不支持缓存和加速器,严重影响性能;绝大数 FTP 协议的软件实现已经陷入停滞,很少更新


docker是什么?

http://archive.kernel.org/centos-vault/6.5/isos/

spot是点, 污点...

dns相关的软件, 很多, 不只是 bind, 还有比如: openDNS, Google Public DNS 等.

linux中的var 目录, 有一个专门的名字, 叫做: 工作目录, 比如: apache的工作目录, 是 /var/www, named的工作目录是 : /var/named

caching-nameserver是一个 配置 named的主配置文件, 和 区域文件zone的 模板, 便于正确的配置 其他区域文件.

dns中的RR: resuorce record 叫做 "资源记录" 参考:
http://www.233.com/soft/chuji/wg/20070910/13404165-3.html


dns中以点号 . 结尾的名称 叫做 FQDN, 必须加上点号, 如果不加点号. 那么完全域名就还要加上 当前的域名 在后面...

SOA也是一条记录, 只不过它的 RR叫 SOA而已, SOA记录 的描述属性包括:
授权主机   管理者信箱(可以省略后面的 @域名, 比如直接写 root, 当然也可以写成:  root.localhost.  )   (几个数字 值...) 比如常见的设置值是: ( 1 3H 15M 1W 1D )


dns主配置文件中的 @ORIGIN 意思是: 以下记录的 来源. 来自何处, 来自 localhost.

dns的每一条记录, 都可以单独的说明他的 TTL, 比如: 1W, 1D, 1H, 1M 等等. 这个时间 要放在 "IN" 关键字的前面

dns记录的格式: "对象" [TTL时间] IN "资源类型RR" "资源的属性描述" 其中的 "对象 " 可以省略.

dns区域配置文件中 的 点号. 表示的是 : 就是当前的 zone 区域的名称?? 而 @ 表示的是 当前区域 中的 当前机器, 也就是说: 点号
.
表示的是 当前区域名称, 是一个区域. 而@ 表示的是一个 主机/一个主机的地址/一个主机/一台机器 的FQDN (FQDN 针对的, 说的 是 一个主机 ,一台机器! 不是一个区域)

第二行是一個 ORIGIN 設定﹐說明下面的記錄源出何處(這裡是源出 localhost. 的記錄)。請您加倍留意最後的一個小數點“ .”﹐少了它或多了它﹐記錄名稱完全不一樣﹗在 DNS 記錄中﹐我們稱這樣以小數點結尾的名稱為“ 全域名稱 ”即 FQDN ( Fully Qualified Domain Name ) 。

如果缺少了這個點會怎樣呢﹖就會將所屬的 ORIGIN ( @ ) 附加在記錄名稱後面﹔而這 ORIGIN 就是上一個 $ORIGIN 宣告之後的名稱﹐如果在前面找不到 $ORIGIN 宣告﹐那就以 /etc/named.conf 中定義的 zone 名稱為基準。 **(由此, 就可以知道 点号 真的就是 当前区域 的名称). **

以目前的例子來說﹐如果沒有這個小數點的話﹐“localhost”會變成“localhost.localhost”﹔但如果有小數點的話“localhost.”就只能是“localhost.”。所以﹐這個小點“.”非常重要﹐在以後設定中一定要非常留神﹗﹗

@1D IN SOA @ root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum


关于dns区域文件中的 记录项 item / entry 的格式 说明, 下面这段话可能是最重要的了, 解决了很久的疑问?

也就是说, 一个entry 可以有 多行记录说明文字 来 描述它...

任何一个区域文件, 都必须要有这么一条 entry
@  IN SOA @  root (0  2H 15M 1W 1D)  NS @
来申明这个区域文件的 授权 属性.

Tips﹕請注意﹕SOA 記錄中這對 “ ( ) ”符號之第一個 “ (”括號一定要和 SOA 寫在同一行﹐而不能用 Enter 斷行到下一行去(有時候您在書本的範例中看到這個符號排在下一行去了﹐那是因為版面的關係而已)﹐而且其左邊最好有一個空白鍵或 tab 建。而最後一個 “ )”括號也不能寫在註解符號 “ ﹔”的右邊。

設定 DNS 的 RR 記錄檔﹐其格式要求非常嚴格﹐我們絲毫不能掉以輕心。比方說﹕如果句子不是以空白鍵﹑Tab 鍵﹑ 或註解符號 ( ; )開頭﹐也不在 SOA 的 “ ( ) ”之內﹐ 則表示要定義一個“新記錄項 (Entry) ”﹔如果句子是以空白鍵或 tab 鍵開始的話﹐其設定被視為上一個“記錄項”的內容。所以﹐如果您要為“同一個記錄項”定義多個記錄設定﹐而不想重複打字﹐您倒可以偷懶﹕在接著它的後面幾行用空白或 Tab 來縮排就可以了。所以﹐最後這兩行還是關於 localhost. 的設定﹐因為上一個“資料項”為 “ @ ”﹐也就是 localhost. 。當然﹐您如不喜歡﹐這兩行句子也可以這樣寫﹕

;; 修改前﹕
1D IN NS @
1D IN A 127.0.0.1

;; 修改後﹕
@1D IN NS @
@1D IN A 127.0.0.1

;; 或﹕
localhost.1D IN NS localhost.
localhost.1D IN A 127.0.0.1

這兩行的意思是說﹕負責 localhost. 這個記錄的 name server ( NS ) 是 localhost. 這台機器﹔而 localhost. 的 IP Address ( A ) 是 127.0.0.1 。DNS 裡面的 A 記錄應該是最常見的記錄類型之一﹐如果在 IPv6 版本中﹐位址記錄名稱則改為 AAAA 。


了解一些常用的 短选项的含义, 比如: -k 经常可能有两个意思: 一个是 kill, 另一个可能是 keep ; -d 可能有两个各意思: 一是 dump ; 二是 decompress 或data..

比如: 在 常用 的打包和 压缩软件中 tar:

tar

-c是压缩.

-d 是解压 : decompress (或 -x)

-k --keep-old-files (就是要保持原来 的旧的 文件, 因为tar -x等的时候, 通常会做 replace, 即把原来的文件给 删除)

-z, -j, -J 则是 tar 在 打包的时候, 用来 through archive的 附加工具, 比如: -z 就是 --gzip, -j就是 --bz2, -J 就是 --xz. 压缩工具 很多, 比如还有: lunzip, lzip等等.

xz是什么?

xz是linux自带的 压缩工具, 其压缩率比7z还高, 只是它的压缩时间较长. 它的 压缩选项是 -z, 解压选项是 -x.

以前的 .tar.xz 文件, 由于 tar 不支持 xz过滤, 所以 要分两步, 现在的tar, 升级后, 也直接支持 xz过滤了, 直接用 -J就可以了 : filter archive through xz(gzip 等).

nfs软件包的名称叫 nfs-utils-版本号, 下载地址: pkgs.fedoraproject.org/repo/pkgs/nfs-utils/

自编译安装的软件, 你可以自定义 --prefix, 有很多种风格, 有的是 直接在 /usr/下创建包目录, 如: --prefix=/usr/named, 而有的是 放在 /usr/local中, 我觉得即使目录深一点, 为了整个目录的干净, 可以放在 /usr/local/软件包的名称目录 比如: /usr/local//named/

more命令能够显示 行号吗?

不能

但是more也有几个参数

-n 是说每一屏显示多少行

+n 则是指从第几行开始显示

+/patter 是说 从 匹配的 那一行 (之前的前两行 , 要多显示 两行...)开始 显示后面的所有内容.

========================

总结: 安装dns服务器的 步骤:

配置 named.conf

生成 named.ca

配置 rndc.conf

截取 rndc.conf的尾部内容 添加到 named.conf中

依次启动named 和 rndc服务

最后 测试即可..

============================================

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: