Linux基础第三天—Linux的软链接与硬链接、安装nginx以及基本配置、LNMP和LAMP的搭建

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 
版权声明:本文为博主原创文章,转载请附上博文链接!

  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值