zoukankan      html  css  js  c++  java
  • linux服务器的所有服务web/dns/dhcp/vsftp-nfs-samba的配置

    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的共享文件夹的思想和步骤方法是一样的

    1. 这些服务大多 通常是 c/s 模式( web服务是b/s模式) , 先是在服务器上配置好相应的服务, 然后在 客户端通过对应的客户端软件(如browser, xshell, ftp, telnet等)来访问.
    2. 要知道, linux上的几乎所有的服务(服务器/服务器软件)都是命令行的(配置是基于各种conf文件的), 基本上,你是看不到 服务的 X 图形界面的. 但是,只有win的服务(服务软件程序) 才会有图形界面. 比如 win server 200?这的各种服务器的配置就是用 "向导wizard"图形界面来配置的.
    3. 而且lin上的服务所对应的 client 也几乎是 命令行的.
    4. 使用 nfs, 首先在服务器上配置好 nfs服务并启动nfs服务. 然后, 在客户端机器上直接mount 就行了, 如同 共享win上的文件夹一样, 只不过使用的 -t类型不同而已: mount -t nfs -o 10.1.1.1:/share /mnt/share 注意这里的格式是: 主机的ip:(冒号)加共享目录

    关于linux这的mount?

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

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

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

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

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

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

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

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

    linux的 kernel.org 决定关闭 ftp?

    docker是什么?
    http://archive.kernel.org/centos-vault/6.5/isos/

    spot是点, 污点...


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

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

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

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

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

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

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

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

    8. 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 的格式 说明, 下面这段话可能是最重要的了, 解决了很久的疑问? 1. 也就是说, 一个entry 可以有 多行记录说明文字 来 描述它... 1. 任何一个区域文件, 都必须要有这么一条 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服务器的 步骤:

    1. 配置 named.conf
    2. 生成 named.ca
    3. 配置 rndc.conf
    4. 截取 rndc.conf的尾部内容 添加到 named.conf中
    5. 依次启动named 和 rndc服务
      最后 测试即可..

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

  • 相关阅读:
    [转载]qemu-kvm安装配置
    Hadoop通过c语言API访问hdfs
    hadoop和hdfs环境搭建
    OpenCV installation for Ubuntu 12.04
    homework-01
    linux命令2
    压缩tar
    anaconda 安装opencv
    anconda安装第三方库
    开源代码
  • 原文地址:https://www.cnblogs.com/bkylee/p/8185400.html
Copyright © 2011-2022 走看看