linux启动服务器的命令linux启动服务器命令
我的:Linux系统查看服务器ipmi地址的命令是:
ipmitoollanprint
Ipmitool是智能平台管理接口,ipmi能够跨不同的操作系统、固件和硬件平台,可以智能地监视、控制和自动回报大量服务器的运作状况,用来降低服务器的系统成本。
这个前提是需要安装ipmitool的软件包。
安装方法是:yuminstallipmitool-y
linux启动命令?
一:启动Nginx服务--在sbin目录下
启动命令:/nginx
关闭命令:/nginx-sstop和/nginx-squit
刷新配置文件:/nginx-sreload(每次对Nginx的配置文件nginxconf修改后,都要进行重新加载配置文件)
二:进程
查看进程ps-ef|grep-ixxxx-i大概是ignore是忽略的意思这里是忽略大小写。
杀死进程kill-9xxxx
三:防火墙
开启防火墙serviceiptablesstart
关闭防火墙serviceiptablesstop
查看防火墙的状态serviceiptablesstatus
永久关闭防火墙chkconfigiptablesoff
四:启动zookeeper服务--在zookeeper的bin目录下
开启zookeeper服务:/zkServershstart
查看zookeeper状态/zkServershstatus
五:启动Redis服务--在redis的bin目录下
以后台的方式启动:/redis-server/redisconf(后面的的redisconf路径要根据每个人配置文件存放的位置来写)
进入redis命令服务:/redis-cli
输入:ping如果返回pong则表示连接成功!
六启动tomcat服务
Linux下tomcat服务的启动、关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:
切换到tomcat主目录下的bin目录(cdusr/local/tomcat/bin)
1,启动tomcat服务
方式一:直接启动/startupsh
方式二:作为服务启动nohup/startupsh
方式三:控制台动态输出方式启动/catalinashrun动态地显示tomcat后台的控制台输出信息,Ctrl+C后退出并关闭服务
解释:
通过方式一、方式三启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止,通过方式二可以作为linux服务一直运行
通过方式一、方式二方式启动的tomcat,其日志会写到相应的日志文件中,而不能动态地查看tomcat控制台的输出信息与错误情况,通过方式三可以以控制台模式启动tomcat服务,
直接看到程序运行时后台的控制台输出信息,不必每次都要很麻烦的打开catalinaout日志文件进行查看,这样便于跟踪查阅后台输出信息。tomcat控制台信息包括log4j和Systemoutprintln()等输出的信息。
2,关闭tomcat服务
/shutdownsh
七>启动数据库:
servicemysqldstart启动
servicemysqldrestart重启
如何判断linuxDHCP服务器状态/关闭/开启命令?
1查看是否设置开机启动
chkconfig--list|grepdhcpd
2查看端口是否打开
netstat-anulp|grep:67
3查看服务状态
/etc/
initd/dhcpd
status查看是否运行dhcp服务:psaux|grepdhcp|grep-vgrep
4:关闭dhcpd
/etc/
initd/dhcpd
stop5:开启hdcpd
/etc/
initd/dhcpd
start怎样在linux上使用BIND建立DNS服务器?
1、安装DNS服务器组件:安装bindyuminstall-ybindbind-chrootbind-utils
2、编辑DNS主配置文件:vi/etc/namedconf修改主配置文件
3、接着修改namedrfc1912zones文件,vi/etc/namedrfc1912zones
4、添加设置DNS正向解析:修改zone配置文件,正向解析:cd/var/named/cpnamedlocalhostszlptcnzoneviszlptcnzone(要和主配置文件里面定义的zone文件名一致)
5、修改zone配置文件,反向解析:cd/var/named/cpnamedlocalhost32168192zonevi0168192zone(要和主配置文件里面定义的zone文件名一致)
6、更改防火墙设置和selinux设置:Getenforce(查看selinux是否开启)setenforce0vi/etc/sysconfig/iptables#配置防火墙端口-AINPUT-mstate--stateNEW-mtcp-ptcp--dport53-jACCEPT-AINPUT-mstate--stateNEW-mudp-pudp--dport53-jACCEPT-AINPUT-mstate--stateNEW-mtcp-ptcp--dport953-jACCEPTserviceiptablesrestart#重启防火墙,使规则生效
7、启动DNS服(注意DNS服务名称在linux是叫做bind):servicenamedstart
8、测试检测域信息是否正常(重要):检查之前先看下配置文件有没有读取权限ll/var/named(如果没有读取全线,chmod+r/var/named/即可)
9、检查bind文件配置过程中容易出错:以下命令用以检查bind配置文件及zone文件语法named-checkconf/etc/namedconfnamed-checkzoneszlptcn/var/named/szlptcnzone
10、启动重启DNS服务,查看服务状态:servicenamedrestartservicenetworkrestart用户端测试解析,通过nslookup进行测试。
dns防护怎么做?
1授权DNS服务器限制名字服务器递归查询功能,递归dns服务器要限制递归访问的客户(启用白名单IP段)
2限制区传送zonetransfer,主从同步的DNS服务器范围启用白名单,不在列表内的DNS服务器不允许同步zone文件
allow-transfer{};
allow-update{};
3启用黑白名单
已知的攻击IP加入bind的黑名单,或防火墙上设置禁止访问;
通过acl设置允许访问的IP网段;
通过acl设置允许访问的IP网段;通过acl设置允许访问的IP网段;
4隐藏BIND的版本信息;
5使用非root权限运行BIND;
4隐藏BIND的版本信息;
5使用非root权限运行BIND;
6删除DNS上不必要的其他服务。创建一个DNS服务器系统就不应该安装Web、POP、gopher、NNTPNews等服务。
建议不安装以下软件包:
1)X-Windows及相关的软件包;2)多媒体应用软件包;3)任何不需要的编译程序和脚本解释语言;4)任何不用的文本编辑器;5)不需要的客户程序;6)不需要的其他网络服务。确保域名解析服务的独立性,运行域名解析服务的服务器上不能同时开启其他端口的服务。权威域名解析服务和递归域名解析服务需要在不同的服务器上独立提供;
7使用dnstop监控DNS流量
#yuminstalllibpcap-develncurses-devel
下载源代码http://dnsmeasurement-factorycom/tools/dnstop/src/dnstop-20140915targz
#;
9增强DNS服务器的防范Dos/DDoS功能
使用SYNcookie
增加backlog,可以一定程度减缓大量SYN请求导致TCP连接阻塞的状况
缩短retries次数:Linux系统默认的tcp_synack_retries是5次
限制SYN频率
防范SYNAttack攻击:#echo1>/proc/sys/net/ipv4/tcp_syncookies把这个命令加入/etc/rcd/rclocal文件中;
10:对域名服务协议是否正常进行监控,即利用对应的服务协议或采用相应的测试工具向服务端口发起模拟请求,分析服务器返回的结果,以判断当前服务是否正常以及内存数据是否变动。在条件允许的情况下,在不同网络内部部署多个探测点分布式监控;
11提供域名服务的服务器数量应不低于2台,建议独立的名字服务器数量为5台。并且建议将服务器部署在不同的物理网络环境中;使用入侵检测系统,尽可能的检测出中间人攻击行为;在域名服务系统周围部署抗攻击设备,应对这类型的攻击;利用流量分析等工具检测出DDoS攻击行为,以便及时采取应急措施;
12:限制递归服务的服务范围,仅允许特定网段的用户使用递归服务;
13:对重要域名的解析结果进行重点监测,一旦发现解析数据有变化能够及时给出告警提示;部署dnssec;
14建立完善的数据备份机制和日志管理系统。应保留最新的3个月的全部解析日志,并且建议对重要的域名信息系统采取7×24的维护机制保障,应急响应到场时间不能迟于30分钟。
linuxdns永久配置文件是啥?
Linux可以实现域名解析,一般需要配置这几个文件
/etc/hosts//配置本机主机名,可以省略
/etc/hostconf//必须的,本地dns客户端的配置文件
/etc/resolvconf//必须的,配置dns服务器地址
在linux系统下,如何配置DNS服务器,用域名发布网站的整个过程?
力尽不知热,但惜夏日长。
芳菲歇去何须恨,夏木阳阴正可人。
竹外桃花三两枝,春江水暖鸭先知。
寒雨连江夜人吴,平明送客楚山孤。
竹外桃花三两枝,春江水暖鸭先知。
野火烧不尽,春风吹又生。
国破山河在,城春草木深。
春种一粒粟,秋收万颗子。
如何在Linux操作系统下搭建ipv6ftp服务器?
Linux下可以配置vsftp服务来实现FTP的部署。
配置支持ipv6地址的服务只要启用listen_ipv6=yes将ipv6的监听设置开启即可。
当然具体配置没有那么简单,比如设置用户权限拉,部署过程中出现错误和排错拉。最好百度一下配置说明。
如何在自己的linux服务器上搭建网站?
首先需要基本的linux系统知识,在linux系统之上安装web服务组件诸如LAMPLNMPTengine等等,然后需要基本的前/后端语言知识,比如htmlphpcssjs等将网站代码防治到已经架设好的web服务器上就可以实现访问了,最后注册一个域名做好域名解析。
一、查看网络配置
确保网络配置的正确性及网络连接的畅通是Linux系统作为服务器应用的基础,查看及测试网络配置是管理Linux网络服务的第一步。
1ifconfig——查看网络配置
1) 查看所有活动网络接口的信息
执行 ifconfig 或ip addr或ip a命令,都可以显示当前主机中已启用(活动)的网络接口信息。、
2) 查看指定网络接口信息
格式:ifconfig 网络接口名
可以通过TX、RX等信息了解到通过该网络接口发送和接收的数据包个数,流量等跟多属性。
2hostname命令
在Linux系统中,相当一部分网络服务都会通过主机名来识别本机,如果主机名配置不当,可能会导致程序功能出现故障。
1) 查看主机名
使用hostname命令就可以查看当前主机的主机名,不添加任何选项参数。
2) 临时更改主机名
hostname NewName
注:这种方法只是临时的更改主机名,重启后将失效。
3) 永久更改主机名
a 修改配置文件
RHEL6和7的配置文件存放路径不相同,修改配置文件中的主机名,重启就可永久更改主机名。
RHEL6主机名配置文件路径为:/etc/sysconfig/network
RHEL7主机名配置文件路径为:/etc/hostname
示例
b 使用命令修改(这种方法只适用于RHEL7或者CentOS7之后)
命令格式:
使用该命令更改后,更改后的主机名就自动写入了配置文件中,所以可以永久更改主机名,其实就是修改了配置文件。
3route命令
直接执行route命令可以查看当前主机中的路由表信息,若结合“-n”选项使用,可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度。
Destination列对应的是目标网段的地址,Gateway列对应的是吓一跳路由器的地址,Iface列对应的是发送数据的网络接口。当目标网段为“default”是,表示此行是默认网关记录,当吓一跳为“”是,表示目标网段是与本机直接相连的。
4netstat命令——查看系统的网络连接状态等
netstat命令是了解网络状态及排除网络服务故障的有效工具。
常用选项:
-a:显示所有活动连接(包括监听、非监听状态的服务端口)
-n:以数字形式显示
-p:显示相关的进程信息
-t:查看 TCP 协议相关信息
-u:查看UDP协议相关信息
-r:显示路由表信息
-l:显示处于监听(listening)状态的网络连接及端口信息
通常使用“-anput”组合选项,结合管道使用“grep”命令,来查看一些服务的端口是否开启。
示例:
Tcp21为ftp服务的端口
二、测试网络连接
1ping命令——测试网络连通性
常用选项:
-c<完成次数>:设置完成要求回应的次数
-i<间隔秒数>:指定收发信息的间隔时间
-q:不显示指令执行过程,开头和结尾的相关信息除外
-s<数据包大小>:设置数据包的大小
-t<存活数值>:设置存活数值TTL的大小
-v:详细显示指令的执行过程
若返回“Destination Host Unreachable”的反馈信息,则表示目标主机不可达,可能目标地址不存在或主机已关闭;返回“Network is unreachable”的反馈信息,则表示没有可用的路由记录(如默认网关),无法到达目标主机所在的网络;返回“Request timeout”的反馈信息,表示与目标主机间的连接超时(数据包缓慢或丢失),若有严格的防火墙限制,也可能返回此信息。
2traceroute命令——跟踪数据包的路由途径
使用traceroute命令可以测试从当前主机到目的主机之间经过的网络节点,并显示各中间结点的连接状态(响应时间)。对于无法响应的节点,连接状态将显示为“”。
示例:traceroute IP_ADDR
在网络测试与排错的过程中,通常会先使用ping命令测试与主机的网络连接,如果发现网络有故障,再使用traceroute命令跟踪查看是在哪个中间结点存在故障。
3nslookup命令——测试DNS域名解析
nslookup是用来测试(DNS)域名解析的专用工具。(DNS服务后面再详细讲解,通俗的说就是将域名解析为ip地址的一个服务)
示例:nslookup wwwbaiducom
若成功反馈要查询域名的IP地址,则表示域名解析没有问题;若出现“ no servers could be reached”的信息,表示不能连接到指定的DNS服务器;若出现“ cant’t find xxxyyyzzz:NXDOMAIN”的信息,表示要查询的域名不存在。
三、设置网络地址参数
设置网络参数的方法:
• 临时配置 —— 使用命令调整网络参数简单、快速,可直接修改运行中的网络参数
一般只适合在调试网络的过程中使用
系统重启以后,所做的修改将会失效
• 永久配置 —— 通过配置文件修改网络参数修改各项网络参数的配置文件
适合对服务器设置固定参数时使用
需要重载网络服务或者重启以后才会生效
1临时配置——使用网络配置命令(注:RHEL6中网络接口的名称为eth,RHEL7中为ens)
1)使用ifconfig命令修改网卡的地址、状态
ifconfig命令不仅可以用于查看网卡配置,还可以修改网卡的ip地址,子网掩码,也可以绑定网络接口、激活或停用网络接口
a 修改网卡的ip地址(临时修改)
命令格式:
示例:
b 禁用或者重新激活网卡
命令格式:
示例:
c 设置虚拟网络接口(相当于一块网卡配置多个IP地址)
命令格式:
示例:
可以根据需要添加更多的虚拟接口,如“eth0:1”“eth0:2”等
2)使用route命令添加、删除静态路由记录
• 删除路由表中的默认网关记录命令格式:route del default gw IP地址
• 向路由表中添加默认网关记录命令格式:route add default gw IP地址
• 添加到指定网段的路由记录命令格式:route add -net 网段地址 gw IP地址
• 删除到指定网段的路由记录命令格式:router del -net 网段地址
2永久配置——修改网络配置文件
1)网络接口配置文件
网络接口的配置文件默认位于目录“/etc/sysconfig/network-scripts/”中,文件名格式为:“ifcfg-XXX”,其中“XXX”是网络接口的名称。例如:RHEL6中网卡eth0的配置文件是“ifcfg-eth0”,而RHEL7中网卡ens33的配置文件是“ifcfg-ens33”。
在网卡的配置文件中,可以看到静态IP地址的部分内容如下图所示:
上述个配置项的含义及作用:(图示为RHEL6中的配置文件,7中也差不多,换汤不换药,修改的都差不多)
• DEVICE:设置网络接口的名称ONBOOT:设置网络接口是否在Linux系统启动时激活BOOTPROTO:设置网络接口的配置方式,值为static时表示使用静态ip地址,为dhcp时表示通过dhcp的方式动态获取ip地址IPADDR:设置网络接口的ip地址NETMASK:设置网络接口的子网掩码GATEWAY:设置网络接口的默认网关地址2)重启 network 网络服务
当修改了网络接口的配置文件以后,若要使新的配置生效,可以重启network服务或者重启主机或者禁用、启用网络接口。
示例:
• RHEL6中重启network服务:service network restartRHEL7中重启network服务:systemctl restart network注:这是我在做实验时候的一个经验:RHEL6修改完网卡配置重启后,ip地址仍然没有改过来,这时候我们经常会删除“/etc/udev/rulesd/70-persistent-netrules”这个文件。RHEL7不用管,RHEL7特别好改,RHEL6改的时候特别难受。(个人提示,不求认同)
3)域名解析配置文件
a指定为本机提供DNS解析的服务器地址
/etc/resolvconf文件中记录了本机默认使用的DNS服务器的地址信息,对该文件所做的修改将会立刻生效。Linux系统中最多可以指定3个(第3个以后将被忽略)不同的DNS服务器地址,优先使用第1个DNS服务器。
示例:
其中“search localdomain”用来设置默认的搜索域(域名后缀)。例如,当访问主机“localhost”时,就相当于访问“localhostlocaldomain”。
b本地主机映射文件
/etc/hosts文件中记录着一份主机名与ip地址的映射关系表,一般用来保存经常访问的主机信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到在去向DNS服务器查询。
hosts 文件和 DNS 服务器的比较
• 默认情况下,系统首先从 hosts 文件查找解析记录hosts 文件只对当前的主机有效hosts 文件可减少 DNS 查询过程,从而加快访问速度
在介绍CVS命令之前,先说点别的
如以前说,仓库内除乐源文件外,还包括一系列的管理文件位于$CVSROOT/CVSROOT
修改管理文件的方法等同于源代码文件,利用CVS命令提取和修改
下面描述每个文件的用途:
checkoutlist 支持CVSROOT目录的其它管理文件,允许为各种CVS命令定置信息
commitinfo 在cvs commit命令执行时,这个文件指定乐文件提交时执行的命令
cvswrappers 定义乐一个包装程序当文件登记或检取时就会执行
editinfo 允许你在commit命令启动前在日志信息被记录后执行的脚本
history 跟踪所有影响仓库的命令
loginfo 类似coimmitinfo, 只是在文件提交后执行
modules 允许为一组文件定义一个符号,否则必须为每一个要引用的文件
指定部分路径名(相对于$CVSROOT)
nitify 控制从/"watch/"来的通知/"watch/"由/"cvs watch add/"和/"cvs edit/"
设置
rcsinfo 为commit log回话指定一个模板
taginfo 定义乐在任意/"tag/"操作后执行的程序
CVS服务器的安装
默认情况下,CVS在Redhat Linux中已经安装,这一点可以通过在Linux命令行的情况下运行:
代码如下:
rpm –q cvs
如果出现CVS的版本信息就证明已经安装成功了。
CVS服务器安装包可以从网上的很多地方下载,也可以到CVS的官方网站进行下载。根据你所使用的系统,下载相应的版本,然后进行安装。因为我们的项目是在Redhat Linux下使用CVS服务器进行版本管理,所以本文将主要基于Redhat Linux进行介绍。首先下载CVS服务器的rpm包,当然也可以下载其它方式的包如源程序包,然后采用以下命令进行安装:
代码如下:
rpm -ivh cvs-1117-1i386rpm
CVS服务器的配置
安装完之后的第一件事就是要配置CVS服务器的配置文件,使其能正常的工作。首先在/etc/services文件中添加cvspserver,使其成为Linux的一种服务也就是cvs服务器例程的入口,配置如下:
cvspserver 2401/tcp # cvs client/server operations
cvspserver 2401/udp # cvs client/server operations
如果文件中已经存在上面的两行文字,就不用添加了。
配置xinetd,用xinetd来启动CVS验证服务器:
进入到/etc/xinetdd/目录,然后编辑一个文本文件,名字一定要与/etc/services中的入口名字cvspserver一致,所以这里用cvspserver作为文件名,文件的内容如下所示:
代码如下:
service cvspserver
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/usr/cvsroot pserver
log_on_failure += USERID
}
编辑文件之后测试cvspserver服务是否配置成功。
执行
代码如下:
/etc/initd/xinetd restart
重新启动服务,启动成功之后,执行下面的语句,验证服务是否启动正常:
代码如下:
telnet localhost 2401
如果出现如下字样:
Trying 127001
Connected to localhost
Escape character is '^]'
输入hi,会继续输出如下字样
cvs [pserver aborted]: bad auth protocol start: hi
Connection closed by foreign host
出现以上的现象表示CVS用户验证服务器已经配置成功。
如果出现如下字样,表示配置不成功,请重新检查以上的配置:
Trying 127001
telnet: connect to address 127001: Connection refused
CVS的环境变量
CVS使用乐几个环境变量
CVSROOT 仓库根目录的完整路径名
CVSREAD 如果设置,表明在checkout操作时所有的文件都置成只读
CVSBIN CVS利用乐很多RCS的命令,指定乐RCS工具的路径
CVSEDITOR 指定用户书写日志信息所使用的编辑器
CVS_RSH 启动一个远程CVS服务器时,所使用的shell的名称
CVS_SERVER 决定/"cvs server/"的名字,缺省是CVS
CVSWRAPPERS cvswrapper脚本, 用来指定包装文件名
关键字
管理源文件的一种技术叫/"关键字替换/"在每次执行/"cvs commit/"操作后
源文件的某些关键字会被替换为可用的词
$AUTHOR$ 用户名
$Data$ 登记时的时间
$Header$ 标准的首部,包含RCS的完整路径名,日期,作者
$Id$ 除RCS文件名不完整外与$Header$同
$Log$ 包含RCS的完整路径名,版本号,日期,作者和在提交时提供的日志信息
$RCSfile$ 包含RCS的文件名,不包括路径名
$Revision$ 分配的版本号
$Source$ RCS文件的完整名
$State$ 分配的版本的状态,由 cvs admin -s 分配
例:
在cvs commit之前,mainc里有
static char rcsid=/"$Id$/";
执行cvs commit后
mainc的改行变为:
static char rcsid=/"$Id: mainc,v 12 1999/04/29 15:10:14 trimblef Exp$/";
下面开始说说CVS的命令
我们已下面仓库的数据为例
$CVSROOT
--CVSROOT
--project
--src
--main
--mainc
--mainh
--printc
--printh
--term
--termc
--termh
CVS checkout 命令
从仓库提取指定的文件到当前目录,并建立同样的结构,并创建CVS目录
例
代码如下:
bash$ cvs checkout project
bash$ cvs checkout project/src/main
为使用便利,我们可以对一个目录建一个缩写,方法是修改$CVSROOT/CVSROOT/下的
modules文件(当然是用cvs 命令完成)
代码如下:
cvs checkout CVSROOT/modules
cd CVSROOT
vi modules
我们在文件尾加上
代码如下:
src project/src
print project/src/print
cvs commit
以后我们就可以用cvs checkout print来代替
cvs checkout project/src/print
cvs checkout命令缺省是得到最新版本我们也可以得到某一个老版本
代码如下:
cvs checkout -r 11 print
将print的11版的代码取出
cvs checkout的详细用法见cvs -H checkout的输出
CVS commit 命令
在对文件的修改完成后,用cvs commit提交到仓库
代码如下:
cvs commit -m /"Update by xxxxx/" project
cvs commit -m /"Update mainc/" mainc
提交完成后,当前的版本号会更新,如原来为11,现为12 这两个版本都在
仓库的主干(maintrunk)上
-m选项可以记录有关提交的注释如果没有指定-m选项,在环境变量CVSEDITOR
中指定的编辑器被调用(vi是缺省的),提示键入文本,修改记录注释
CVS update
CVS允许多人同时对一个文件进行修改
假设泥正在修改文件的一部分,现想合并更新自己的本地拷贝(checkout)和
另一个人所做的修改(已经放在仓库里),可用cvs update
代码如下:
cvs update
CVS tag , CVS rtag
创建分支可以使用户对一些文件进行修改而不会影响主干(当commit时)
创建分支首先为拟修改的某些文件创建一个标签(tag),标签是赋于一个文件或一组文件的符号在源代码的生命周期里,组成一组模块的文件被赋于相同的标签
创建标签:在工作目录里执行cvs tag
例: 为src创建标签:
代码如下:
cvs checkout src
cvs tag release-1-0
标签创建后, 就可以为其创建一个分支:
代码如下:
cvs rtag -b -r release-1-0 release-1-0-path print
-b :创建分支
-r release-1-0 :指定存在的标签
releas-1-0-patch:分支
print: 模块名
合并
使用cvs update -j 选项可以将分支上的改变与本地文件拷贝合并
代码如下:
cvs update -j release-1-0 printc
cvs release
对源文件作必要修改后, 可以用cvs release 删除本地工作拷贝
并通知其他开发者这个模块不再使用
代码如下:
cvs release -d print
-d : 删除
print: 目录
冲突
由于CVS允许多人同时修改同一文件,冲突是不可避免的例如当两人
同时修改同一文件的同一行时
这时,如用cvs update 更新,CVS检测到冲突的存在,它会将冲突的代码
用/"/"标识这时需手工处理这段代码与引起
冲突的开发者协商,并对文件修改后即可用cvs commit提交
0条评论