linux操作常用命令

Linux服务器对论对于前端还是后端,无论对测试还是运维都是需要了解的内容,我在日常工作中整理收集了一个《linux常用操作》的文档,用来辅助日常工作,我们不可能记住所有内容,不用时就有可能忘掉,记录下来可以随时查阅。这个系列会把文档里的内容发布出来,希望对大家有所帮助。
设置linux密码
设置密码passwd重启reboot 强制关机shutdown now
iptables操作

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT    #开启mysql的3306端口
/etc/rc.d/init.d/iptables                               #保存
/etc/rc.d/init.d/iptables restart                         #重启服务
/etc/rc.d/init.d/iptables start/stop 启动或停止防火墙
/etc/rc.d/init.d/iptables stuts     查看当前状态
service iptables start/stop       启动或停止防火墙(重启失效)

开启端口的号一种方式:

vim /etc/sysconfig/iptables添加:
-A RH -Firewall -l -INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
**设置服务器时间**
date -s 5/12/14
date -s 13:12:00
**设置SHELL背景和前景色**
echo –e  “\e[30mtest\e[47m”           背景为灰色,字符为黑色
\e[30m黑色 \e[31m红色 \e[32m绿色 \e[33m淡红色 \e[34m蓝色 
\e[35m紫色 \e[36m淡蓝色 \e[37m灰色 

\e[40m -- \e[47m 设置背景色 
\e[40m黑色 \e[41m红色 \e[42m绿色 \e[43m淡红色 \e[44m蓝色 
\e[45m紫色 \e[46m淡蓝色 \e[47m灰色

查看服务器状态

df -lh             #查看硬盘大小
du -sh           #查看当前目录大小
cat /proc/cpuinfo   #查看CPU大小
cat /proc/meminfo  #查看内存大小
top               #查看CPU,内存占用
more /proc/cpuinfo |grep “physical id” |uniq|wc -l     #查看有几个CPU
more /proc/cpuinfo |grep “physical id” |grep0” |wc -l  #查看每个CPU几个核
cat /proc/cpuinfo |grep name |cut -fz -d:|uniq -c       #查看CPU核数及型号
uname -a                                       #查看操作系统内核
cat /proc/cpuinfo |grep physical |uniq -c              #查看CPU核数

判断linux是否为64位

getconf LONG_BIT                  #返回64则为64位
cat /proc/cpuinfo |grep flags |grep ‘lm’ | wc -l   #判断CPU是否支持64位运算

查看某端口是否被占用
安装lsof: yum -y install lsof

lsof -i:8080                   #需root权限

查看进制

ps -ef |grep tomcat

安装中文件支持

yum group install chinese -support

服务器之间拷贝
1、 登录另一台服务器

ssh leador@192.168.10.201输入密码

2、 局域网内两台服务器之间拷贝文件
将本机mongodb目录拷到192.168.10.201上面/home/leador目录下

scp -r mongodb leador@192.168.10.201:/home/leador

拷贝192.168.10.201的/home/leador/mongodb目录到本机/home/leador目录下

scp -r leador@192.168.10.201:/home/leador/mongodb /home/leador

federoa安装VMTOOLS

yum install perl  
yum install kernel-devel

通过升级使版本号一致

yum -y upgrade kernel
yum -y upgrade kernel-devel

装载vmware tool cd,拷贝并解压里面的.tar.gz文件,运行里面的安装命令:

./vmware-install.pl

设置保存下载的yum安装文件

/etc/yum.conf

缓存被保存在/var/cache/yum
网络设置

/sbin/ifconfig -a

网卡地址

more /etc/sysconfig/network_scripts/ifcfg -lo
more /etc/sysconfig/network_scripts/ifcfg -etc0

重启网络

/sbin/service network restart

用户与权限
查看linux下所有用户组

cat /etc/passwd |cut -f | -d :

删除用户

userdel sam
userdel -r sam 同时删除用户主目录

改变文件拥有都及权限

chown [-cfhvR] [--help] [--version] user[:group] file
chmod 664 a.txt              # rw-rw-r--
chmod  +x  a.txt

拷贝删除

cp -ri dirA /home/B
rm -rf dirA

解决fedora 14 下movie player,rythembox,smplayer播放问题
安装RPM FUSION就能解决,movie player,rythembox的问题。其命令如下:
先安装free再安装nonfree

su -c 'rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm' 

su -c 'rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm'

安装好后,就能正常搜索并下载安装各种插件了另:安装好smplayer后,打开视频文件会提示如下错误:

/usr/bin/mplayer: error while loading shared libraries: libglut.so.3: cannot open shared object file: No such file or directory

只要以root执行以下操作即能解决问题:

yum install glut

linux下安装中文输入法
fcitx即Free Chinese Input Toy for X,它是一个以GPL方式发布的、基于XIM的简体中文输入法(即原来的g五笔),包括五笔、拼音、区位输入法, 是在Linux操作系统中使用的输入法

a. su -root
b.到http://www.fcitx.org/上下载fcitx的rpm包: fcitx-1.8.5-1.noarch.rpm
c.删除系统自带的输入法 rpm -e miniChinput
d.安装新的输入法 rpm -ivh fcitx-1.8.5-1.noarch.rpm
e.重启Xwindow。按下ctrl+alt+backspace。OK!

安装常程序库

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-server

安装RZ SZ

yum install lrzsz
Rsync Inotify文件同步
rsync.conf
uid=nobody
gid=nobody
use chroot=no
max connections=200
timeout=600
pidfile=/var/run/rsyncd.pid
lockfile=/var/run/rsyncd.lock
logfile=/var/log/rsyncd.log

[www]
path=/home/lilinlu/backup/
ignore errors
read only=no
list=no
hosts allow=192.168.32.0/255.255.255.0
auth users=lilinlu
secrets file=/etc/rsyncd.password

/root/rsync.sh

#!/bin/bash
src=/home/lilinlu/backup/
des=www
ip=192.168.32.130

/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format  '%T %w%f' -e modify,delete,create,attrib ${src} | while read  file  
do
  rsync -vzrtopg --delete --progress ${src} lilinlu@${ip}::${des} --password-file= /etc/rsyncd.password &&
  echo "${src} was rsyncded"
done

执行

/bin/sh -n /root/rsync.sh  //语法检查  
chmod +x /root/rsync.sh  
nohup sh /root/rsync.sh &  
echo "nohup sh /root/rsync.sh &" >> /etc/rc.local

SUDO
为hadoop用户添加sudo权限
进入超级用户模式。也就是输入”su -”
添加文件的写权限。也就是输入命令”chmod u+w /etc/sudoers”
撤销文件的写权限。也就是输入命令”chmod u-w /etc/sudoers”

root@ubuntu:~# sudo gedit /etc/sudoers

把root那行复制后改成hadoop,hadoop就有了sudo权限,需要sudo密码则为ALL,不需要则NOPASSWD:ALL。
root ALL=(ALL) NOPASSWD:ALL
hadoop ALL=(ALL:ALL) ALL
安装sudo

yum install sudo

编辑sudoers文件

[root@Temp-2 ~]# vim /etc/sudoers
#Edit by root
User_Alias NETMAN = net01, net02 #用户别名
User_Alias ADMIN = admin01, admin02
User_Alias SA = %sa
#定义的别名必须都要用大写字母,别名后面跟的参数是用 ,(逗号)+ 空格 隔开的
Cmnd_Alias NETCMD = /sbin/ifconfig, /etc/init.d/network #命令别名
Cmnd_Alias ADMINCMD = /usr/sbin/useradd, /usr/sbin/userdel

NETMAN ALL = (ALL) NETCMD
ADMIN ALL = (ALL) ADMINCMD
SA ALL = (ALL) ALL

别名分为:主机别名(Host_Alias)、用户别名(User_Alias)、命令别名(Cmnd_Alias)、身份别名(Runas_Alias).(其中主机别名和身份别名较少用,主机别名的用途在于多台服务器共享同一个sudoers文件).别名与Sudoers配置的位置对应为:

注:
①、身份别名中所涉及的用户必须是系统中真实存在的。
②、命令别名的路径必须使用绝对路径
③、在引用用户组时,须在用户组名前面加%
Linux下高并发socket最大连接数
1、修改用户进程可打开文件数限制
  在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看系统允许当前用户进程打开的文件数限制:
  

[speng@as4 ~]$ ulimit -n
  1024

  这表示当前用户的每个进程最多允许同时打开1024个文件,这1024个文件中还得除去每个进程必然打开的标准输入,标准输出,标准错误,服务器监听 socket,进程间通讯的unix域socket等文件,那么剩下的可用于客户端socket连接的文件数就只有大概1024-10=1014个左右。也就是说缺省情况下,基于Linux的通讯程序最多允许同时1014个TCP并发连接。
  对于想支持更高数量的TCP并发连接的通讯处理程序,就必须修改Linux对当前用户的进程同时打开的文件数量的软限制(soft limit)和硬限制(hardlimit)。其中软限制是指Linux在当前系统能够承受的范围内进一步限制用户同时打开的文件数;硬限制则是根据系统硬件资源状况(主要是系统内存)计算出来的系统最多可同时打开的文件数量。通常软限制小于或等于硬限制。
  修改上述限制的最简单的办法就是使用ulimit命令:
  

[speng@as4 ~]$ ulimit -n

  上述命令中,在中指定要设置的单一进程允许打开的最大文件数。如果系统回显类似于”Operation notpermitted”之类的话,说明上述限制修改失败,实际上是因为在中指定的数值超过了Linux系统对该用户打开文件数的软限制或硬限制。因此,就需要修改Linux系统对用户的关于打开文件数的软限制和硬限制。
  第一步,修改/etc/security/limits.conf文件,在文件中添加如下行:
 

 speng soft nofile 10240
  speng hard nofile 10240

  其中speng指定了要修改哪个用户的打开文件数限制,可用’*’号表示修改所有用户的限制;
  soft或hard指定要修改软限制还是硬限制;10240则指定了想要修改的新的限制值,即最大打开文件数(请注意软限制值要小于或等于硬限制)。修改完后保存文件。
  第二步,修改/etc/pam.d/login文件,在文件中添加如下行:
  session required /lib/security/pam_limits.so 这是告诉Linux在用户完成系统登录后,应该调用pam_limits.so模块来设置系统对该用户可使用的各种资源数量的最大限制(包括用户可打开的最大文件数限制),而pam_limits.so模块就会从/etc/security/limits.conf文件中读取配置来设置这些限制值。修改完后保存此文件。
  第三步,查看Linux系统级的最大打开文件数限制,使用如下命令:
  

[speng@as4 ~]$ cat /proc/sys/fs/file-max
  12158

  这表明这台Linux系统最多允许同时打开(即包含所有用户打开文件数总和)12158个文件,是Linux系统级硬限制,所有用户级的打开文件数限制都不应超过这个数值。通常这个系统级硬限制是Linux系统在启动时根据系统硬件资源状况计算出来的最佳的最大同时打开文件数限制,如果没有特殊需要,不应该修改此限制,除非想为用户级打开文件数限制设置超过此限制的值。
  修改此硬限制的方法是修改/etc/rc.local脚本,在脚本中添加如下行:
  

echo 22158 > /proc/sys/fs/file-max

  这是让Linux在启动完成后强行将系统级打开文件数硬限制设置为22158.修改完后保存此文件。
  完成上述步骤后重启系统,一般情况下就可以将Linux系统对指定用户的单一进程允许同时打开的最大文件数限制设为指定的数值。如果重启后用 ulimit-n命令查看用户可打开文件数限制仍然低于上述步骤中设置的最大值,这可能是因为在用户登录脚本/etc/profile中使用ulimit -n命令已经将用户可同时打开的文件数做了限制。由于通过ulimit-n修改系统对用户可同时打开文件的最大数限制时,新修改的值只能小于或等于上次 ulimit-n设置的值,因此想用此命令增大这个限制值是不可能的。
  所以,如果有上述问题存在,就只能去打开/etc/profile脚本文件,在文件中查找是否使用了ulimit-n限制了用户可同时打开的最大文件数量,如果找到,则删除这行命令,或者将其设置的值改为合适的值,然后保存文件,用户退出并重新登录系统即可。 通过上述步骤,就为支持高并发TCP连接处理的通讯处理程序解除关于打开文件数量方面的系统限制。
  2、修改网络内核对TCP连接的有关限制
  在Linux上编写支持高并发TCP连接的客户端通讯处理程序时,有时会发现尽管已经解除了系统对用户同时打开文件数的限制,但仍会出现并发TCP连接数增加到一定数量时,再也无法成功建立新的TCP连接的现象。出现这种现在的原因有多种。
  第一种原因可能是因为Linux网络内核对本地端口号范围有限制。此时,进一步分析为什么无法建立TCP连接,会发现问题出在connect()调用返回失败,查看系统错误提示消息是”Can’t assign requestedaddress”.同时,如果在此时用tcpdump工具监视网络,会发现根本没有TCP连接时客户端发SYN包的网络流量。这些情况说明问题在于本地Linux系统内核中有限制。
  其实,问题的根本原因在于Linux内核的TCP/IP协议实现模块对系统中所有的客户端TCP连接对应的本地端口号的范围进行了限制(例如,内核限制本地端口号的范围为1024~32768之间)。当系统中某一时刻同时存在太多的TCP客户端连接时,由于每个TCP客户端连接都要占用一个唯一的本地端口号(此端口号在系统的本地端口号范围限制中),如果现有的TCP客户端连接已将所有的本地端口号占满,则此时就无法为新的TCP客户端连接分配一个本地端口号了,因此系统会在这种情况下在connect()调用中返回失败,并将错误提示消息设为”Can’t assignrequested address”.
  有关这些控制逻辑可以查看Linux内核源代码,以linux2.6内核为例,可以查看tcp_ipv4.c文件中如下函数:
 

 static int tcp_v4_hash_connect(struct sock *sk)

  请注意上述函数中对变量sysctl_local_port_range的访问控制。变量sysctl_local_port_range的初始化则是在tcp.c文件中的如下函数中设置:
  

void __init tcp_init(void)

  内核编译时默认设置的本地端口号范围可能太小,因此需要修改此本地端口范围限制。
  第一步,修改/etc/sysctl.conf文件,在文件中添加如下行:
  

net.ipv4.ip_local_port_range = 1024 65000

  这表明将系统对本地端口范围限制设置为1024~65000之间。请注意,本地端口范围的最小值必须大于或等于1024;而端口范围的最大值则应小于或等于65535.修改完后保存此文件。
  第二步,执行sysctl命令:
 

 [speng@as4 ~]$ sysctl -p

  如果系统没有错误提示,就表明新的本地端口范围设置成功。如果按上述端口范围进行设置,则理论上单独一个进程最多可以同时建立60000多个TCP客户端连接。
  第二种无法建立TCP连接的原因可能是因为Linux网络内核的IP_TABLE防火墙对最大跟踪的TCP连接数有限制。此时程序会表现为在 connect()调用中阻塞,如同死机,如果用tcpdump工具监视网络,也会发现根本没有TCP连接时客户端发SYN包的网络流量。由于 IP_TABLE防火墙在内核中会对每个TCP连接的状态进行跟踪,跟踪信息将会放在位于内核内存中的conntrackdatabase中,这个数据库的大小有限,当系统中存在过多的TCP连接时,数据库容量不足,IP_TABLE无法为新的TCP连接建立跟踪信息,于是表现为在connect()调用中阻塞。此时就必须修改内核对最大跟踪的TCP连接数的限制,方法同修改内核对本地端口号范围的限制是类似的:
  第一步,修改/etc/sysctl.conf文件,在文件中添加如下行:
  

net.ipv4.ip_conntrack_max = 10240

  这表明将系统对最大跟踪的TCP连接数限制设置为10240.请注意,此限制值要尽量小,以节省对内核内存的占用。
  第二步,执行sysctl命令:
  

[speng@as4 ~]$ sysctl -p

  如果系统没有错误提示,就表明系统对新的最大跟踪的TCP连接数限制修改成功。如果按上述参数进行设置,则理论上单独一个进程最多可以同时建立10000多个TCP客户端连接。
  3、使用支持高并发网络I/O的编程技术在Linux上编写高并发TCP连接应用程序时,必须使用合适的网络I/O技术和I/O事件分派机制。可用的I/O技术有同步I/O,非阻塞式同步I/O(也称反应式I/O),以及异步I/O.在高TCP并发的情形下,如果使用同步I/O,这会严重阻塞程序的运转,除非为每个TCP连接的I/O创建一个线程。
  但是,过多的线程又会因系统对线程的调度造成巨大开销。因此,在高TCP并发的情形下使用同步 I/O是不可取的,这时可以考虑使用非阻塞式同步I/O或异步I/O.非阻塞式同步I/O的技术包括使用select(),poll(),epoll等机制。异步I/O的技术就是使用AIO.
  从I/O事件分派机制来看,使用select()是不合适的,因为它所支持的并发连接数有限(通常在1024个以内)。如果考虑性能,poll()也是不合适的,尽管它可以支持的较高的TCP并发数,但是由于其采用”轮询”机制,当并发数较高时,其运行效率相当低,并可能存在I/O事件分派不均,导致部分TCP连接上的I/O出现”饥饿”现象。而如果使用epoll或AIO,则没有上述问题(早期Linux内核的AIO技术实现是通过在内核中为每个 I/O请求创建一个线程来实现的,这种实现机制在高并发TCP连接的情形下使用其实也有严重的性能问题。但在最新的Linux内核中,AIO的实现已经得到改进)。
  综上所述,在开发支持高并发TCP连接的Linux应用程序时,应尽量使用epoll或AIO技术来实现并发的TCP连接上的I/O控制,这将为提升程序对高并发TCP连接的支持提供有效的I/O保证。
  内核参数sysctl.conf的优化
  /etc/sysctl.conf 是用来控制linux网络的配置文件,对于依赖网络的程序(如web服务器和cache服务器)非常重要,RHEL默认提供的最好调整。
  推荐配置(把原/etc/sysctl.conf内容清掉,把下面内容复制进去):
  

net.ipv4.ip_local_port_range = 1024 65536
  net.core.rmem_max=16777216
  net.core.wmem_max=16777216
  net.ipv4.tcp_rmem=4096 87380 16777216
  net.ipv4.tcp_wmem=4096 65536 16777216
  net.ipv4.tcp_fin_timeout = 10
  net.ipv4.tcp_tw_recycle = 1
  net.ipv4.tcp_timestamps = 0
  net.ipv4.tcp_window_scaling = 0
  net.ipv4.tcp_sack = 0
  net.core.netdev_max_backlog = 30000
  net.ipv4.tcp_no_metrics_save=1
  net.core.somaxconn = 262144
  net.ipv4.tcp_syncookies = 0
  net.ipv4.tcp_max_orphans = 262144
  net.ipv4.tcp_max_syn_backlog = 262144
  net.ipv4.tcp_synack_retries = 2
  net.ipv4.tcp_syn_retries = 2

  这个配置参考于cache服务器varnish的推荐配置和SunOne 服务器系统优化的推荐配置。
  varnish调优推荐配置的地址为:http://varnish.projects.linpro.no/wiki/Performance
  不过varnish推荐的配置是有问题的,实际运行表明”net.ipv4.tcp_fin_timeout = 3”的配置会导致页面经常打不开;并且当网友使用的是IE6浏览器时,访问网站一段时间后,所有网页都会打不开,重启浏览器后正常。可能是国外的网速快吧,我们国情决定需要调整”net.ipv4.tcp_fin_timeout = 10”,在10s的情况下,一切正常(实际运行结论)。
  修改完毕后,执行:
  

/sbin/sysctl -p /etc/sysctl.conf
  /sbin/sysctl -w net.ipv4.route.flush=1

  命令生效。为了保险起见,也可以reboot系统。
  调整文件数:linux系统优化完网络必须调高系统允许打开的文件数才能支持大的并发,默认1024是远远不够的。
  执行命令:
  

echo ulimit -HSn 65536 > /etc/rc.local
  echo ulimit -HSn 65536 > /root/.bash_profile
  ulimit -HSn 65536

CentOS 7 install vsftpd
1、安装

yum install vsftpd

2、添加用户

useradd ftpuser
password ftpuser

3、配置VSFTPD

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_file=/var/log/xferlog
ftpd_banner=Welcome to lilinlu FTP service.
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd

4、配置用户认证

vim chroot_list
ftpuser

5、解决500的问题

# setsebool -P ftpd_disable_trans 1或者# setsebool -P ftp_home_dir 1

6、配置帐户认证

vi /etc/pam.d/vsftpd
#%PAM-1.0
#session    optional    pam_keyinit.so    force revoke
#auth       required    pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth       required    pam_shells.so
#auth       include     password-auth
#account    include     password-auth
#session    required     pam_loginuid.so
#session    include     password-auth
auth     required        /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account  required        /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

配置登录文件并生成DB文件

vim vsftpd_login
ftpuser
ftpuser123
db_load –T –t hash –f vsftpd_login  vsftpd_login.db

7、重启

systemctl restart  vsftpd. service 

CentOS7卸载OpenJDK
安装好的CentOS会自带OpenJdk,用命令 java –version,会有下面的信息:

java version "1.7.0"
OpenJDK  Runtime Environment (build 1.6.0-b09)
OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)

最好还是先卸载掉openjdk,在安装sun公司的jdk.
先查看 rpm -qa | grep java显示如下信息:

java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

卸载:

rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

安装自己的JDK并配置环境变量,配置后打开ECLIPSE可能会出现错误提示,打不到JAVA:

A Java Runtime Environment (JRE) or Java Development Kit (JDK)
must be available in order to run STS. No Java virtual machine
was found after searching the following locations:
/home/lilinlugis/src/sts-bundle/sts-3.6.0.RELEASE/jre/bin/java
java in your current PATH

有一个解决办法是修改eclipse.ini,加入VM路径:

openFile
-vm  
/home/lilinlugis/jdk7/bin
-showsplash

CentOS 安装SVN
安装

#yum install subversion
# svnserve --version

建立SVN库。

#mkdir /opt/svn/repos
#svnadmin create /opt/svn/repos

执行上面的命令后,自动在repos下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt。进入上面生成的文件夹conf下,进行配置, 有以下几个文件authz, passwd, svnserve.conf。其中authz 是权限控制,可以设置哪些用户可以访问哪些目录, passwd是设置用户和密码的, svnserve是设置svn相关的操作。
1、vim passwd

[users]
# harry = harryssecret
# sally = sallyssecret
hello=123

用户名=密码.这样我们就建立了hello用户, 123密码
2、vim authz

[/]
hello= rw

意思是hello用户对所有的目录有读写权限,当然也可以限定。如果是自己用,就直接是读写吧。
3、vim snvserv.conf
anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = password
authz-db = authz # 访问控制文件
realm = /opt/svn/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。
采用默认配置. 以上语句都必须顶格写, 左侧不能留空格, 否则会出错.
启动svn:

svnserve -d -r /opt/svn/repos

如果已经有svn在运行,可以换一个端口运行

svnserve -d -r /opt/svn/repos --listen-port 3391

这样同一台服务器可以运行多个svnserver。启动成功后,就可以使用了,建议采用TortoiseSVN, 连接地址为: svn://your server address (如果指定端口需要添加端口 :端口号)

svn, Eclipse 错误 eclipse unable to load default svn client
需JavaHL 。subeclipse 插件还支持另外一个svnkit 这个是纯java的实现下了其eclipse 插件装上即可。地址:

http://www.svnkit.com/index.html
http://www.collab.net/downloads/subversion#tab-1
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值