CentOs7系统基本搭建LAMP/LNMP;
一、准备工作:
- ip addr
- vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 设置onroot=yes
- service network restart 重启
- yum install net-tools 下载net-tools工具才能使用ifconfig等命令
- 设置桥接网卡(获取公网IP,ssh远程连接),重新启动虚拟机
- 替换默认源 http://mirrors.163.com/.help/centos.html (按照地址提示操作)
- 安装vim: yum install vim
二、ssh工具:
- 服务器安装ssh服务
- 安装SSH: yum install openssh-server
- 启动SSH: service sshd start
- 设置开机运行: chkconfig sshd on (服务端版本默认设置)
- 客户端安装ssh客户端
- Linux平台:yum install openssh-clients (安装openssh-server时已经自动安装)
- Ssh客户端连接服务器
- ssh root@192.168.1.100
- Ssh config 用法详解
- Config文件位置:~/.ssh/config .
- 内容设置方式:
host "root"
HostName 192.168.1.100
User root
Port 22
- 免密码登录方案之ssh key
- Linux平台生成ssh key: ssh-keygen –t rsa
- Linux平台:ssh-add ~/.ssh/XX_rsa (加载密钥)
- 生成的key放入服务器的 ~/.ssh/authoried_keys文件中
- Ssh端口安全:修改/etc/ssh/sshd_config配置
三、软件包管理器:yum
- 安装:yum install XX
- 卸载:yum remove XX
- 搜索:yum search XX
- 清理缓存:yum clean packages
- 列出已安装:yum list
- 软件包信息:yum info XX
四、服务器硬件资源信息:
1. 内存: free –m
2. 硬盘: df –h
3. 负载: w/top
五、Linux文件目录结构:
- 根目录:/
- 配置目录:/etc
- 家目录:/home
- 用户程序目录:/usr
- 临时目录:/tmp
六、文件命令:
- tail: 从文件尾部开始读
- head: 从文件头部读
- cat: 读取整个文件
- more: 分页读取
- less: 可控分页
- grep: 搜索关键字
- find: 查找文件
- wc: 统计个数
- echo 创建带有内容的文件、
- touch 创建空文件
- cp 拷贝
- mv 移动或重命名
- rm 删除文件
- mkdir 创建目录
- rmdir 删除目录
- pwd 显示当前目录路径
- in 创建链接文件
七、解压缩命令:
tar:
-c 归档文件
-x 解压缩文件
-z gzip/tar.gz压缩文件
-j bzipz压缩文件
-v 显示压缩或解压缩过程
-f 使用档名
-t 显示压缩文件内的内容
八、系统用户操作命令:
- useradd: 添加用户
- adduser: 添加用户
- userdel: 删除用户
- passwd: 设置密码
九、防火墙设置:
- 安装:yum install firewalld
- 启动:service firewalld start
- 检查状态:service firewalld status
- 关闭或禁用防火墙: service firewalld stop/disable
- 设置防火墙规则:开放80/22端口,firewall-cmd --add-port=22/tcp;
- 查询防火墙某个开放的服务:firewall-cmd --query-service=**(服务名称)
- 关闭防火墙某个开放的服务:firewall-cmd --remove-service=**(服务名称)
- 添加防火墙某个服务:firewall-cmd –add-service=ssh(服务名称)
- 永久开启端口或服务参数为:--permanent
十、提权和文件上传下载的操作:
- 提权: sudo操作,方法:visudo进入文件设置加载用户:
- 文件下载: wget、curl
- 文件上传(linux):
a) scp zgx.txt zgx@192.168.1.101:/tmp/ 即可上传到tmp目录下
b) scp zgx@192.168.1.101:/tmp/zgx.txt /tmp 即可下载文件到当前系统
- xshell(windows)上传:sudo yum install lrzsz 安装后利用rz上传和sz下载命令
a) sudo yum install lrzsz 安装windows和linux文件上传下载命令
b) rz: 执行文件上传操作
c) sz zgx.txt : 执行文件下载命令
十一、Apache 基本操作:
1. 安装: yum install httpd
2. 启动: service httpd start
3. 关闭: service httpd stop
十一、Nginx 基本操作:
- 安装: yum install nginx(默认没有nginx,需要如下操作)
a) 添加CentOS 7 Nginx yum资源库命令:sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
b) Sudo yum install –y nginx 即可安装
- 启动: service nginx start
- 关闭: service nginx stop
- 重载: service nginx reload
十二、反向代理和负载均衡:
十三、Mysql基本操作:账号: root 密码:zgx_mysql
- 安装服务端:yum install mysql-community-server
a) yum remove mariadb-libs.x86_64(centos7默认安装mariadb数据库)移除
b) 下载mysql源:https://dev.mysql.com/downloads/repo/yum/ 地址位置
c) 安装源:yum localinstall mysql57-community-release-el7-8.noarch.rpm
d) 安装mysql服务
e) 默认密码: cat /var/log/mysqld.log | grep “password”
f) 设置密码: ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
- 启动:service mysqld start/restart
- 关闭: service mysqld stop
- 远程连接:
a) show databases;
b) use mysql;
c) show tables;
d) update user set host=’%’ where host=’localhost’ and user=’root’;l (允许所有主机权限访问)
e) sudo service mysqld restart; (服务重启,刷新权限)
- 开启 Genelog (记录增删改查sql语句)跟踪数据执行过程:
a) set global general_log_file=’/tmp/general.log’; (设置general log保存路径)
b) set global general_log=on; (开启general log模式)
- 新建用户和权限操作:
a) 创建用户:CREATE USER ‘root’@’%’ IDENTIFIED BY ‘123456’;
b) 赋予所有权限:grant all privileges on *.* to ‘root’@’%’ indentified by ‘123456’ with grant option; (*.*为所有数据库下的所有表,all privileges:所有权限)
c) 个别权限:grant select,insert on *.* to ‘root’@’%’ indentified by ‘123456’ with grant option;
d) 重启数据库;
e) 收回权限: revoke all privileges on *.* from root;
- 忘记root密码抢救:
a) 在/etc/my.cnf 加入skip-grant-tables 跳过密码验证;
b) use mysql;
c) update user set authentication_string=password(‘123456’) where user=’root’;
十四、缓存服务(redis/memcached):
Memcached基本操作:
a) 安装: yum install memcached
b) 启动: memcached –d –l –m –p
c) 停止:kill pid;
Redis基本操作:
a) 源码编译安装;
1) 获取源码:wget http://download.redis.io/releases/redis-5.0.4.tar.gz
2) 解压: tar xvzf redis-5.0.4.tar.gz
3) 安装: yum install gcc ; make MALLOC=libc ; sudo make install。
4) 进入启动服务目录: cd src ; ls ;(查看服务)
b) 启动服务:./redis-server ;
c) 客户端启动: ./redis-client;
Reids拓展知识:
a) Redis支持家当的k/v类型的数据的同时。还提供list,set,hash等数据结构储存;
b) Redis支持数据的备份,即master-slave模式的数据备份
c) Redis支持数据的持久化,可以将内存中的数据保存在磁盘中;
十五、GIT:
- Git安装:yum install git
- Git命令自动补全功能设置
- ~/.ssh中生成 ssh key:ssh-keygen;
- Git常用命令:git config; git init; git clone; git remote; git fetch; git commit; git rebase; git push;
十六、PHP服务:
- 默认5.4版本太低升级到7.2版本:
a) 检查当前安装的php包:yum list installed | grep php
b) 如果有安装的php包,先删除以下:yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64
- 配置源:
a) sudo rpm -Uvh http://mirror.webtatic.com/yum/el7/epel-release.rpm
b) sudo rpm -Uvh http://mirror.webtatic.com/yum/el7/webtatic-release.rpm
c) 如果想删除上面安装的包,重新安装的:
rpm –qa | grep webtatic;
rpm –e 上面搜索到的包即可;
2.fpm安装和基本操作
a) 安装:yum install php72w-fpm(也可以php70w-fpm)
b) 基本操作:service php-fpm start/restart/stop
3.安装php扩展:yum install php72w.x86_64 php72w-cli.x86_64 php72w-common.x86_64 php72w-gd.x86_64 php72w-mbstring.x86_64 php72w-mcrypt.x86_64 php72w-mysql.x86_64 php72w-pdo.x86_64 php72w-bcmath.x86_64 php72w-devel.x86_64 php72w-ldap.x86_64 php72w-odbc.x86_64 php72w-pecl-memcached.x86_64 php72w-pecl-redis.x86_64 php72w-mongodb.x86_64 php72w-pecl-xdebug.x86_64 php72w-opcache.x86_64
- Nginx环境配置:
十七、Linux常用服务:
- crontab:定时任务 crontab –e
- Ntpdate:日期同步 ntpdate cn.pool.ntp.org
- 时区设置:
a) 删除默认美国时区:Sudo rm /etc/localtime
b) 设置上海默认时区: ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- Logrotate:日志切割
- Supervisor:进程管理
a) 安装:sudo pip install supervisor
b) 新建配置目录:sudo mkdir /etc/supervisor
c) 生成配置文件:echo_supervisord_conf > /etc/supervisor/supervisor.conf
6.监控系统Zabbix