ln 创建硬链接
ln oldboy.txt oldgirl.txt 创建硬链接,原文件oldboy.txt写在前面,两文件inode相同,存在同一个block中,
内容同步删除,但其中一个删除 另一个并不会消失,因为block,
ln -s 创建软链接
ln -s oldboy.txt oldgirl.txt 创建软链接,两个文件有两个inode,inode不同就属于两个文件,生产环境常用
区别:
1)删除软链接对源文件和硬链接无影响
2)删除硬链接对源文件和软链接无影响
3)删除源文件对硬链接无影响,软链接失效。
4)同时删除源文件、硬链接文件,文件被真正删除。
5)源文件和硬链接文件inode相同,可以认为是同一个文件,或者是一个文件的另外一个入口
6)源文件和软链接文件inode不同,是两个文件,软链接相当于是源文件的快捷方式,含有源文件的位置指向。
crond(定时任务):
/var/spool/cron
>/dev/null 2>&1 /dev/null是黑洞,正确或者错误的都指向黑洞去,即不在终端打印出结果
crontab -e 编辑定时任务文件
* * * * * 分 时 日 月 周
*/5 * * * * ntpdate time1.aliyun.com >/dev/null 2>&1 每5分钟同步更新时间,但不将结果打印到终端
ip link set ens33 down ens33连接关闭
ip link set ens33 down 连接开启
ip addr add 192.1682.12/24 添加第二个ip地址
ip addr del 192.168.2.12/24 dev ens33 删除ip地址
route -n 查看路由表
安装mariaDB数据库:
yum install mariadb-server -y 安装mariadb数据库
rpm -ql mariadb 查看yum途径安装的文件
vim/etc/my.cnf 编辑Mysql默认配置文件
datadir=/var/lib/mysql 默认数据目录
cd /usr/share/
systemctl start mariadb 启动服务
systemctl enable mariadb 开机自启
ll /var/lib/mysql/ 启动服务后生成多个文件,
包括:idbatal配置文件,mysql和test库,performance_schema库结构文件,mysql.sock锁文件
systemctl status mariadb 查看状态
ll /mysql 查看数据库中的表
mysql_secure_installation 设置数据库安全初始化设置
设置root密码
移除匿名用户
禁止远程登录
移除测试数据库和访问
刷新授权表
socket=/var/lib/mysql/mysql.sock 默认锁文件
mysql -uroot -p 登录数据库
grant all on test.* to test@"10.0.0.%" identified by "123456"; 创建test用户且创建test库
安装nginx:
yum install nginx 安装
--y
rpm -ql nginx 查看已安装文件
vim /etc/nginx/nginx.conf 编辑nginx配置文件
user nginx; 用户名
worker_processes auto; 进程,按cpu核数来配
error_log /var/log/nginx/error.log; 存放错误日志的路径
pid /run/nginx.pid; Pid运行文件
include /usr/share/nginx/modules/*.conf; 模块文件
events {
worker_connections 1024;
} 允许的最大连接数;由于Linux下一切皆文件,在Linux下最大连接数为65535
cd /etc/nginx/
cat /etc/passwd 两条命令查看创建nginx系统会自动创建的一个虚拟用户,无法登录,只能启动nginx服务
http {
log_format main ****** 日志格式
include /etc/nginx/conf.d/*.conf; 配置文件路径,配置文件存在多个时将匹配多个
server { 网站的服务器配置
listen 80 default_server;
listen [::]:80 default_server;
server_name _; 设置域名
root /usr/share/nginx/html; 首页网址html文件
access_log /var/log/nginx/access.log main; 日志存放路径以及所指定使用的日志格式
systemctl start nginx 启动nginx服务
ss -lunpt 查看端口监听状态
python3依赖安装命令:
yum install wget openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc-c++ -y
yum install libxml* -y
./configure --prefix=/usr/local/python3 解压python3文件
打开并进入python3.6.3文件:
cd /usr/local/python3
make -j2
make install -j2
/usr/local/python3/bin/python3 -v 运行Python3解释器
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 将python3解释器执行文件进行软链接(即放入环境变量当中),在任何目录下都可直接运行
python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 pip3执行文件进行软链接,功能同上
pip3
pip3 install uwsgi 安装uwsgi包
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3 uwsgi软链接,功能同python3以及pip3软链接
uwsgi3
在用户家目录下创建foobar.py文件:
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World"]
uwsgi3 --http :9091 --wsgi-file foobar.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191 使用uwsgi部署到9091端口上
浏览器中输入linux服务器Ip:9091
配置nginx+uwsgi:
nginx配置文件下添加:
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:9091;
}
如果你的代理/web 服务器/路由器使用 HTTP 协议,你必须告诉 uWSGI 使用 HTTP 协议
uwsgi3 --socket 127.0.0.1:9091 --wsgi-file foobar.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191
使用uwsgi.ini配置文件式启到服务
[root@pytho-linux ~]# cat uwsgi.ini
[uwsgi]
socket=127.0.0.1:9091
wsgi-file=foobar.py
master=true
processes=4
threads=2
stats=127.0.0.1:9191
14.1.5 使用uwsgi部署Django程序
创建Django项目
/usr/local/python3/bin/django-admin startproject mysite
修改mysite/settings.py文件:
ALLOWED_HOSTS = ["*"]
使用如下方法测试Django网站是否正常:
python3 manage.py runserver 0.0.0.0:9000
如果正常,则使用uWSGI来运行它
uwsgi3 --socket 127.0.0.1:9000 --module mysite.wsgi
启动后配置nginx
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:9000;
}
同上也可以使用配置文件方式部署
[root@pytho-linux mysite]# cat uwsgi.ini
[uwsgi]
chdir=/opt/mysite
module=mysite.wsgi
master=true
processes=10
socket=127.0.0.1:9000
LAMP与LNMP架构的区别及其具体的选择说明:
LAMP==Linux+Apache+Mysql+PHP
LNMP==Linux+Nginx+Mysql+PHP
以上两只架构是目前网站的主流架构
LAMP和LNMP最主要的区别在于:
一个使用的是Apache,一个使用的是Nginx。
我们就来说说Apache
Apache是世界是用排名第一的Web服务器软件,其几乎可以在所有广泛使用的计算机平台上运营,由于其跨平台和安全性被广泛使用,是最流行的Web服务端软件之一。
相比于nginx,apache有些臃肿,内存和CPU开销较大,性能上有损耗,nginx对于静态文件的响应能力远高apache。
Apache是负载PHP的最佳选择,如果流量很大的话,可以使用nginx来负载非PHP的Web请求。在整个IT界而言,70%的流量访问均来源于Apache。
下面说说Nginx
Nginx是一款高性能额Http和反向代理服务器,也是一个AMAP/POP3/SMTP服务器,Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日,2011年6月1日,nginx 1.0.4发布。
相比于Apache,nginx使用资源更少,支持更多并发连接,效率更高,作为负载均衡服务器。nginx即可对内进行支持,也可对外进行服务。其还是一款非常优秀的邮件代理服务器,安装简单,配置简介。
LNMP是Linux+Nginx+Mysql+PHP的组合方式,其特点是利用Nginx的快速与轻量级,替代以前的LAMP(Linux+Apache+Mysql+PHP)的方式。由于安装方便,并且安装脚本也随时更新。
LNMP方式的优点:占用VPS资源较少,Nginx配置起来也比较简单,利用fast-cgi的方式动态解析PHP脚本。
LNMP方式的缺点:php-fpm组件的负载能力有限,在访问量巨大的时候,php-fpm进程容易僵死,容易发生502 bad gateway错误
综上所述:
基于 LAMP 架构设计具有成本低廉、部署灵活、快速开发、安全稳定等特点,是 Web 网络应用和环境的优秀组合。若是服务器配置比较低的个人网站,当然首选 LNMP 架构。
当然,在大流量的时候。把Apache和Nginx结合起来使用,也不失为一个不错选择,如下:
LNAMP是Linux+Nginx+Apache+Mysql+PHP的组合方式,其特点是利用Nginx来作为静态脚本的解析,而利用 Nginx的转发特性,将动态脚本的解析转交给Apache来处理,这样,能充分利用两种Web服务器的特点,对于访问量需求较大的站点来说,是一个很不错的选择。
LNAMP方式的优点:由于Apache本身处理PHP的能力比起php-fpm要强,所以不容易出现类似502 bad gateway的错误。适合访问量较大的站点使用。
LNAMP方式的缺点:相比LNMP方式会多占用一些资源,另外,配置虚拟主机需要同时修改Nginx和Apache的配置文件,要稍微麻烦一些。
---------------------
作者:xzh852330491
来源:CSDN
原文:https://blog.csdn.net/xzh852330491/article/details/78272364
版权声明:本文为博主原创文章,转载请附上博文链接!