Linux安装: 1、centos7 安装php7+mysql5.7+nginx+redis http://www.cnblogs.com/phpshen/p/6222935.html 基础操作: 1、修改xshell名称 vim /etc/hostname 2、查看网络端口占用情况 ps -aux | grep nginx //查看nginx进程 netstat -apn //查看所有端口占用情况 netstat –apn | grep 80 //直接查看80端口使用情况 netstat -tunpl //查看端口专题 3、安装:lrzsz上传下载 yum -y install lrzsz //安装 rz //上传 sz filename //下载 4、设置自动启动,不启动则使用disable systemctl enable redis systemctl enable php-fpm systemctl enable mysqld systemctl enable nginx 5、创建目录、创建文件 mkdir -p /usr/local/redis/bin //创建目录 touch a.txt //创建文件 6、移动文件、复制文件、修改名称 mv ./redis.conf /usr/local/redis/etc/ //移动文件 mv redis.conf test.conf 或者 cp a.txt b.txt //重命名 cp -r /usr/men /usr/zh //将men目录下的所有文件复制到zh下 7、防火墙 1、firewalld的基本使用 systemctl start firewalld //启动 systemctl status firewalld //查看状态 systemctl disable firewalld //停止 systemctl stop firewalld //禁用 systemctl restart firewalld //重启 2、service和chkconfig的功能 systemctl start firewalld.service //启动一个服务 systemctl stop firewalld.service //关闭一个服务 systemctl restart firewalld.service //重启一个服务 systemctl status firewalld.service //显示一个服务的状态 systemctl enable firewalld.service //在开机时启用一个服务 systemctl disable firewalld.service //在开机时禁用一个服务 systemctl is-enabled firewalld.service //查看服务是否开机启动 systemctl list-unit-files|grep enabled //查看已启动的服务列表 systemctl --failed //查看启动失败的服务列表 3.配置firewalld-cmd firewall-cmd --version //查看版本 firewall-cmd --help //查看帮助 firewall-cmd --state //显示状态 firewall-cmd --zone=public --list-ports //查看所有打开的端口 firewall-cmd --reload //更新防火墙规则 firewall-cmd --get-active-zones //查看区域信息 firewall-cmd --get-zone-of-interface=eth0 //查看指定接口所属区域 firewall-cmd --panic-on //拒绝所有包 firewall-cmd --panic-off //取消拒绝状态 firewall-cmd --query-panic //查看是否拒绝 firewall-cmd --permanent --zone=public --add-port=80/tcp //永久开放80端口 firewall-cmd --permanent --zone= public --remove-port=80/tcp //永久删除80端口 firewall-cmd --list-all //列出当前防火墙的配置情况 firewall-cmd --permanent --zone=public --add-port=80/tcp //永久开放80端口 firewall-cmd --reload //让firewall-cmd重新加载配置 firewall-cmd --zone=work --add-service=smtp //添加服务 firewall-cmd --zone=work --remove-service=smtp //移除服务 8、查看系统套件版本信息 rpm -aq openssl 9、新增用户、删除用户、修改用户密码 useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp userdel ftp passwd www 10、赋予用户权限 chown -R git:git learngit.git //用来更改某个目录或文件的用户名和用户组的 chown 用户名:组名 文件路径(可以是就对路径也可以是相对路径) 11、查看开机启动项 systemctl list-unit-files systemctl list-unit-files | grep enable PHP: 1、重启、启动、停止php-fpm systemctl restart php-fpm 或者 service php-fpm restart //重启 systemctl start php-fpm 或者 service php-fpm start //启动 systemctl stop php-fpm 或者 service php-fpm stop //停止 Nginx: 1、修改nginx配置 vim /etc/nginx/nginx.conf //基础配置信息 server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } } //https配置 # Settings for a TLS enabled server. # # server { # listen 443 ssl http2 default_server; # listen [::]:443 ssl http2 default_server; # server_name _; # root /usr/share/nginx/html; # # ssl_certificate "/etc/pki/nginx/server.crt"; # ssl_certificate_key "/etc/pki/nginx/private/server.key"; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 10m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # # # Load configuration files for the default server block. # include /etc/nginx/default.d/*.conf; # # location / { # } # # error_page 404 /404.html; # location = /40x.html { # } # # error_page 500 502 503 504 /50x.html; # location = /50x.html { # } # } 2、重启、启动、停止nginx systemctl restart nginx 或者 service nginx restart //重启 systemctl start nginx 或者 service nginx start //启动 systemctl stop nginx 或者 service nginx stop //停止 MySql: 1、mysql 配置 vim /etc/my.cnf 在[client] 下面添加 default-character-set=utf8 //设置编码 在 [mysqld] 下面添加 //设置编码 character_set_server=utf8 init_connect='SET NAMES utf8' collation-server=utf8_general_ci 2、查看密码策略 show variables like '%password%'; 3、设置密码策略参数 set GLOBAL validate_password_policy=0 来修改 或者 修改 /etc/my.cnf文件validate_password_policy=0 #0(LOW),1(MEDIUM),2(STRONG)其中一种,注意2需要提供密码字典文件,如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:validate_password = off 4、获取初始密码 grep 'temporary password' /var/log/mysqld.log 5、修改用户密码 alter user root@localhost identified by 'copylian@aikehou.com' 6、添加一个可以在外部登陆的mysql用户 grant all privileges on *.* to "copylian"@"%" identified by "copylian@aikehou.com"; 或者 grant all privileges on *.* to "copylian"@"%" identified by "copylian@aikehou.com" with grant option; flush privileges; 7、重启、启动、停止mysql systemctl restart mysqld 或者 service mysqld restart //重启 systemctl start mysqld 或者 service mysqld start //启动 systemctl stop mysqld 或者 service mysqld stop //停止 8、php7的session无法传递解决方案:需要给存储session的目录session.save_path可写权限 session.use_trans_sid = 1 //参数被设为了1 chmod 777 /var/lib/php/session //修改存储session目录为可写 SVN: 1、创建版本库、启动版本库、停止svn服务 svnadmin create svntest //创建版本库 svnserve -d -r svntes //启动版本库 killall svnserve //停止svn服务 2、版本库账号密码、用户分组、用户权限 passwd用户账号密码: [users] svntest@copylian = svntest@copylian authz用户权限: [groups] svntest = svntest@copylian,svntest12@copylian //svntest分组有两个用户 [/] @svntest = rw //svntest分组的用户有rw权限 svnserve.conf配置文件: anon-access = read //开启读 auth-access = write //开启写 password-db = ../../passwd //用户账号密码文件 authz-db = ../../authz //用户权限文件 realm = /copylian/www/svnroot/svntest //当前svn版本库的根目录 3、同步目录 /hooks/post-commit钩子文件(必须给777的权限): REPOS="$1" REV="$2" export LANG=en_US.UTF-8 //编码 svn update /copylian/www/svnweb/svntest --username svntest@copylian --password svntest@copylian 对/copylian/www/svnweb/svntest目录进行checkout:svn checkout svn://115.28.208.47/svntest GIT: 1、添加git仓库 git init --bare test.git 2、创建一个git用户并赋予密码、赋予权限 useradd git passwd git chown -R git:git test.git 3、禁用git用户shell登录(一定要禁用) vi /etc/passwd git:x:1000:1000::/home/git:/usr/bin/git-shell //将git用户修改为如下(一般在最后一行) 4、本地:git客户端,请先安装git git config --global user.name "copylian" git config --global user.email "copylian@aikehou.com" 5、本地创建秘钥并加入服务器列表中 ssh-keygen -t rsa -C "copylian@aikehou.com" //创建秘钥 C:\Users\Administrator\.ssh\id_rsa.pub //获取公钥 公钥内容: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfy+tBfZp6qZDznsznKPJev3W3eL2Jca93RL+rMK6c6hi50t99nHZKUE6HcJKLS9ZAE3SDRwBHYhkm1IGquNs6MSSHjSYsKd4RAFe1mwzG48gUJSiIiZhy2TBcWT6ga5cP4rfxFCtO+BaPtGoXWpMqFBxPoZR8seeGXgGYkbC1tUfZ96ZUBm3ex9kr798V8c+tczZanarLZb269hCthaT4X4TS8lXb9bIvGgHJJbgIbLyssdZuM8cfrZMJPGB2hW8fjQjzGZiO18gvIS1I2PN4eZ+/jiwV5GVjE7A9NLPKKmhGfuc6OgmnVUYmtaad+IE3LpukrpcZnNyagI2kpnKX copylian@aikehou.com      在将公钥加入服务器列表(服务器): vi /home/git/.ssh/authorized_keys CentOS 7默认列表在/home/git/.ssh/authorized_keys,使用vi 编辑此文件输入刚才复制的内容,保存退出。   6、克隆git版本库 git clone git@101.101.101.101:/usr/local/git/learngit.git 7、同步 vi hooks/post-receive //创建post-receive文件 写入内容: #!/bin/bash git --work-tree=/copylian/www/gitweb/gittest checkout -f 设置权限: chown git:git post-receive chmod +x post-receive 更改目标目录的权限为777 chmod 777 /copylian/www/gitweb/gittest 8、使用TortoiseGit管理git 和 权限验证 TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。也就是说使用 ssh-keygen -C "username@email.com" -t rsa 产生的密钥在TortoiseGit中不能用。 而基于github的开发必须要用到rsa密钥,因此需要用到TortoiseGit的 putty key generator 工具来生成既适用于github的rsa密钥也适用于TortoiseGit的ppk密钥, push 可能遇到的问题: Right click -> TortoiseGit -> Settings -> Network SSH client was pointing to C:\Program Files\TortoiseGit\bin\TortoisePlink.exe Changed path to C:\Program Files (x86)\Git\bin\ssh.exe 我这地方直接就显示 C:\Program Files (x86)\Git\bin\ssh.exe 直接改成下面就行了 此时sync一下,试试肯定不能用。然后再把刚刚的修改改回去即: Right click -> TortoiseGit -> Settings -> Network SSH client was pointing to C:\Program Files (x86)\Git\bin\ssh.exe Changed path to C:\Program Files\TortoiseGit\bin\TortoisePlink.exe 9、TortoiseGit记住密码 在settings->git->Edit local .git/config,加上下面的内容,就能记住密码了。 [credential] helper = store 测试似乎没啥用...... Redis: 1、重启、启动、停止redis service redis restart //重启 service redis start //启动 service redis stop //停止 /etc/init.d/redis {start|stop|restart|force-reload} 2、设置自动启动 chkconfig redis on systemctl enable redis /sbin/chkconfig redis on 3、Redis使用认证密码登录 vim /usr/local/redis/etc/redis.conf requirepass copylian@aikehou.com //设置使用密码 daemonize yes //设置在后台运行 vim /etc/init.d/redis //将redis设置为系统服务 chmod +x /etc/init.d/redis //设置权限 chkconfig redis on //设置自动启动 4、登录验证 $ ./redis-cli -h 127.0.0.1 -p 6379 127.0.0.1:6379> keys * (error) NOAUTH Authentication required. 使用密码认证登录,并验证操作权限: $ ./redis-cli -h 127.0.0.1 -p 6379 -a copylian@aikehou.com 127.0.0.1:6379> config get requirepass 1) "requirepass" 2) "copylian@aikehou.com" 看到类似上面的输出,说明Reids密码认证配置成功。 除了按上面的方式在登录时,使用-a参数输入登录密码外。也可以不指定,在连接后进行验证: $ ./redis-cli -h 127.0.0.1 -p 6379 127.0.0.1:6379> auth copylian@aikehou.com OK 127.0.0.1:6379> config get requirepass 1) "requirepass" 2) "copylian@aikehou.com"