Linux知识点全面总结

目录

第1章 Linux概述

1.1 了解LINX版本和国内版本

第3章 Linux的桌面管理

3.1 gedit文本编辑器

第4章 Linux常用命令

4.1 用户登录与身份切换

4.2 文件目录操作命令

4.2.1 显示当前目录的完整路径pwd

4.2.2 改变当前路径cd

4.2.3  建立目录 mkdir

4.2.4 删除目录rmdir

4.2.5 列出当前目录的内容ls

4.2.6 复制文件或目录cp

4.2.7  删除文件或目录命令rm

4.2.8  移动文件或者将文件改名mv

4.2.9  来查看文件内容、创建文件、文件合并cat

4.2.10 文件内容或输出查看工具more

4.2.11  查看文件内容工具less

4.2.12 显示文件内容的前几行head

4.2.13 显示文件内容的最后几行tail

4.2.14 建立一个空文件touch

4.2.15 链接文件的建立ln

4.3 信息显示命令

4.3.1 查找文件内容grep

4.4 shell 语言解释器

4.4.1什么是shell

4.4.2 shell的流行种类

4.5.3 什么是重定向?什么是管道?

第5章 Linux文件系统管理

5.1 文件系统

5.2  Linux文件及目录的访问权限设置

5.2.1  字符权限与数字权限的转换

5.2.2 改变访问权限chmod

5.2.3 chown改变文件/目录的拥有者

5.2.4 umask 设置文件与目录的默认权限

5.2.4 特殊权限

5.3 文件与目录权限的区别

第6章 系统用户帐号管理

6.1 普通用户帐号的管理

6.1.1  增加新用户帐号

6.1.2  删除用户帐号

6.1.3 修改用户帐号

6.2 用户组的管理

6.2.1 用户组的添加groupadd

6.2.2  用户组的删除groupdel

6.3.3  用户组的修改

第7章 Linux磁盘管理

7.1  磁盘管理常用命令

7.1.1  Linux磁盘管理命令fdisk

7.1.2 Linux磁盘格式化命令mkfs

7.1.3 Linux磁盘检验fsck、df、du

7.2  Linux 的磁盘挂载与卸载

7.2.1 磁盘挂载mount

7.2.2 磁盘卸载umount

第8章 Linux进程管理

8.1 Linux进程管理命令

8.1.1 查看进程的运行状态PS

8.1.2 终止进程

8.2 守护进程

8.2.1 crond守护进程

8.2.2  系统任务调度和用户任务调度

8.2.3 crontab文件的含义

8.2.4 crontab的使用格式

第10章 文件的压缩、解压缩与打包

10.1 gzip压缩与解压缩命令

10.2 bzip2压缩与解压缩命令

10.3 tar打包命令

第12章 shell编程

12.1 创建和执行shell脚本

第13章 Linux网络基础

第14章 NFS服务器配置

14.1 什么是NFS?NFS的功能是什么?

14.2 NFS服务器配置

14.2.1 安装与启动

14.2.2 设置NFS服务器

14.2.3 客户端挂载NFS目录

第15章 Samba服务器配置

15.1 Samba简介

15.2 Samba配置

15.2.1 安装与启动

15.2.2 服务器配置

15.2.3 相关命令


第1章 Linux概述

1.1 了解LINX版本和国内版本

流行Linux版本

1、Red Hat Linux

2、Ubuntu Linux

3、SuSE Linux

4、CentOS Linux

国内Linux版本:

1、红旗Linux

2、深度(Deepin)

3、中标麒麟

第3章 Linux的桌面管理

3.1 gedit文本编辑器

点击主按钮,在搜索中输入 “gedit” ,点击打开程序窗口;或者在终端中输入命令#gedit。见图3.12 Gedit文本编辑器。

 

第4章 Linux常用命令

4.1 用户登录与身份切换

身份切换方式一:su

该命令可以将身份切换至指定账户,但需要输入该账户的密码,root用户切换到其他用户时无需输入密码。

命令格式:su [-lm] [-c 命令] username

身份切换方式二:sudo

使用su切换身份需要用到root账号的密码,这样并不安全。为了提高安全性,可以使用sudo来执行需要root权限的功能。

命令格式:sudo 命令

4.2 文件目录操作命令

4.2.1 显示当前目录的完整路径pwd

格式:pwd [--help][--version]

功能:显示工作目录。

补充说明:执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称。

4.2.2 改变当前路径cd

格式:cd  [dirName]   

功能:切换当前目录至dirName

   cd  ~  进入用户主目录;

   cd  -  返回进入此目录之前所在的目录;

   cd  .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的   

意思);

   cd ../..  返回上两级目录;

4.2.3  建立目录 mkdir

格式:mkdir  [参数] <目录名>

功能:建立目录。

参数:-m  权限值:指定目录的属性 (r、w、x或4、2、1)

      -p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。

4.2.4 删除目录rmdir

格式:rmdir  [参数]<目录名>

    功能:删除空目录

命令参数:

- p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。

-v, --verbose  显示指令执行过程 。

rmdir是常用的命令,该命令删除的目录被删除之前必须是空的。(注意,rm - r dir命令可代替rmdir,但是有很大危险性。)删除某目录时也必须具有对父目录的写权限。

4.2.5 列出当前目录的内容ls

格式:ls  [参数]  [文件名]

功能:查找文件、显示目录中的文件及子目录的名称

    参数:-a:显示所有文件(包括隐含文件以“.”开头的文件为隐含文件)

      -l:以长格式显示文件名及目录名(显示文件的详细信息)

4.2.6 复制文件或目录cp

格式:cp   [参数]<源路径> <目标路径>   

功能:用于自制文件

参数:-f:文件在目录路径中存在,则直接覆盖

      -i:当文件存在提示是否覆盖

4.2.7  删除文件或目录命令rm

格式:rm [参数] <文件名>

功能:该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是断开了链接,原文件保持不变。 

参数:-d   删除可能仍有数据的目录 (只限超级用户)。

          -f   略过不存在的文件,不显示任何信息。

          -i   进行任何删除操作前必须先确认。

          -r/R 递归的删除目录下面文件以及子目录下文件即删除该目录下的所有目录层。

4.2.8  移动文件或者将文件改名mv

格式: mv [选项] 源文件或目录 目标文件或目录

功能:命令来为文件或目录改名或将文件由一个目录移入另一个目录中。

参数:b :若需覆盖文件,则覆盖前先行备份。  

      -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。

4.2.9  来查看文件内容、创建文件、文件合并cat

功能:cat主要有三大功能:一次显示整个文件,从键盘创建一个文件,将几个文件合并为一个文件。

第一个功能:一次显示整个文件内容,但仅能停留在最后一页。

格式:cat [参数]文件

参数:n 或  由 1 开始对所有输出的行数编号

第二个功能:cat 有创建文件的功能,创建文件后,要以ctrl+z结束。

格式:cat>文件名

第三功能:cat 连接多个文件的内容并且输出到一个新文件中。

格式:cat filename1 filename2 ...>filenamen

注意:切记>意思是创建,>>是追加。

4.2.10 文件内容或输出查看工具more

more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比;

格式:more [参数选项] [文件]

4.2.11  查看文件内容工具less

less 工具也是对文件或其它输出进行分页显示的工具,应该说是Linux正统查看文件内容的工具,功能极其强大。

格式:less [参数] 文件

less的动作命令:

进入less后,less的动作命令更方便查阅文件内容;最应该记住的命令就是q,这个能让less终止查看文件退出。

4.2.12 显示文件内容的前几行head

格式:head -n 行数值 文件名;

功能:head 是显示一个文件的内容的前多少行,用法比较简单。

实例:

[root@localhost ~]# head -n 10 /etc/profile             显示/etc/profile的前10行内容

4.2.13 显示文件内容的最后几行tail

格式:tail   -n 行数值 文件名;

功能:显示一个文件的内容的后多少行,用法比较简单。

实例:

[root@localhost ~]# tail -n 10 /etc/profile             显示/etc/profile的后10行内容

4.2.14 建立一个空文件touch

功能:用来修改文件时间戳,或者新建一个不存在的文件。

格式:touch [选项]文件

4.2.15 链接文件的建立ln

格式:ln  [参数] <源文件><目标文件>

功能是为某一个文件或目录在另外一个位置建立一个同步的链接,类似Windows下的超级链接。

4.3 信息显示命令

4.3.1 查找文件内容grep

格式:grep [-acinv] [--color=auto] '搜寻字符串' filename

功能:Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

实例:

# grep root /etc/passwd   将/etc/passwd文件中有root的那行

或利用管道也可以。

实例:

# cat /etc/passwd|grep root

4.4 shell 语言解释器

4.4.1什么是shell

shell是用户和Linux(更准确的说是Linux内核)之间的接口程序,充当的是人与内核(硬件)的翻译官,用户将一些命令“告诉”Shell,它就会调用相应的程序服务执行工作。在提示符下输入的每个命令都由shell先解释然后传给Linux内核。因此说,shell 是一个命令语言解释器(command-language interpreter),并且拥有自己内建的 shell 命令集。

4.4.2 shell的流行种类

流行的shell有ash、bash、ksh、csh、zsh等

4.5.3 什么是重定向?什么是管道?

1)重定向:

输入重定向是指让命令从指定文件中获取输入,而非从键盘输入中获取输入。Linux 中使用 < 和 << 来重定向标准输入。

输出重定向:输出重定向是指把命令(或可执行程序)的标准输出重新定向到指定文件中。这样,该命令的输出就不显示在屏幕上,而是写入到指定文件中。Linux 中使用 > 和 >> 来重定向标准输出。

2)管道:

管道就是前一个命令的输出作为后一个命令的输入

5 Linux文件系统管理

5.1 文件系统

文件系统是操作系统用于明确磁盘或分区上文件的方法和数据结构,即在磁盘上组织文件的方法。

5.2  Linux文件及目录的访问权限设置

5.2.1  字符权限与数字权限的转换

r: 对应数值4

w: 对应数值2

x:对应数值1

-:对应数值0

5.2.2 改变访问权限chmod

(1)文字设定法

chmod [who] [+ | - | =] [mode] 文件名

  命令中各选项的含义为:

  操作对象who可是下述字母中的任一个或者它们的组合:

u 表示“用户(user)”,即文件或目录的所有者。

g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

o 表示“其他(others)用户”。

a 表示“所有(all)用户”。它是系统默认值。

  操作符号可以是:

+ 添加某个权限。

- 取消某个权限。

= 赋予给定权限并取消其他所有权限(如果有的话)。

  设置mode所表示的权限可用下述字母的任意组合:

r 可读。

w 可写。

x 可执行。

实例:# chmod ug+w,o-w a.txt

(2)数字设定

数字设定法的一般形式为:

chmod [mode] 文件名。

实例:# chmod 777 a.txt

5.2.3 chown改变文件/目录的拥有者

格式:

chown [选项]... [所有者][:[组]] 文件...

实例:# chown root:root a.txt

5.2.4 umask 设置文件与目录的默认权限

【格式】umask [要被减去的权限]

Linux系统的默认设置为0022

【0022的解释】

1)对目录而言设置的默认权限为rwxr-xr-x

2)对文件而言设置的默认权限为rw-r--r--

5.2.4 特殊权限

1)s或S(SUID,Set UID)

当s这个标志出现在文件所有者的x权限上时,例如文件权限状态“-rwsr-xr-x”,此时就称为 Set UID。【功能】该位是让普通用户可以以root用户的角色运行只有root帐号才能运行的程序或命令。

【注意】如果文件所有者的x权限如果没有,则设置该特殊权限显示的就为大写S;反之,则显示小写s

SUID只能用在文件上,不能用在目录。

2)s或S(SGID,Set GID)

s出现在用户组的x权限时称为SGID,该权限只对目录有效。使用者若有此目录的x、w权限,则可进入和修改此目录。

【功能】目录被设置该位后,任何用户在此目录下创建的文件都具有和该目录所属的组相同的组。

3)t或T(Sticky粘滞位)

t出现在文件其他用户的x权限上,该位可以理解为防删除位。

【功能】希望用户能够添加文件但同时不能删除文件

5.3 文件与目录权限的区别

【文件】对于普通文件来说,rwx的意义是:

r:可以获得这个普通文件的名字和内容。

w:可以修改这个文件的内容和文件名。可以删除该文件,但是用户会得到是否删除写保护文件的prompt。

x:该文件是否具有被执行的权限。

【目录】对于目录文件来说,rwx的意义是:

r 可以对此目录执行ls以列出内部的所有文件。

w 可以在此目录创建文件,删除文件取决于文件本身的权限。

x 可以使用cd命令切换进目录,也可以使用ll命令查看内部文件的详细信息。

第6章 系统用户帐号管理

6.1 普通用户帐号的管理

6.1.1  增加新用户帐号

命令:useradd [参数] [用户名称]

部分参数及释义:  

  -d 指定新账户的主目录 。

  -m 创建用户的主目录。

  -M 不创建用户的主目录。

  -s 指定新账户的登录 shell。  

  -g 用户组 指定用户所属的用户组。

例:# useradd -g huangwd -m test2

使用useradd创建完新用户账号后,我们还需使用passwd命令为它配置一个密码。

命令示例:

# passwd test2

6.1.2  删除用户帐号

命令方式删除用户操作:

在命令行下使用userdel命令操作,实际上删除用户账号就是要将/etc/passwd等系统文件

中的对应的用户记录删除。

命令示例:

# userdel test2

命令执行后test2用户账户会被立即删除,但该用户的主目录还在/home下,若要在删除用户账户时同时删除对应的用户主目录,则需要使用-r参数。

# userdel –r test2

这样在删除test2用户账户时与其对应的主目录和文件也会同时删除,需要注意的是,在使用-r参数删除用户账户时一定要考虑该用户的主目录还有没有用,防止误删文件。

6.1.3 修改用户帐号

命令:usermod

常用参数及释义。

-c  修改用户帐号的备注文字。

-d  修改用户登入时的目录。

-e  修改帐号的有效期限。

-g  修改用户所属的群组。

-l   修改用户帐号名称。

-L  锁定用户密码,使密码无效。

-s  修改用户登入后所使用的shell。

-U  解除密码锁定。

实例:# usermod -l test3 test2 //将test2的用户名改为test3

6.2 用户组的管理

6.2.1 用户组的添加groupadd

添加用户组的命令为groupadd

其常用参数有:

-g 指定组的GID号。

-o 允许添加重复GID号的用户组。

命令实例:

创建名为test3的用户组并指定其GID600

# groupadd -g 600 test3

默认情况下新建用户及用户组时,其id不必手动设置,系统会自动生成。

6.2.2  用户组的删除groupdel

使用groupdel命令删除用户组。

命令实例:

# groupdel test3

该条命令执行后呢会把test3用户组删除,需要注意的是,倘若该组中仍包括某些用户,则必须先删除这些用户后,才能删除此用户组。

6.3.3  用户组的修改

使用groupmod命令对用户组的属性进行修改

其常用参数有:

-g 为用户组指定新的GID号。

-n 给用户组的重命名。

命令实例:

test2用户组的GID修改为700,并将其重命名为test3.

# groupmod –g 700 -n test3 test2

第7章 Linux磁盘管理

7.1  磁盘管理常用命令

7.1.1  Linux磁盘管理命令fdisk

格式:fdisk [磁盘名称]

功能:fdisk 是 Linux 的磁盘分区表操作工具,用于管理磁盘分区。

实例:要求Vm虚拟机下Linux扩展原有磁盘空间,详细步骤如下:

(1)查看当前分区情况。

# fdisk -l

(2)为已有的Linux虚拟机扩展磁盘空间。

 

(3)创建分区

# fdisk /dev/sda

创建分区常用参数:

   l  list known partition types                  --列出分区类型

   m  print this menu                         --帮助

   n  add a new partition                      --建立一个新的分区

   p  print the partition table                   ---打印分区表

   q  quit without saving changes               ---退出不保存设置

   w  write table to disk and exit                  ---保存分区表

7.1.2 Linux磁盘格式化命令mkfs

命令格式:  mkfs [ -V ] [ -t fstype ] [ fs-options ] filesys [ blocks ]

实例:对/dev/sdb1进行格式化,要求格式化成ext4文件系统。

# mkfs -t ext4 /dev/sdb1 //

7.1.3 Linux磁盘检验fsck、df、du

(1)fsck命令

使用格式:fsck [选项] [-t <文件系统类型>] [设备名]

功能说明:检查文件系统并尝试修复错误。

选项 含义

-a 自动修复文件系统,没有任何提示。

-t <文件系统类型>:指定要检查的文件系统类型。

注意:在执行fsck命令修复某个文件系统时,这个文件系统对应的磁盘分区一定要处于卸载状态,磁盘分区在挂载状态下进行修复是极为不安全的,数据可能遭到破坏,也有可能损坏磁盘。

(2)了解硬盘使用情况的命令df

格式为:df [选项] [文件]

功能:显示指定磁盘文件的可用空间。如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间将被显示。

参数:

-a 全部文件系统列表

-h 方便阅读方式显示

实例:查看到所有已挂载的挂载信息与硬盘使用情况

# df -h

(3)用于查看磁盘的使用量命令du

格式为: du [选项] [文件]

该命令参数众多,选取几个常用的介绍。

参数-a  评估每个文件而非目录整体占用量

-h  更易读的容量格式如1K,234M,2G…

实例:查看目录/home/hwd1

# du -h hwd1

4.0K hwd1

7.2  Linux 的磁盘挂载与卸载

7.2.1 磁盘挂载mount

命令格式:mount [-t vfstype] [-o options] device dir

参数:

-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:

device 要挂接(mount)的设备。

dir设备在系统上的挂接点(mount point)。

实例1:(1)光盘镜像文件的挂载。

# mkdir /mnt/cdrom         //建立一个目录用来作挂接点(mount point)。

# mount -t iso9660 /dev/cdrom   /mnt/cdrom //将光驱与挂载到/mnt/cdrom目录上

实例2:将分区挂载到指定目录上

# mkdir /mnt/hwd

# mount -t ext4 /dev/sdb1 /mnt/hwd

7.2.2 磁盘卸载umount

格式:unount  [参数]  [装载点/设备名]

实例:直接卸载

# umount /mnt/hwd

8章 Linux进程管理

8.1 Linux进程管理命令

8.1.1 查看进程的运行状态PS

基本使用格式:Ps [参数]

常用参数:

a  显示所有终端下执行的进程

-a 显示同一终端下的所有程序

l  显示进程详细信息

-aux 显示所有包含其他使用者的进程

请注意,a与-a参数的作用是不一样的

我们执行了一下ps aux命令,根据上述参数列表,我们可以得出该命令的作用为显示所有包含其他使用者的进程。

8.1.2 终止进程

命令格式:kill [参数] [进程号]

实例1:正常杀死一个进程

#kill 2657 //杀死进程号为2657的进程

实例2:强制杀死一个进程

#kill -9 2653 //杀死进程号为2653的进程

8.2 守护进程

守护进程(Daemon)是一直存在的、运行在后台的一种特殊的进程,无法被交互用户直接控制,且周期性地执行某种任务或等待处理某些发生的事件。

8.2.1 crond守护进程

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程

8.2.2  系统任务调度和用户任务调度

任务调度分为两类,系统任务调度和用户任务调度。

系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。

用户任务调度:用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。用户可以使用 crontab 工具来定制自己的计划任务。每个用户都可以有自己的crontab文件,而文件内容的格式见8.4.3节。所有用户定义的crontab 文件都被保存在 /var/spool/cron目录中。其文件名与用户名一致。

8.2.3 crontab文件的含义

基本格式 :

    * * * * *  命令

第1个*号表示分钟1~59 每分钟用*或者 */1表示

第2个*号表示小时1~23(0表示0点)

第3个*号表示日期1~31

第4个*号表示月份1~12

第5个*号表示星期0~6(0表示星期天)

命令部分是要执行的指令。

但是,在*项出现了*/n,则表示每隔n分钟(小时、周...)执行一次,而1,2,3则表示第1、第2、第3分钟(小时、周...)都要执行一次,而1-6则代表第一到第6分钟(小时、周...)都要执行一次。

8.2.4 crontab的使用格式

命令格式:crontab -e [用户名]

命令参数;

-e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。

实例:晚上11点到早上7点之间,每隔一小时关机

1)#crontab – e

2)修改该用户的任务调度文件,加入如下内容

* 23-7/1 * * * /sbin/shutdown -h 0

10 文件的压缩、解压缩与打包

10.1 gzip压缩与解压缩命令

指令格式:

gzip [options]... [file]...     ==>压缩

gunzip/gzip -d   [file]...      ==>解压缩     

指令参数:

-d   解压缩文件,等效于gunzip;

实例:将/etc/manpath.config复制到/home/cyc,并且以gzip压缩

#cp /etc/manpath.config  /home/cyc

#gzip manpath.config

10.2 bzip2压缩与解压缩命令

格式:bzip2 -[option] [file_name]

-c 将压缩过程中产生的数据输出到屏幕上;

-d 解压缩参数;

实例:将/home/cyc/ manpath.config以bzip2压缩,并解压缩

#bzip2 manpath.config

#bzip2 -d manpath.config.bz2

10.3 tar打包命令

格式: tar [主选项+辅选项] 目标打包文件名称 被打包文件名称

使用该命令时,主选项必须有,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项(一条命令以下5个参数只能有一个)

-c: --create 新建一个压缩文档,即打包;

-x: --extract,--get解压文件;

辅助选项:

-z:是否同时具有gzip的属性,即是否需要用gzip压缩或解压?一般格式为xxx.tar.gz或xx.tgz;

-j:是否同时具有bzip2的属性,即是否需要用bzip2压缩或解压?一般格式为xx.tar.bz2;

-v:显示操作过程,这个参数很常用;

-f:使用文档名,注意,在f之后要立即接文档名,不要再加其他参数;

实例1:将整个 /home/hwd1 目录下以a开头的文件全部打包成为a.tar。

#tar -cvf a.tar a*

实例2:将整个 /home/hwd1 目录下以a开头的文件全部打包成为a.tar,打包后,以 gzip 压缩。

#tar -zcvf a.tar.gz a*

实例3:将整个 /home/hwd1 目录下以a开头的文件全部打包成为a.tar,打包后,以 bzip2 压缩。

#tar -jcvf a.tar.bz2 a*

实例4:将 /home/hwd1/a.tar.gz文件解压缩在/home/hwd2 底下

#cd /home/hwd2

#tar -zxvf /home/hwd1/a.tar.gz

12章 shell编程

12.1 创建和执行shell脚本

1)一个标准的Shell脚本文件的第一行必须声明用来执行该文件的shell:#!/bin/sh。符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中使用/bin/sh来执行程序。

2)shell脚本文件通常是.sh为后缀,里面的内容添加要执行的命令例如echo ‘hello world’

3)脚本文件必须要有执行权限,因此需要修改权限:chmod 777 脚本文件

4)执行脚本文件:

a.进入到shell程序所在的目录,用./脚本文件执行。

b.bash  /XXX/XXX/脚本文件

13章 Linux网络基础

了解一下就可以

14章 NFS服务器配置

14.1 什么是NFS?NFS的功能是什么?

什么是NFS?

NFS是由SUN公司发展,并于1984年推出的技术,用于在不同机器,不同操作系统之间通过网络互相分享各自的文件。

NFS的功能是什么?

可以通过网络,使不同的机器、不同的操作系统可以彼此分享各自的文件。

14.2 NFS服务器配置

14.2.1 安装与启动

#apt-get install nfs

#service rpcbind start(启动rpc程序)

#service nfs start

14.2.2 设置NFS服务器

主要是配置/etc/exports文件

/etc/exports文件中的每一行就是一个共享文件夹的信息,分成这样几个字段:

<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]。

输出目录:要共享的目录

客户端:网络中可以访问此NFS服务器的计算机

访问权限选项:只读(ro)、读写(rw)

用户映射选项:

    【all_squash】权限压缩,将远程访问的所有普通用户和组映射为匿名用户或组(一般为nobody)

    【no_all_squash】不使用权限压缩

    【root_squash】对root用户及其所属组进行权限压缩。

    【no_root_squash】取反

    【anonuid=xxx】将远程访问的所有用户都映射成匿名用户,并指定该用户为本地用户(UID=xxx)

【anongid=xxx】将远程访问的所有用户组都映射成匿名用户组账户,并指定该用户组账户为本地用户组账户(GID=xxx)

例如:

/home/Linux  *.Linux.org(rw,all_squash,anonuid=500,anongid=500)      //当*.Linux.org登陆

此NFS主机,并且在/home/Linux下面写入文件时,该文件的拥有者及所属组,就会变成/etc/passwd里面对应的UID为500的那个身份的使用者了。

/tmp *(rw) //表示所有主机都可以访问,且允许读写

14.2.3 客户端挂载NFS目录

1)查看nfs服务器共享的目录

 #showmount -e 192.168.1.111(nfs服务器ip)

 查到的是/home/hwd *,下面将/home/hwd文件夹挂载到客户端

2)#mkdir /mnt/hwd2 创建挂载点

 #mount -t nfs 192.168.1.111:/home/hwd  /mnt/hwd2

3)卸载NFS挂载的共享目录

#umount /mnt/hwd2

4)开机自动挂载nfs共享

#vi /etc/fstab

15章 Samba服务器配置

15.1 Samba简介

Samba服务程序是一组使Linux支持SMB协议,并由服务端和客户端组成的开源文件共享软件,实现了Linux与Windows系统间的文件共享。当然也支持Linux系统之间的文件共享。

15.2 Samba配置

15.2.1 安装与启动

#apt-get install samba

#/etc/init.d/samba start[stop][restart]

15.2.2 服务器配置

smb.conf配置文件有两部分组成(1)Samba Global Settings 全局参数设置,该部分由[global]段来完成配置,主要是设置整体的规则。(2)Share Definitions 共享定义, 有很多段,都用[ ]标志开始的,这里要自己根据情况修改。

1)全局选项[global]

【workgroup】

语法:workgroup = <工作组群>;

默认:workgroup = MYGROUP

说明:设定 Samba Server 的工作组

【server string】

语法:server string = <说明>;

默认:sarver string = Samba Server

说明:设定 Samba Server 的注释

【hosts allow】

语法:hosts aoolw = <IP地址>; ...

说明:限制允许连接到 Samba Server 的机器,多个参数以空格隔开。表示方法可以为完整的IP地址,如 192.168.0.1 网段,如 192.168.0.

【security】

语法:security = <安全等级>;

默认:security = user

说明:设定访问 samba server 的安全级别共有四种:

share---不需要提供用户名和密码。

user----需要提供用户名和密码,而且身份验证由 samba server 负责。

server--需要提供用户名和密码,可指定其他机器(winNT/2000/XP)或另一台 samba server作身份验证。

domain--需要提供用户名和密码,指定winNT/2000/XP域服务器作身份验证。需要注意,只要输入用户名和密码的级别,其用户名一定首先也是Linux系统内的用户。

2)共享选项[自定义名称]

[share] //windows显示的文件名,不需与实际文件一致

comment=my ... //共享文件的解释,当鼠标悬浮到文件上时会显示该注释

path=/home/share //要共享的目录,必须为绝对路径

public = yes       //是否允许所有人都能够看到此目录,no为看不到。

writable=yes //是否允许用户在此目录下可写

vaild users = username   //设置只有 username 是有效用户。

15.2.3 相关命令

【testparm】检查配置文件正确性

#testparm

【smbclient】查看服务器共享目录

#smbclient -L 192.168.1.111

【Linux挂载】

#mkdir /mnt/gx

#mount 192.168.1.111:/home/hwd /mnt/gx

【Windows挂载】

#//192.168.1.111

  • 10
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值