设为首页 收藏本站
查看: 1556|回复: 0

[经验分享] VSFTP安装配置

[复制链接]

尚未签到

发表于 2015-11-6 14:46:52 | 显示全部楼层 |阅读模式
1、VSFTP简介
    VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
  安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。
  在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。
  在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器(ftp.redhat.com)的数据,VSFTP服务器可以支持15000个并发用户。

2、VSFTP安装及配置
  安装该软件需要使用最高用户(root)进行安装,否则不能进行。
  
DSC0000.png

2.1 安装
  首先用命令检查VSFTP是否已经安装。
  
  chkconfig –list | grep vsftpd
  
  显示结果如下,没有任何反应,说明没有安装VSFTP。
  
DSC0001.png
  
  接着使用yum命令直接安装
  
  yum –y install vsftpd
  
DSC0002.png
  
  上图中表示正在下载,需要耐心等一下,如果网络不畅通,也可能需要下载失败,不过不要担心,只要在重新提交一次命令就行。
  
DSC0003.png
  
  从上面的结果中看出,已经成功安装。然后为它创建日志文件:
  
  touch /var/log/vsftpd.log
  
DSC0004.png
  
  这样简单的两个命令就完成了vsftp的安装,但是如果你现在想这样ftp://your_ip来访问的话,那还不行,还需要配置权限!

2.2 启动与配置自启动
  再次使用"chkconfig –list | grep vsfpd"来查看vsftpd服务启动项情况;
  如果看到的是如下显示的结果:
  
DSC0005.png
  
  服务全部都是关闭(off)的,注意这里的关闭(off)表示的是服务器启动的时候是否会自启动服务,我们使用如下命令来配置其自启动:
  
  chkconfig vsftpd on
  
  或者
  
  chkconfig –level 2345 vsftpd on
  
  执行结果如下:
  
DSC0006.png
  
  查看与管理ftp服务:
  
  启动ftp服务:service vsftpd start
  查看ftp服务状态:service vsftpd status
  重启ftp服务:service vsftpd restart
  关闭ftp服务:service vsftpd stop
  
2.3 配置vsfpd服务
  编辑/etc/vsftpd/vsftpd.conf文件,配置vsftp服务:
  
  vim /etc/vsftpd/vsftpd.conf
  
DSC0007.png
  
  上图中先显示出"/etc/vsftpd"下面有哪些文件,然后在用"vim"编辑器进行修改。
  
  先按键盘上的"a"就可以进行编辑了,按照下面进行操作。
  
  anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许
  xferlog_file=/var/log/vsftpd.log #设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来
  #idle_session_timeout=600 --> idle_session_timeout=600 //会话超时,客户端连接到ftp但未操作,默认被注释掉,可根据个人情况修改
  #async_abor_enable=YES --> async_abor_enable=YES //支持异步传输功能,默认是注释掉的,去掉注释
  #ascii_upload_enable=YES --> ascii_upload_enable=YES //支持ASCII模式的下载功能,默认是注释掉的,去掉注释
  #ascii_download_enable=YES --> ascii_download_enable=YES //支持ASCII模式的上传功能,默认是注释掉的,去掉注释
  #ftpd_banner=Welcome to blah FTP service //FTP的登录欢迎语,本身是被注释掉的,去不去都行
  #chroot_local_user=YES --> chroot_local_user=YES
  //禁止本地用户登出自己的FTP主目录,本身被注释掉,去掉注释
  
  下面几个都是已经去掉的,只是写出来,明白其用意。
  
  local_enable=YES //允许本地用户访问,默认就是YES,不用改
  write_enable=YES //允许写入,默认是YES,不用改
  local_umask=022 //上传后文件的权限掩码,不用改
  dirmessage_enable=YES //开启目录标语,默认是YES,开不开无所谓,我是默认就行
  xferlog_enable=YES //开启日志,默认是YES,不用改
  connect_from_port_20=YES //设定连接端口20
  xferlog_std_format=YES //设定vsftpd的服务日志保存路径,不用改
  
  pam_service_name=vsftpd //设定pam服务下vsftpdd的验证配置文件名,不用改
  userlist_enable=YES //拒绝登录用户名单,不用改
  TCP_wrappers=YES //限制主机对VSFTP服务器的访问,不用改(通过/etc/hosts.deny和/etc/hosts.allow这两个文件来配置)
  
  按照上面修改完之后,按键盘"Esc"退出编辑,再按":",并在后面输入"wq",进行保存并退出。
  
2.4 配置iptables防火墙
  按照以上步骤还不能运行,用下面命令可以查看一下防火墙允许的端口号,我们知道ftp的端口号是"20、21",从结果中可以看出,并没有。
  
  service ipstables status
  
DSC0008.png
  
  这时需要对"/etc/sysconfig/iptables"进行配置:
  
  vim /etc/sysconfig/iptables
  
DSC0009.png
  
  上图中先列出以"iptables"模糊比配的文件,然后在用上面的命名对"iptables"文件进行添加下面的内容。
  
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
  
  具体的添加操作命令和前面对"/etc/vsftpd/vsftpd.conf"的操作一样。
  
DSC00010.png
  
2.5 设置selinux问题
    SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux史上最杰出的新安全子系统。SELinux 是 2.6 版本的 Linux 内核中提供的强制访问控制 (MAC)系统。对于目前可用的 Linux 安全模块来说,SELinux 是功能最全面,而且测试最充分的,它是在 20 年的 MAC 研究基础上建立的。SELinux 在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念SELinux提供了比传统的UNIX权限更好的访问控制。
  正式如此,所以此时还不能访问FTP服务器。用下面命令查询:
  
  getsebool -a | grep ftp
  
DSC00011.png
  
  可以通过下面命令把上图中红色圈住的两个的值设置为"on"。
  
  setsebool -P ftp_home_dir 1
  setsebool -P allow_ftpd_full_access 1
  
DSC00012.png
  
2.6 重启相关服务
  最后就是把"vsftpd"和"iptables"两个服务重新启动一下。
  
  service vsftpd restart
  
DSC00013.png
  
  如果出现下图,说明刚才没有把vsftpd服务启动起来。
  
  service vsftpd start
  
DSC00014.png
  
  最后把防火墙重新启动一下。
  service iptables restart
  
DSC00015.png
  
  到此为止FTP服务器就搭建完毕了,下面可以通过"FlashFXP.exe"软件进行访问了。

3、FlashFXP使用

3.1 FlashFXP简介
  
DSC00016.png   FlashFXP是一款功能强大的FXP/FTP软件,集成了其它优秀的FTP软件的优点,如CuteFTP的目录比较,支持彩色文字显示;如BpFTP支持多目录选择文件,暂存目录;又如LeapFTP的界面设计。支持目录(和子目录)的文件传输,删除;支持上传,下载,以及第三方文件续传;可以跳过指定的文件类型,只传送需要的本件;可自定义不同文件类型的显示颜色;暂存远程目录列表,支持FTP代理及Socks3&4;有避免闲置断线功能,防止被FTP平台踢出;可显示或隐藏具有"隐藏"属性的文档和目录;支持每个平台使用被动模式等。
  
DSC00017.png


  上图为FlashFXP开启界面,左面是显示的"本地文件系统",后面是显示"服务器文件系统",点击右侧上面的闪电图标 DSC00018.png ,按照下图选择"QuickConnect"。
  
DSC00019.png

  点击之后出现下图,并按照下图进行填写。例如:
  
DSC00020.png

  

3.2 示例上传
  
DSC00021.png


  链接成功后,会显示上面的内容,可以尝试把左边的一个文件拖到右边,就能上传了,我们现在试一下。
  
DSC00022.png
  
  最后登录一下看看是否在linux下面有这个文件。
  
DSC00023.png
  
  从上图中发现了我们刚才上传的文件"SqlHelper1.cs"文件,好了,到此为止,我们的Linux下的FTP服务器基本完成了, 但是离真正的FTP服务器还差的很远,因为我们只是用于"远程上传"点文件,所以基本能满足我们的需要。

4、用到的Linux命令
4.1 chkconfig命令详解
    chkconfig命令主要用来更新启动停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
  
    使用语法:
  
  chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
  
  chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfig会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。
  
    参数用法:
  
  --add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
  --del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
  --level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。
  
  等级0表示:表示关机
  等级1表示:单用户模式
  等级2表示:无网络连接的多用户命令行模式
  等级3表示:有网络连接的多用户命令行模式
  等级4表示:不可用
  等级5表示:带图形界面的多用户模式
  等级6表示:重新启动
  
  需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。
  
  chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
  chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
  chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
  chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。
  
    运行级文件:
  
  每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
  
  例如,random.init包含三行:
  # chkconfig: 2345 20 80
  # description: Saves and restores system entropy pool for \
  # higher quality random number generation.
  
    使用范例:
  
  chkconfig --list #列出所有的系统服务
  chkconfig --add httpd #增加httpd服务
  chkconfig --del httpd #删除httpd服务
  chkconfig --level httpd 2345 on #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
  chkconfig --list #列出系统所有的服务启动情况
  chkconfig --list mysqld #列出mysqld服务设置情况
  chkconfig --level 35 mysqld on #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
  chkconfig mysqld on #设定mysqld在各等级为on,&quot;各等级&quot;包括2、3、4、5等级
  
    如何增加一个服务:
  
  1.服务脚本必须存放在/etc/ini.d/目录下;
  2.chkconfig --add servicename
  在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
  3.chkconfig --level 35 mysqld on
  修改服务的默认启动等级。

4.2 yum命令详解
    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
  
  yum的命令形式一般是如下:yum [options] [command] [package ...]
  
  其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为&quot;yes&quot;),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。
  
    概括了部分常用的命令包括:
  
  自动搜索最快镜像插件: yum install yum-fastestmirror
  安装yum图形窗口插件: yum install yumex
  查看可能批量安装的列表: yum grouplist
  
    1 安装
  
  yum install 全部安装
  yum install package1 安装指定的安装包package1
  yum groupinsall group1 安装程序组group1
  
    2 更新和升级
  
  yum update 全部更新
  yum update package1 更新指定程序包package1
  yum check-update 检查可更新的程序
  yum upgrade package1 升级指定程序包package1
  yum groupupdate group1 升级程序组group1
  
    3 查找和显示
  
  yum info package1 显示安装包信息package1
  yum list 显示所有已经安装和可以安装的程序包
  yum list package1 显示指定程序包安装情况package1
  yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
  
    4 删除程序
  
  yum remove package1 删除程序包package1
  yum groupremove group1 删除程序组group1
  yum deplist package1 查看程序package1依赖情况
  
    5 清除缓存
  
  yum clean packages 清除缓存目录下的软件包
  yum clean headers 清除缓存目录下的 headers
  yum clean oldheaders 清除缓存目录下旧的 headers
  yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
  
  比如,要安装游戏程序组,首先进行查找:
  #:yum grouplist
  可以发现,可安装的游戏程序包名字是&quot;Games and Entertainment&quot;,这样就可以进行安装:
  #:yum groupinstall &quot;Games and Entertainment&quot;
  所 有的游戏程序包就自动安装了。在这里Games and Entertainment的名字必须用双引号选定,因为linux下面遇到空&#26684;会认为文件名结束了,因此必须告诉系统安装的程序包的名字是&quot;Games and Entertainment&quot;而不是&quot;Games&quot;。
  
  此外,还可以修改配置文件/etc/yum.conf选择安装源。可见yum进行配置程序有多方便了吧。更多详细的选项和命令,当然只要在命令提示行下面:man yum

4.3 SELinux两个命令
  getsebool与setsebool工具
  
  说明:SELinux规范了许多boolean数&#20540;清单档案,提供开启或关闭功能存取项目,而这些&#20540;都存放在/selinux/booleans/目录内相关档案,这些档案里的&#20540;只有两种:1(启用)或 0(关闭)
  
    1)getsebool
  
  说明:列出所有selinux bool数&#20540;清单表与内容
  使用方式:getsebool [ -a ]
  例如以下范例:
  
  #getsebool ftpd_disable_trans
  ftpd_disable_trans –> off
  #getsebool -a
  NetworkManager_disable_trans –> off
  allow_cvs_read_shadow –> off
  allow_daemons_dump_core –> on
  allow_daemons_use_tty –> off
  allow_execheap –> off
  allow_execmem –> on
  allow_execmod –> off
  ………
  
  2)setsebool
  
  说明:设定selinux bool数&#20540;清单表与内容
  使用方式:setsebool [ -P ] boolean value | bool1=val1 bool2=val2 bool3=val3……
  参数配置: -P表示设定该项目永久套用
  使用范例:
  setsebool ftpd_disable_trans=on ( on 或者 1 )
  setsebool -P ftpd_disable_trans=off ( off 或者 0 )
  

4.4 vim命令详解
  vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。
  
    1、vi的基本概念
  
  基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
  1) 命令行模式command mode)
  控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
  
  2) 插入模式(Insert mode)
  只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
  
  3) 底行模式(last line mode)
  将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
  不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
  
  2、vi的基本操作
  
  a) 进入vi
  在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
  
  $ vi myfile
  
  不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
  
  b) 切换至插入模式(Insert mode)编辑文件
  在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
  
  c) Insert 的切换
  您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
  
  d) 退出vi及保存文件
  在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
  
  : w filename (输入 「w filename」将文章以指定的文件名filename保存)
  : wq (输入「wq」,存盘并退出vi)
  : q! (输入q!, 不存盘强制退出vi)
  
  3、命令行模式(command mode)功能键
  
  1)插入模式
  按「i」切换进入插入模式「insert mode」,按&quot;i&quot;进入插入模式后是从光标当前位置开始输入文件;
  按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
  
  2)从插入模式切换为命令行模式
  按「ESC」键。
  
  3)移动光标
  vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一&#26684;。
  
  按「ctrl」&#43;「b」:屏幕往&quot;后&quot;移动一页。
  按「ctrl」&#43;「f」:屏幕往&quot;前&quot;移动一页。
  按「ctrl」&#43;「u」:屏幕往&quot;后&quot;移动半页。
  按「ctrl」&#43;「d」:屏幕往&quot;前&quot;移动半页。
  按数字「0」:移到文章的开头。
  按「G」:移动到文章的最后。
  按「$」:移动到光标所在行的&quot;行尾&quot;。
  按「^」:移动到光标所在行的&quot;行首&quot;
  按「w」:光标跳到下个字的开头
  按「e」:光标跳到下个字的字尾
  按「b」:光标回到上个字的开头
  按「#l」:光标移到该行的第#个位置,如:5l,56l。
  
  4)删除文字
  「x」:每按一次,删除光标所在位置的&quot;后面&quot;一个字符。
  「#x」:例如,「6x」表示删除光标所在位置的&quot;后面&quot;6个字符。
  「X」:大写的X,每按一次,删除光标所在位置的&quot;前面&quot;一个字符。
  「#X」:例如,「20X」表示删除光标所在位置的&quot;前面&quot;20个字符。
  「dd」:删除光标所在行。
  「#dd」:从光标所在行开始删除#行
  
  5)复制
  「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
  「#yw」:复制#个字到缓冲区
  「yy」:复制光标所在行到缓冲区。
  「#yy」:例如,「6yy」表示拷贝从光标所在的该行&quot;往下数&quot;6行文字。
  「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与&quot;y&quot;有关的复制命令都必须与&quot;p&quot;配合才能完成复制与粘贴功能。
  
  6)替换
  「r」:替换光标所在处的字符。
  「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
  
  7)回复上一次操作
  「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次&quot;u&quot;可以执行多次回复。
  
  8)更改
  「cw」:更改光标所在处的字到字尾处
  「c#w」:例如,「c3w」表示更改3个字
  
  9)跳至指定的行
  「ctrl」&#43;「g」列出光标所在行的行号。
  「#G」:例如,「15G」,表示移动光标至文章的第15行行首。
  
    4、Last line mode下命令简介
  
  在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line mode」。
  
  A) 列出行号
  「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。
  B) 跳到文件中的某一行
  「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。
  C) 查找字符
  「/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
  「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。
  D) 保存文件
  「w」:在冒号输入字母「w」就可以将文件保存起来。
  E) 离开vi
  「q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。
  「qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。
  
    5、vi命令列表
  
    1、下表列出命令模式下的一些键的功能:
  
  h         左移光标一个字符
  l         右移光标一个字符
  k         光标上移一行
  j         光标下移一行
  ^         光标移动至行首
  0         数字&quot;0&quot;,光标移至文章的开头
  G         光标移至文章的最后
  $         光标移动至行尾
  Ctrl&#43;f     向前翻屏
  Ctrl&#43;b     向后翻屏
  Ctrl&#43;d     向前翻半屏
  Ctrl&#43;u     向后翻半屏
  i         在光标位置前插入字符
  a         在光标所在位置的后一个字符开始增加
  o         插入新的一行,从行首开始输入
  ESC     从输入状态退至命令状态
  x         删除光标后面的字符
  #x         删除光标后的#个字符
  X         (大写X),删除光标前面的字符
  #X         删除光标前面的#个字符
  dd         删除光标所在的行
  #dd     删除从光标所在行数的#行
  yw         复制光标所在位置的一个字
  #yw     复制光标所在位置的#个字
  yy         复制光标所在位置的一行
  #yy     复制从光标所在行数的#行
  p         粘贴
  u         取消操作
  cw         更改光标所在位置的一个字
  #cw     更改光标所在位置的#个字
  
    2、下表列出行命令模式下的一些指令
  
  w filename     储存正在编辑的文件为filename
  wq filename     储存正在编辑的文件为filename,并退出vi
  q!             放弃所有修改,退出vi
  set nu         显示行号
  /或?         查找,在/后输入要查找的内容
  n             与/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。
  
  对于第一次用vi,有几点注意要提醒一下:
  
  1、用vi打开文件后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
  2、编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按「ESC」键。
  3、保存并退出文件:在命令模式下输入:wq即可!(别忘了wq前面的:)

4.5 touch命令详解
    linux中新建文件命令touch用法详解:
  
  linux中的touch命令一般用来修改文件的时间,或者新建一个不存在的文件。
  
    语法如下:
  
  touch [-acm][-r ref_file(参照文件)|-t time(时间&#20540;)] file(文件名)
  
    例子:
  
  touch file1.txt 更新file1.txt的存取和修改时间
  touch -c file1.txt 如果file1.txt不存在,不创建文件
  touch -r ref_file file1.txt 更新file1.txt的时间戳和ref&#43;file相同
  touch -t 0911252234.40 file1.txt 设定文件的时间为09年11月25日22点34分40秒
  
    个参数说明如下:
  
  -a          修改文件 file 的存取时间.
  -c          不创建文件 file.
  -m          修改文件 file 的修改时间
  -r ref_file 将参照文件 ref_file 相应的时间戳记的数&#20540;作为指定文件 file 时间戳记的新&#20540;.
  -t time      使用指定的时间&#20540; time 作为指定文件 file 相应时间戳记的新&#20540;.此处的 time 规定为如下形式的十进制数∶ [[CC]YY]MMDDhhmm[.SS]
  这里,CC为年数中的前两位,即&quot;世纪数&quot;;YY为年数的后两位,即某世纪中的年数.如果不给出CC的&#20540;,则touch 将把年数CCYY限定在1969--2068之内.MM为月数,DD为天将把年数CCYY限定在1969--2068之内.MM为月数,DD为天数,hh 为小时数(几点),mm为分钟数,SS为秒数.此处秒的设定范围是0--61,这样可以处理闰秒.这些数字组成的时间是环境变量TZ指定的时区中的一个时 间.由于系统的限制,早于1970年1月1日的时间是错误的。
  
         版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-136014-1-1.html 上篇帖子: VSFTP 配置 下篇帖子: CentOS Vsftp 安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表