• 进入系统后,首先我们创建一个用户账号。...然后使用ls /home,就可以查看刚刚我们创建的用户账户。以及创建用户账号时对/etc/passwd、/etc/shadow、/etc/group/、/etc/gshadow...删除一个用户,#userdel -r ycc #完全删

           进入系统后,首先我们创建一个用户账号。这里我创建一个账户是ycc,使用useradd  ycc就完成了。然后使用ls /home,就可以查看刚刚我们创建的用户账户。以及创建用户账号时对/etc/passwd、/etc/shadow、/etc/group/、/etc/gshadow四个文件的修改,在文件中添加了该用户和组的相关信息。


    删除一个用户,#userdel -r ycc #完全删除一个用户


    展开全文
  • 今天学习了几个命令,是创建、删除文件和文件夹的,在linux里,文件夹是目录,下面说我学习的命令。 创建文件夹【mkdir】 一、mkdir命令使用权限 所有用户都可以在终端使用 mkdir 命令在拥有权限的文件夹...

    今天学习了几个命令,是创建、删除文件和文件夹的,在linux里,文件夹是目录,下面说下我学习的命令。


    创建文件夹【mkdir】

      一、mkdir命令使用权限

        所有用户都可以在终端使用 mkdir 命令在拥有权限的文件夹创建文件夹或目录。

        二、mkdir命令使用格式

        格式:mkdir [选项] DirName

        三、mkdir命令功能

        通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录。要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限(了解Linux文件-文件夹权限请点击这里)。并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能有同名的(区分大小写)。

        四、mkdir命令选项说明

        命令中的[选项]一般有以下两种:

        -m    用于对新建目录设置存取权限,也可以用 chmod 命令进行设置。

        -p     需要时创建上层文件夹(或目录),如果文件夹(或目录)已经存在,则不视为错误。

        五、mkdir命令使用举例

        例一:在桌面下面创建以“demo”命名的文件夹。

        使用以下命令即可。

        mkdir 桌面/demo

      例二:在桌面下面创建以“demo”命名的文件夹,并且给文件夹赋权限,权限为123。

        mkdir  123  桌面/demo


    删除文件夹【rm】

      一、rm命令使用权限

        所有用户都可以在终端使用 rm命令删除目录。

        二、rm命令使用格式

        格式:rm [选项] DirName

        三、rm命令功能

        删除档案及目录。

        四、rm命令选项说明

        命令中的[选项]一般有以下几种:

        -i 删除前逐一询问确认。

      -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

      -r 将目录及以下之档案亦逐一删除,递归所有的子目录,逐一询问。

        五、rm命令使用举例

        例一:删除所有C语言程序文档;删除前逐一询问确认。

        rm -i *.c

      例二:将 Finished 子目录及子目录中所有档案删除。

        rm -r Finished

     

     

         rm -f abc.txt的意思是说强制删除文件。如果文件不存在,也不要提示。这是因为如果直接使用rm abc.txt那么如果文件不存在,rm 会提示你。这在某些情况下,比如我们写一些小脚本,可能不需要他这样做。
    rm -r abc 的意思是说递归所有的子目录。其中要求abc是一个目录名。这条rm运行后,abc目录下的所有子目录里的东西也会一同被删除。通常我们在删除一个目录时会使用rm -rf abc这样的形式,这就是说明删除目录abc,同时要求命令不要产生任何提示。

     

     

     

      注:在linux没有回收站,在试用rm命令的时候,一定要小心些,删除之后就无法再恢复了。

    创建文件【vi】

      一、进入vi的命令

         vi filename :打开或新建文件,并将光标置于第一行首

         vi +n filename :打开文件,并将光标置于第n行首

        vi + filename :打开文件,并将光标置于最后一行首

        vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

        vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

        vi filename....filename :打开多个文件,依次进行编辑

      二、移动光标类命令

      h :光标左移一个字符

      l :光标右移一个字符

      space:光标右移一个字符

      Backspace:光标左移一个字符

      k或Ctrl+p:光标上移一行

      j或Ctrl+n :光标下移一行

      Enter :光标下移一行

      w或W :光标右移一个字至字首

      b或B :光标左移一个字至字首

      e或E :光标右移一个字至字尾

      ) :光标移至句尾

      ( :光标移至句首

      }:光标移至段落开头

      {:光标移至段落结尾

      nG:光标移至第n行首

      n+:光标下移n行

      n-:光标上移n行

      n$:光标移至第n行尾

      H :光标移至屏幕顶行

      M :光标移至屏幕中间行

      L :光标移至屏幕最后行

      0:(注意是数字零)光标移至当前行首

      $:光标移至当前行尾

     三、屏幕翻滚类命令

      Ctrl+u:向文件首翻半屏

      Ctrl+d:向文件尾翻半屏

      Ctrl+f:向文件尾翻一屏

      Ctrl+b;向文件首翻一屏

      nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

     四、插入文本类命令

      i :在光标前

      I :在当前行首

      a:光标后

      A:在当前行尾

      o:在当前行之下新开一行

      O:在当前行之上新开一行

      r:替换当前字符

      R:替换当前字符及其后的字符,直至按ESC键

      s:从当前光标位置处开始,以输入的文本替代指定数目的字符

      S:删除指定数目的行,并以所输入文本代替之

      ncw或nCW:修改指定数目的字

      nCC:修改指定数目的行

     五、删除命令

      ndw或ndW:删除光标处开始及其后的n-1个字

      do:删至行首

      d$:删至行尾

      ndd:删除当前行及其后n-1行

      x或X:删除一个字符,x删除光标后的,而X删除光标前的

      Ctrl+u:删除输入方式下所输入的文本

     六、搜索及替换命令

      /pattern:从光标开始处向文件尾搜索pattern

      ?pattern:从光标开始处向文件首搜索pattern

      n:在同一方向重复上一次搜索命令

      N:在反方向上重复上一次搜索命令

      :s/p1/p2/g:将当前行中所有p1均用p2替代

      :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

      :g/p1/s//p2/g:将文件中所有p1均用p2替换

     七、vi命令使用举例

      例一:创建文件a.txt。

      vi a.txt

      Hello everyone!

      :wq //在退出时,直接输入:wq会发现退不出去,退出方法是:编辑完成后按ESC,然后输入:q就是退出;还有:wq是保存后退出,加感叹号是表示强制

      

      

      

    修改档案时间【touch】

       一、touch命令使用权限

        所有用户都可以在终端使用 touch命令。

        二、touch命令使用格式

        格式:touch [-acfm][-d <日期时间>][-r <参考文件或目录>][-t <日期时间>][--help] [--version][文件或目录...] 或 touch [-acfm][--help][--version][日期时间][文件或目录...]

        (touch [-acfm][-r reference-file] [--file=reference-file][-t MMDDhhmm[[CC]YY][.ss]][-d time] [--date=time][--time={atime,access,use,mtime,modify}][--no-create][--help] [--version]file1 [file2 ...])

        三、touch命令功能

      touch fileA,如果fileA存在,使用touch命令可更改这个文件或目录的日期时间,包括存取时间和更改时间;如果fileA不存在,touch命令会在当前目录下新建一个空白文件fileA。

      注:使用touch指令可更改文件或目录的日期和时间,包括存取时间和更改时间。文件的时间属性包括文件的最后访问时间,最后修改时间以及最后在磁盘上修改的时间,命令stat显示结果显示了三个时间属性。

        四、touch命令选项说明

        a 改变档案的读取时间记录。

      m 改变档案的修改时间记录。

      c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。

      f 不使用,是为了与其他 unix 系统的相容性而保留。

      r 使用参考档的时间记录,与 --file 的效果一样。

      d 设定时间与日期,可以使用各种不同的格式。

      t 设定档案的时间记录,格式与 date 指令相同。[[CC]YY]MMDDhhmm[.SS],CC为年数中的前两位,即”世纪数”;YY为年数的后两位,即某世纪中的年数.如果不给出CC的值,则linux中touch命令参数将把年数CCYY限定在1969--2068之内.MM为月数,DD为天将把年数CCYY限定在1969--2068之内.MM为月数,DD为天数,hh 为小时数(几点),mm为分钟数,SS为秒数.此处秒的设定范围是0--61,这样可以处理闰秒.这些数字组成的时间是环境变量TZ指定的时区中的一个时间.由于系统的限制,早于1970年1月1日的时间是错误的.

      --no-create 不会建立新档案。

      --help 列出指令格式。

      --version 列出版本讯息。

        五、touch命令使用举例

        例一:更新file1.txt的存取和修改时间。

      touch file1.txt

      例二:如果file1.txt不存在,不创建文件

      touch -c file1.txt

      例三:更新file1.txt的时间戳和ref+file相同

      touch -r ref+file file1.txt

      例四:设置文件的时间戳为2011年5月18日9点45分10秒

      ls -l file1.txt

      touch -t 1105190945.10 file1.txt


    在新建文件时用touch命令可以建立一个空文件,而vi命令则可以直接编辑文件的内容并保存。touch命令在linux中很少用到,我个人还是比较喜欢vi命令,可以直接对文档进行编辑。

    展开全文
  • 关于一些小白用户常常在运用Linux命令,会十分当心,以免搞出一些事情,下面小编将教细致教大家如何运用linux命令删除文件夹,需求的请珍藏。linux删除文件夹命令实例:rm -rf /var/log/httpd/access将会删除/var/...

    linux删除文件夹命令

    在用Linux的时分,有时分要删除一个文件夹,常常会提示次此文件非空,没法删除,这个时分,必需运用rm -rf命令。关于一些小白用户常常在运用Linux命令,会十分当心,以免搞出一些事情,下面小编将教细致教大家如何运用linux命令删除文件夹,需求的请珍藏。

    linux删除文件夹命令

    linux删除文件夹命令实例:

    rm -rf /var/log/httpd/access

    将会删除/var/log/httpd/access目录以及其下所有文件、文件夹

    linux删除文件夹命令

    linux删除文件命令实例:

    rm -f /var/log/httpd/access.log

    将会强制删除/var/log/httpd/access.log这个文件

    -r 是向下递归,不管有多少级目录,一并删除

    -f 是直接强行删除,不作任何提示的意思

    -i 进行交互式删除。

    提示:运用rm命令要当心。由于一旦文件被删除,它是不能被恢复的。了避免这种状况的发作,能够运用i选项来逐一确认要删除的文件。假如用户输入y,文件将被删除。假如输入任何其他东西,文件则不会删除。

    运用这个rm -rf删除文件的时分一定要格外当心,linux没有回收站的。

    来源:http://www.magedu.com/71886.html


    文末福利 || 免费领:运维大神速成秘籍(300页干货,基础、进阶、高端,全方位linux技能整理)

    展开全文
  • 文件夹权限问题 Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。...以主文件夹下的一个名为cc的文件夹为例。 下面一步一步介绍如何修改权限: 1.打开
     
    

    文件夹权限问题

    Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为cc的文件夹为例。 下面一步一步介绍如何修改权限: 1.打开终端。输入su(没

     

    Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为“cc”的文件夹为例。

    下面一步一步介绍如何修改权限:
    1.打开终端。输入”su”(没有引号)

    2.接下来会要你输入密码,输入你的root密码。

    3.假设我的文件夹在主目录里,地址为  /var/home/dengchao/cc  。假设我要修改文件权限为777,则在终端输入  chmod  777 /var/home/userid/cc

    文件夹的权限就变为了777。

    如果是修改文件夹及子文件夹权限可以用  chmod -R 777 /var/home/userid/cc

    具体的权限(例如777的含意等)在下面解释下:
    1.777有3位,最高位7是设置文件所有者访问权限,第二位是设置群组访问权限,最低位是设置其他人访问权限。

    其中每一位的权限用数字来表示。具体有这些权限:

    r(Read,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限。

    w(Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

    x(eXecute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

    2.首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为7时,7用“rwx”表示–{4(r)+2(w)+1(x)=7}–

    又如果数值为6,则用“rw-”表示–{4(r)+2(w)+0(x)=6}–,”-”表示不具备权限,这里表示不具备“执行”权限。

    假如我们设定其他用户的访问权限为 “r–”,则数值为4+0+0=4

    一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则用1表示,没有则有0表示,那么rwx则可以表示成为:111

    而二进制的111就是7。

    3.我们再来看下怎么确定3个数位上的权限。假如我们要给一个文件设置权限,具体权限如下:

    文件所有者有“读”、“写”、“执行”权限,群组用户有“读”权限,其他用户有“读”权限,则对应的字母表示为”rwx r– r–“,对应的数字为744

    一般都是最高位表示文件所有者权限值,第二位表示群组用户权限,最低位表示其他用户权限。

    下面来举些例子熟悉下。

    权限

    数值

    rwx rw- r–

    764

    rw- r– r–

    644

    rw- rw- r–

    664

    具体linux修改文件夹-文件目录权限就是这样设置的了.

    chmod用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

    1. 文字设定法

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

    命令中各选项的含义为:

    操作对象who可是下述字母中的任一个或者它们的组合:
      u 表示“用户(user)”,即文件或目录的所有者。
      g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
      o 表示“其他(others)用户”。
      a 表示“所有(all)用户”。它是系统默认值。
    操作符号可以是:
      + 添加某个权限。
      - 取消某个权限。
      = 赋予给定权限并取消其他所有权限(如果有的话)。
    设置 mode 所表示的权限可用下述字母的任意组合:
      r 可读。
      w 可写。
       x 可执行。
      X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
      s 在文件执行时把进程的属主或组ID置为该文件的文件属主。
          方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
      t 保存程序的文本到交换设备上。
      u 与文件属主拥有一样的权限。
      g 与和文件属主同组的用户拥有一样的权限。
      o 与其他用户拥有一样的权限。
    文件名:以空格分开的要改变权限的文件列表,支持通配符。

      

    在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:

    chmod g+r,o+r example  % 使同组和其他用户对文件example 有读权限。

    2. 数字设定法

    我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限, 2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

    例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

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

    语法:chmod [mode] 文件名

    指令实例:

    chmod a+x sort   
    % 即设定文件sort的属性为:
     文件属主(u) 增加执行权限
     与文件属主同组用户(g) 增加执行权限
     其他用户(o) 增加执行权限
     
    chmod ug+w,o-x text
    % 即设定文件text的属性为:
     文件属主(u) 增加写权限
     与文件属主同组用户(g) 增加写权限
     其他用户(o) 删除执行权限
     
    chmod u+s a.out
    % 假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
     –rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
     并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw-------”,
      即该文件只有其属主具有读写权限。
       当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod
      命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为
      其他人不具备任何权限),这就是s的功能。
      因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非
      必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。
     
    chmod a–x mm.txt
    chmod –x mm.txt
    chmod ugo–x mm.txt
    % 以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。
     
    $ chmod 644 mm.txt
    % 即设定文件mm.txt的属性为:-rw-r--r--
     文件属主(u)inin 拥有读、写权限
     与文件属主同组人用户(g) 拥有读权限
     其他人(o) 拥有读权限
     
    chmod 750 wch.txt
    % 即设定wchtxt这个文件的属性为:-rwxr-x---
     文件主本人(u)inin 可读/可写/可执行权
     与文件主同组人(g) 可读/可执行权
     其他人(o) 没有任何权限

     

     

     

     

     

    linux下搭建FTP服务器

    *************FTP文件说明*********************
    本FTP服务器软件包为vsftpd-2.3.4-1.fc14.i686.rpm
    FTP客户端软件包为ftp-0.17-51.fc12.i686.rpm
    1、vsftpd不再由xinetd控制;
    2、FTP使用port 21发起连接,使用port 20进行数据传输;
    3、vsftpd配置文件:    /etc/vsftpd/vsftpd.conf         #主配置文件
                /etc/vsftpd/vsftpd/ftpusers     #拒绝该文件中列出的用户登录FTP
                /etc/vsftpd/vsftpd/user_list    #默认同ftpusers相同
    4、查看/etc/passwd文件,可以看到FTP默认的共享目录路径为/var/ftp;
    5、FTP日志文件:/var/log/xferlog
    6、相关软件包:tcp_wrappers、ip_conntrack_ftp、ip_nat_ftp
        (这3个软件包是教材上列出的,我没有测试过其用途,有兴趣的朋友可以研究一下)
    7、启动和停止vsftp指令:
    #service vsftpd start       //启动vsftpd服务
    #service vsftpd stop        //停止vsftpd服务
    #service vsftpd restart     //重启vsftpd服务,每次更改FTP相关配置后,一定要用该命令重启vsftpd服务
    #chkconfig vsftpd on        //使vsftpd服务开机启动。(可选操作)
    8、注意SElinux的安全性质:
    一般SElinux是被强行启用的,对许多服务都默认有权限控制,如果在我们对FTP服务器测试时碰到一些莫名奇妙的错误时,可以关闭SElinux,
    也可以仅关闭SElinux对FTP服务的保护设置;
    #sestatus         //查看当前系统SElinux是否开启
    如果开启了,则打开/etc/selinux/config文件,编辑:将SELINUX=enforcing改成SELINUX=disabled,并把SELINUXTYPE=targeted注释掉!

    或者#setsebool -P ftpd_disable_trans 1     //仅关闭SELinux对FTP的保护
    *************FTP权限需求**********************
    a.允许匿名用户登录;
    b.允许匿名用户上传和下载资料(拒绝覆盖已有资料);
    c.允许本地用户登录;(注意SElinux的影响)
    d.FTP共享目录/var/ftp/
    e.拒绝匿名用户创建新文件或者文件夹;
    f.使登录用户可以下载共享资料
    ============================================================================

    1、查询本机是否已经安装ftp-server和ftp-client;
    #rpm -qa vsftpd
    #rpm -qa ftp

    2、如果没有安装,则下载相应软件包,或者yum在线安装;
    #yum install vsftpd     //ftp服务器软件包
    #yum install ftp        //ftp客户端软件包

    3、编辑/etc/vsftpd/vsftpd.conf
    anonymous_enable=YES      //允许匿名用户登录

    local_enable=YES          //允许本地用户登录

    write_enable=YES          //允许登录到FTP的用户执行写操作

    local_umask=022
    anon_umask=077            //匿名用户上传的文件权限都会进行umask的计算,变成-rw- --- ---

    anon_upload_enable=YES    //允许匿名用户上传文件

    xferlog_file=/var/log/vsftpd.log     //FTP服务器日志文件默认路径

    ftpd_banner=***********Welcome to My FTP Server***********

    4、开启vsftpd服务
    #service vsftpd start

    5、在FTP共享目录下建立文件夹
    #mkdir /var/ftp/pub              //用于存放共享文件资料
    #mkdir /var/ftp/incoming         //用于存放匿名用户上传的资料

    #ls -l /var/ftp/
    drwxr-xr-x. 2 root root 4096  5月  8 14:13 incoming
    drwxr-xr-x. 2 root root 4096  5月  8 14:15 pub
    //新创建的文件夹默认归属于root用户和用户组,需要更正!

    #chown ftp.ftp /var/ftp/incoming       //改为所属用户为ftp,用户组为ftp组
    #chown ftp.ftp /var/ftp/pub
    #ls -l /var/ftp
    drwxr-xr-x. 2 ftp ftp 4096  5月  8 14:13 incoming
    drwxr-xr-x. 2 ftp ftp 4096  5月  8 14:15 pub

    6、登录到FTP服务器
    #ftp 127.0.0.1
    Connected to 127.0.0.1 (127.0.0.1).
    220 ************Welcome to My FTP Server*************.
    Name (127.0.0.1:root): ftp                //这里的登录用户名输入ftp或者anonymous或者本地有效账户名
    331 Please specify the password.
    Password:                                 //匿名登录时,直接回车
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp>

    还有一种方法也可以登录到FTP服务器:打开火狐浏览器,输入ftp://127.0.0.1,即可匿名登录;
    7、允许登录用户下载/var/ftp/pub中的文件资料
    使用管理员帐号:
    #chmod +r /var/ftp/pub/*          //修改pub目录下文件的读权限

    展开全文
  • linux上共享文件夹windows看 首先给linux设一个ip,要和windows是一个网段的 mkdir /share ---------------在根创建文件夹(除了root的目录不能创建其他都可以) chmod 777 /share/ ------------给share...

    本文是转字网上的两段,如果是菜鸟,想懂有点难度,我这里给点注释
    在linux上共享文件夹windows下看


    首先给linux设一个ip,要和windows是一个网段的
    mkdir /share ---------------在根下创建文件夹(除了root的目录下不能创建其他都可以)
    chmod 777 /share/ ------------给share文件夹赋权
    vi /etc/samba/smb.conf ------------(编辑samba下的smb.conf文件)
    编辑security = share----------一般在第58行
    编辑最后面的 286 [weihaiyang]
    287comment = share
    288path =/share
    289valid users = nobody
    290public = yes
    291writable = yes
    292printable = no
    293create mask = 0765 (前面的数字是行数)

    service smb restart 重启smb服务
    然后在windows下的“运行”里输入linux的ip就OK了

    [data]
    path = /data
    writeable = yes
    guest ok = yes
    注:这个共享,你可以先在图形界面上操作,然后去cat这个文件,就能看到变化,共享后,就是在smb.conf的后面加上这一段,几个共享,几段,如果更改访问权限,是直接改上面的。

    这是第二段,但这段稍微复杂,就是多用户多共享,密码访问,道理跟第一段类似,只是复杂点。

    在linux建立共享文件夹
    我们今天要实现的环境是,假如公司有财务,技术,领导3个部门,我们分别为3个部门建立3个用户组为caiwu,network,lingdao;

    三个部门里各有2个用户,我们建用户分别为caiwu01,caiwu02,network01,network02,lingdao01,lingdao02

    然后我们分别就公司的具体情况建立相应的目录及访问权限,通过以下的例子,希望大家能在平时的工作中灵活的应用samba的安全权限来设置你们的samba文件服务器。

    1。首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录。

    2。建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到,network02也可以访问,但只有caiwu01有写的权限。

    3。建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录

    4。建议一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件。

    5。建议一个公共的只读文件夹public,所有人只读这个文件夹的内容。

    好,我们先来前期的工作

    #groupaddcaiwu

    #groupaddnetwork

    #groupaddlingdao

    #useraddcaiwu01-gcaiwu

    #useraddcaiwu02-gcaiwu

    #useraddnetwork01-gnetwork

    #useraddnetwork02-gnetwork

    #useraddlingdao01-glingdao

    #useraddlingdao02-glingdao

    然后我们使用smbpasswd-acaiwu01的命令为6个帐户分别添加到samba用户中

    #mkdir/home/samba

    #mkdir/home/samba/caiwu

    #mkdir/home/samba/lingdao

    #mkdir/home/samba/exchange

    #mkdir/home/samba/public

    我们为了避免麻烦可以在这里把上面所有的文件夹的权限都设置成777,我们通过samba灵活的权限管理来设置上面的5点要求。

    以下是我的smb.conf的配置文件

    [global]

    workgroup=bmit

    #我的网络工作组

    serverstring=Frank’sSambaFileServer

    #我的服务器名描述

    security=user

    #使用用户验证机制

    encryptpasswords=yes
    smbpasswdfile=/etc/samba/smbpasswd
    #使用加密密码机制,在win95和winnt使用的是明文

    其他的基本上可以按照默认的来。

    [homes]
    comment=HomeDirectories
    browseable=no
    writable=yes
    validusers=%S
    createmode=0664
    directorymode=0775

    #homes段满足第1条件

    [caiwu]
    comment=caiwu
    path=/home/samba/caiwu
    public=no
    validusers=@caiwu,@lingdao,network02
    writelist=caiwu01
    printable=no

    #caiwu段满足我们的第2要求

    [lingdao]
    comment=lingdao
    path=/home/samba/lingdao
    public=no
    browseable=no
    validusers=@lingdao,network02
    printable=no

    #lingdao段能满足我们的第3要求

    [exchage]
    comment=ExchangeFileDirectory
    path=/home/samba/exchange
    public=yes
    writable=yes

    #exchange段基本能满足我们的第4要求,但不能满足每个人不能删除别人的文件这个条件,即使里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行

    chmod-R1777/home/samba/exchange

    注意这里权限是1777,类似的系统目录/tmp也具有相同的权限,这个权限能实现每个人能自由写文件,但不能删除别人的文件这个要求

    [public]
    comment=ReadOnlyPublic
    path=/home/samba/public
    public=yes
    readonly=yes

    #这个public段能满足我们的第5要求。

    到此为止我们的设置已经能实现我们的共享文件要求,记得重启服务哦

    #/etc/rc.d/init.d/smbrestart

    如果大家没有winodws,不妨先用samba的cilent端命令来测试一下

    命令的用法我在这里只举几个例子,具体的大家去试验

    smbclient-L服务器ip-N

    guest帐户查询你的服务器的samba共享情况,你可以检验一下是否lingdao目录时候能被guest帐户看到,应该是看不到的,当然你也可以以某个用户的名义查看

    smbclient-L服务器ip-Ucaiwu01

    系统会提示密码,只要输入smb密码就行。

    smbclient//服务器ip/caiwu-Ucaiwu01

    #以caiwu01用户的名义登录caiwu目录

    smbmount//服务器ip/caiwu/mnt/caiwu-ousername=caiwu01

    #把服务器的财务目录映射到本地的/mnt/caiwu目录

    linux访问windows的共享文件
    linux可以通过Samba访问windows共享文件,如果smb的服务已经启动了的话,直接在浏览器中输入:smb://172.30.7.48/ 后就会列出共享的文件夹,然后点击一个文件夹,如果需要密码的话就会提示用户输入密码。
    Samba的概念和使用如下:
    1 Samba 简介
    Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的;
    大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器,如果架了Samba Server 后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba 服务器;
    我们在Windows网络中,看到共享文件功能知道,我们直接就可以把共享文件夹当做本地硬盘来使用。在Linux的中,就是通过Samba的向网络中的机器提供共享文件系统,也可以把网络中其它机器的共享挂载在本地机上使用;这在一定意义上说和FTP是不一样的。
    Samba 用的netbios协议,如果您用Samba 不成功,
    Linux与Windows 、Linux 和 Linux
    2 Samba 功能和应用范围
    Samba 应该范围主要是Windows和Linux 系统共存的网络中使用;如果一个网络环境都是Linux或Unix类的系统,没有必要用Samba,应该用NFS更好一点;
    那Samba 能为我们提供点什么服务呢?主要是共享文件和共享打印机;
    3 Samba 两个服务器相关启动程序、客户端及服务器配置文件等;
    3.1 Samba 有两个服务器,一个是smb,另一个是nmb;
    smb 是Samba 的主要启动服务器,让其它机器能知道此机器共享了什么;如果不打开nmb服务器的话,只能通过IP来访问,比如在Windows的IE浏览器上打入下面的一条来访问;
    \192.168.1.5\共享目录
    \192.168.1.5\opt
    而nmb是解析用的,解析了什么呢?就是把这台Linux机器所共享的工作组及在此工作组下的netbios name解析出来;
    一般的情况下,在RPM包的系统,如果是用RPM包安装的Samba ,一般可以通过如下的方式来启动Samba服务器;
    [root@localhost ~]# /etc/init.d/smb start
    启动 SMB 服务: [ 确定 ]
    启动 NMB 服务: [ 确定 ]
    如果停止呢?就在smb后面加stop ;重启就是restart
    [root@localhost ~]# /etc/init.d/smb stop
    [root@localhost ~]# /etc/init.d/smb restart
    对于所有系统来说,通用的办法就是直接运行smb 和nmb;当然您要知道smb和nmb所在的目录才行;如果是自己编译的Samba ,您应该知道您把Samba放在哪里了;
    [root@localhost ~]# /usr/sbin/smbd
    [root@localhost ~]# /usr/sbin/nmbd
    查看服务器是否运行起来了,则用下面的命令;
    [root@localhost ~]# pgrep smbd
    [root@localhost ~]# pgrep nmbd
    关掉Samba服务器,也可以用下面的办法,大多是通用的;要root权限来执行;
    [root@localhost ~]# pkill smbd
    [root@localhost ~]# pkill nmbd
    3.2 查看Samba 服务器的端口及防火墙;
    查看这个有何用呢?有时你的防火墙可能会把smbd服务器的端口封掉,所以我们应该smbd服务器所占用的端口;下面查看中,我们知道smbd所占用的端口是139和445 ;
    [root@localhost ~]# netstat -tlnp |grep smb
    tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 10639/smbd
    tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 10639/smbd
    如果您有防火墙,一定要把这两个端口打开。如果不知道怎么打开。可能你和我一样是新手,还是把防火墙规则清掉也行;
    [root@localhost ~]# iptables -F

    [root@localhost ~]# /sbin/iptables -F
    3.3、查看Samba 服务器的配置文件;
    如果我们是用Linux发行版自带的Samba软件包,一般情况下Samba服务器的配置文件都位于/etc/samba目录中,服务器的主配置文件是smb.conf;也有有户配置文件 smbpasswd、smbusers和lmhosts等(最好您查看一下这些文件的内容);还有一个文件是secrets.tdb,这个文件是 Samba 服务器启动手自动生成的;我们慢慢根据教程的进度来适当地增加这些文件的说明吧;一下子都说出来,感觉内容太多;所以只能一点一点的来了;
    3.4、Samba 在Linux 中的一些工具(服务器端和客户端);
    smbcacls smbcontrol smbencrypt smbmount smbprint smbstatus smbtree
    smbclient smbcquotas smbmnt smbpasswd smbspool smbtar smbumount
    smbd nmbd mount
    其中服务器端的是smbd、nmbd、smbpasswd ;其它的大多是客户端;这些并不是都需要一定要精通的,但至少得会用几个;比如smbmount(也就是mount 加参数的用法),还用smbclient等;
    3.5 在Linux 中的常用工具mount(smbmount)和smbclient;Windows查看Linux共享的方法;
    3.5.1 在Linux系统中查看网络中Windows共享文件及Linux中的Samba共享文件;
    一般的情况下,我们要用到smbclient;常用的用法也无非是下面的;
    [root@localhost ~]# smbclient -L //ip地址或计算机名
    这个以后慢慢补充吧;
    3.5.2 在Windows中访问Linux Samba服务器共享文件的办法;
    这个简单吧,在网上领居,查看工作组就能看得到,或者在浏览器上输入如下的
    \ip地址或计算机名\共享文件夹(不是Linux下的共享文件夹名字,定义是smb.conf配置文件中的comment ),比如\192.168.4.223\share
    这样就能看到这个机器上有什么共享的了,点鼠标操作完成;如果访问不了,不要忘记把Linux的防火墙规划清掉,或让相应的端口通过;
    3.5.3 smbfs文件系统的挂载;
    mount 的用法,加载网络中的共享文件夹到本地机;mount就是用于挂载文件系统的,SMB做为网络文件系统的一种,也能用mount挂载;smbmount说到底也是用mount的一个变种;
    mount 挂载smbfs的用法;
    mount -t smbfs -o codepage=cp936,username=用户名,password=密码 , -l //ip地址/共享文件夹名 挂载点

    mount -t smbfs -o codepage=cp936,username=用户名,password=密码 , -l //计算机名/共享文件夹名 挂载点

    mount -t smbfs -o codepage=cp936 //ip地址或计算机名/共享文件夹名 挂载点
    smbmount的用法:
    smbmount -o username=用户名,password=密码 , -l //ip地址或计算机名/共享文件夹名挂载点
    smbmount //ip地址或计算机名/共享文件夹名 挂载点
    说明:
    如果您的服务器是以share共享的,则无需用户名和密码就能挂载,如果出现要密码的提示,直接回车就行;您也可以用smbmount 来挂载,这样就无需用mount -t smbfs来指定文件系统的类型了;
    对于挂载点,我们要自己建立一个文件夹,比如我们可以建在/opt/smbhd,这由您说的算吧;
    在mount的命令中,我们发现有这样的一个参数codepage=cp936,这是服务器端文件系统的编码的指定,cp936 就是简体中文,当然您可以用utf8等,尝试一下吧。
    如果您挂载了远程的smbfs文件系统出现的是简体中文乱码,就要考虑挂载时要指定编码了;
    4、由最简单的一个例子说起,匿名用户可读可写的实现;
    第一步: 更改smb.conf
    我们来实现一个最简单的功能,让所有用户可以读写一个Samba 服务器共享的一个文件夹;我们要改动一下smb.conf ;首先您要备份一下smb.conf文件;
    [root@localhost ~]# cd /etc/samba
    [root@localhost samba]# mv smb.conf smb.confBAK
    然后我们来重新创建一个smb.conf文件;
    [root@localhost samba]#touch smb.conf
    然后我们把下面这段写入smb.conf中;
    [global]
    workgroup = LinuxSir
    netbios name = LinuxSir05
    server string = Linux Samba Server TestServer
    security = share
    [linuxsir]
    path = /opt/linuxsir
    writeable = yes
    browseable = yes
    guest ok = yes
    注解:
    [global]这段是全局配置,是必段写的。其中有如下的几行;
    workgroup 就是Windows中显示的工作组;在这里我设置的是LinuxSir
    netbios name 就是在Windows中显示出来的计算机名;
    server string 就是Samba服务器说明,可以自己来定义;这个不是什么重要的;
    security 这是验证和登录方式,这里我们用了share ;验证方式有好多种,这是其中一种;另外一种常用的是user的验证方式;如果用share呢,就是不用设置用户和密码了;
    [linuxsir] 这个在Windows中显示出来是共享的目录;
    path = 可以设置要共享的目录放在哪里;
    writeable 是否可写,这里我设置为可写;
    browseable 是否可以浏览,可以;
    guest ok 匿名用户以guest身份是登录;
    第二步:建立相应目录并授权;
    [root@localhost ~]# mkdir -p /opt/linuxsir
    [root@localhost ~]# id nobody
    uid=99(nobody) gid=99(nobody) groups=99(nobody)
    [root@localhost ~]# chown -R nobody:nobody /opt/linuxsir
    注释:关于授权nobody,我们先用id命令查看了nobody用户的信息,发现他的用户组也是nobody,我们要以这个为准。有些系统nobody用户组并非是nobody ;
    第三步:启动smbd和nmbd服务器;
    [root@localhost ~]# smbd
    [root@localhost ~]# nmbd
    第四步:查看smbd进程,确认Samba 服务器是否运行起来了;
    [root@localhost ~]# pgrep smbd
    13564
    13568
    第五步:访问Samba 服务器的共享;
    在Linux 中您可以用下面的命令来访问;
    [root@localhost ~]# smbclient -L //LinuxSir05
    Password: 注:直接按回车
    在Windows中,您可以用下面的办法来访问;
    //LinuxSir05/
    点赞收藏转发,私信一下资料可以统统带走~

    在这里插入图片描述

    展开全文
  • 1.在 Linux ,我们可以使用 mkdir 命令创建目录,mkdir 是“make directory” 的缩写词。 运行 mkdir 命令 默认情况,不带任何参数运行 mkdir 命令会在当前目录创建目录。下面是参考示例: 创建...
  • 例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件。 tar -zcvf /home/xahot.tar.gz /xahot zip 压缩方法:   压缩当前的文件夹 zip -r ./xahot.zip ./* -r表示递归 zip [参数] [打包后的文件名] ...
  • 普通用户:只能对自己目录的文件进行访问和修改 虚拟用户:特点是 不能登录,伪用户,如数据库的mysql,postgres,git的git等 Linux 用户组 系统需要让 多个用户 拥有相同的权限。 如果10个用户,需要10次太麻烦了...
  • linux下文件的复制、移动与删除命令为:cp,mv,rm 一、文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination) cp [option] source1 source2 source3 … directory 参数说明: -a:是...
  • linux上共享文件夹windows看 ******************************************* 首先给linux设一个ip,要和windows是一个网段的 mkdir /share ---------------在根创建文件夹(除了root的目录不能创建其他都...
  • linux借助find命令批量删除文件夹 介绍一下find命令语法 批量删除文件夹
  • linux根目录文件夹名字的完整含义
  • Linux 删除文件夹和文件的命令     -r 就是向递归,不管有多少级目录,一并删除 -f 就是直接强行删除,不作任何提示的意思 删除文件夹实例: rm -rf /var/log/httpd/access 将会删除/var/log/httpd/access...
  • 我是一个linux初学者,由于工作上面需要,我需要在linux中创建一个文件夹,然后自学了一点点,其实创建文件夹很简单,下面分享给大家,越努力越幸运,共勉!创建文件夹 mkdir 后面加文件夹名字 例如:mkdir aa 然后第一个...
  • 三、Linux 文件权限首先来查看一下当前目录的文件内容吧ls -l 查看当前目录的文件列表 ls -l xxx.xxx (xxx.xxx是文件名) 查看指定的文件我们可以看到文件的权限,-rw-rw-r-- ,一共有10位数。其中: 最前面...
  • linux 修改文件、文件夹所属用户用户组 # 修改文件所属用户为 www chown www testFile # 修改文件所属用户组为 www chown chgrp testFile
  • 今天要给别人一个网站的权限,我自己一般不用ftp...1:文件夹为yiyuan ,加的ftp名称为ftp7 输入Linux命令: useradd -d /alidata/www/yiyuan ftp7 2:创建ftp密码 passwd test 密码需要输入2次,最好有大小写加数字...
  • 例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件。 # tar -xf all.tar  这条命令是解出all.tar包中所有文件,-x是解开的意思 zip 压缩方法:   压缩当前的文件夹 zip
  • 1、复制文件到文件夹 cp /home/downloads/xampp-linux-x64-7.3.6-0-installer.run /opt/
  • 近日发现有一台机器tmp文件夹下放置的文件无辜丢失,而且排查发现是自动丢失,并且,只是删除10天之前的文件。 本来以为是哪位写了一个自动执行脚本, find了一下10天前的文件删除了。 结果,排查所有用户的crontab...
1 2 3 4 5 ... 20
收藏数 136,900
精华内容 54,760