Centos 学习笔记

 
连网
----------------------------------------
vi /etc/sysconfig/network-scripts/ifcfg-eth0
    将ONBOOT = NO 改成 ONBOOT = yes
    
yum
---------------------------------------
//***********更换yum源
http://mirrors.163.com/.help/centos.html
//***********查看yum库有哪些包
yum list | grep php-*
//***********查看安装了哪些和php相关的文件
yum list installed | grep php    
//***********删除某个或多个安装包
yum remove php php-*


nginx + php-fpm
--------------------------------
//***********安装nginx
第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo:
cd /etc/yum.repos.d/
vim nginx.repo

填写如下内容:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
保存

下面直接执行如下指令即可自动安装好Nginx:
yum install nginx -y
安装完成,下面直接就可以启动Nginx了:

/etc/init.d/nginx start

//***********nginx配置、启动
/etc/init.d/nginx start # 启动Nginx服务
/etc/init.d/nginx stop # 停止Nginx服务
/etc/nginx/nginx.conf # Nginx配置文件位置

//***********nginx根目录
vi /etc/nginx/conf.d/default.conf
修改
fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;

vi /etc/php-fpm/conf.d/www.conf 
修改user为nginx
/etc/init.d/php-fpm restart

端口
----------------------------------
//***********开放端口
CentOS防火墙在虚拟机的CENTOS装好APACHE不能用,郁闷,解决方法如下 
/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT     //iis
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT     //apache
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT    //mysql
/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT    //FTP
然后保存: 
/etc/rc.d/init.d/iptables save 
centos 5.3,5.4以上的版本需要用 
service iptables save 

这样重启计算机后,CentOS防火墙默认已经开放了80和22端口。 
这里应该也可以不重启计算机: 
/etc/init.d/iptables restart 

CentOS防火墙的关闭,关闭其服务即可: 
查看CentOS防火墙信息:/etc/init.d/iptables status 
关闭CentOS防火墙服务:/etc/init.d/iptables stop 

//***********查看当前已经开放的端口
netstat -tanp


查找命令
-------------------
find . -name "nginx"
whereis nginx
.....

安装fastcgi
------------------------------
yum install php-cgi php-fastcgi

开机自己启动
----------------
chkconfig nginx on
chkconfig php-fpm on

Apache
------------------------------
yum install httpd
/etc/init.d/httpd stop
/etc/init.d/httpd start
/etc/init.d/httpd restart
//***********配置apache
/etc/httpd/conf/httpd.conf    //配置文件路径
ServerName www.example.com:80 改成 ServerName localhost:80    //解决重启httpd的时候出现报错

mysql
----------------------------------
yum install mysql mysql-server
/etc/init.d/mysqld stop
/etc/init.d/mysqld start
/etc/init.d/mysqld restart
service mysqld start 启动mysql
chkconfig mysqld on    设置开机启动
//***********开机远程连接
mysql 进入mysql控制台
执行如下语句
CREATE USER 'xu'@'localhost' IDENTIFIED BY '123456'    创建用户
GRANT ALL PRIVILEGES ON *.* TO 'xu'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;    //xu这个用户可以从任何计算机连接数据库
FLUSH PRIVILEGES;

php
---------------------------------
yum install php php-cli php-common php-fpm php-gd php-imap php-mbstring php-mysql php-odbc php-pdo php-pear php-xml php-xmlrpc
//***********配置apache
/etc/php.ini    //配置文件路径
display_errors = On     //开启php错误提示

Apache + Mysql + Php 融合
---------------------------------
执行 getsebool -a | grep httpd
如果发现 httpd_can_network_connect --> off
则执行 setsebool httpd_can_network_connect 1
否则会出现 Could not connect: Can't connect to MySQL server on '127.0.0.1' (13) 2003

ftp
--------------------------------
yum install vsftpd
*网络查找如何配置vsftpd
/etc/init.d/vsftpd start 启动ftp服务
/etc/init.d/vsftpd restart 重新启动ftp服务
service vsftpd start 启动ftp服务
service vsftpd status  查看ftp服务状态
service vsftpd restart 重启ftp服务
service vsftpd stop 关闭ftp服务
//添加FTP用户
useradd -d /var/www -g ftp -s /sbin/nologin double-a //新建用户,用户目录为var/www 用户组为ftp
passwd double-a //设置密码
vi /etc/vsftpd/vsftpd.conf
将anonymous_enable改为NO,阻止匿名上传
将chroot_list_enable和chroot_list_file的注释去掉,阻止用户访问上级目录
在/etc/vsftpd下建立chroot_list文件,在其中添加用户username,(一个用户一行)使其只允许访问指定目录。

//错误提示:Transfer done (but failed to open directory).
现象:列表为空白
vi /etc/selinux/config
SELINUX=disabled  //设置好后reboot
//错误提示:以 PASV 模式连接失败,正在尝试使用 PORT  模式
ftp软件设置的问题,将默认PASV模式修改成PORT模式
//错误提示:Could not create file
现象:无法上传文件
chmod 777 ftpfile

git 服务端
------------------------------------
搭建git
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel    安装依赖
wget http://git-core.googlecode.com/files/git-1.9.0.tar.gz 源码包编译安装
tar zxvf git-1.9.0.tar.gz
cd git-1.9.0
make prefix=/usr/local all 编译
make prefix=/usr/local install  #root用户运行安装
git --version 查看是否安装成功
yum install python python-setuptools
git clone git://github.com/res0nat0r/gitosis.git
cd gitosis/
python setup.py install        //显示Finished processing dependencies for gitosis==0.2即表示成功 

adduser git 添加用户
passwd git 设置用户密码[非必要]
初始化Git仓库
cd /data/git/
git init --bare project.git 初始化一个仓库
chown -R git.git project.git
服务端添加ssh_key,避免每次pull或者push的时候都要输入密码[请确保下面新建的文件夹和文件属于新建的这个git用户]
su git
cd ~
mkdir .ssh
cd .ssh
touch authorized_keys
cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys     //将客户端公钥写入服务端


vi /etc/passwd 禁用git用户shell登录
git:x:1001:1001:git version control:/home/git:/bin/bash
改成
git:x:1001:1001:git version control:/home/git:/usr/bin/git-shell



克隆项目
git clone ssh://git@192.168.104.200/data/git/ebm  //开发端
git clone /data/git/ebm.git    //服务端
git clone /data/git/ebm.git /var/www/html/ebm_new_name    //服务端clone到指定文件夹


用户
---------------------------------
cat /etc/group     查看所有组
cat /etc/passwd       查看所有用户
useradd -g test phpq  //新建phpq用户并增加到test工作组
useradd -d /var/www -g ftp -s /sbin/nologin double-a //新建用户,用户目录为var/www 用户组为ftp,用户不允许登录,只能通过FTP连接

1、建用户:
adduser phpq                             //新建phpq用户
passwd phpq                               //给phpq用户设置密码
2、建工作组
groupadd test                          //新建test工作组
3、新建用户同时增加工作组
useradd -g test phpq                      //新建phpq用户并增加到test工作组
注::-g 所属组 -d 家目录 -s 所用的SHELL
4、给已有的用户增加工作组
usermod -g groupname username
或者:gpasswd -a user group
5、临时关闭:在/etc/shadow文件中属于该用户的行的第二个字段(密码)前面加上*就可以了。想恢复该用户,去掉*即可。
或者使用如下命令关闭用户账号:
passwd peter –l
重新释放:
passwd peter –u
6、永久性删除用户账号
userdel peter
groupdel peter
usermod –G peter peter   (强制删除该用户的主目录和主目录下的所有文件和子目录)
7、从组中删除用户
编辑/etc/group 找到GROUP1那一行,删除 A
或者用命令
gpasswd -d A GROUP
8、显示用户信息
id user
cat /etc/passwd

//小知识点。多个FTP用户管理不同的网站
useradd -d /var/www -g ftp -s /sbin/nologin double-a //添加用户并指定组
passwd double-a //设置密码
vi /etc/vsftp/chroot_list     //添加doubel-a
chmod 775 /var/www/html //根目录权限
chown -R ftp:double-a /var/www/html/double-a //一个网站指定一个FTP用户


session
-------------------------
session无法获取到值问题
查看phpinfo信息,session的保存路径session.save_path是哪里,例如/var/lib/php/session
查看文件夹是否存在,不存在则新建
chown nginx:nginx /var/lib/php/session
chmod 770 /var/lib/php/session


压缩、解压
---------------------------------
yum install unzip
unzip test.zip    解压到当前目录
# unzip test.zip -d /root/ 解压到指定目录
zip -r test.zip test 1.txt 压缩test文件夹和1.txt文件到test.zip

今天进步一点点,明天梦想近点点!

原文地址:https://www.cnblogs.com/qq917937712/p/5688559.html