linux系统

什么是:

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。

如何安装centos7

虚拟机安装过程

常用的网络适配器:

第一种:NAT模式

第二种:桥接模式

NAT网络和桥接网络的区别:

NAT(Network Address Translation,网络地址转换)模式:虚拟机不能直接接触到外部网络,所有的网络连接请求都由宿主机进行转发。这种方式的优点是设置简单,可以在没有额外IP地址的情况下使用。缺点是虚拟机不能作为服务器提供服务,因为它没有自己的公网IP地址。

桥接模式:在这种模式下,虚拟机直接连接到宿主机所在的物理网络,它会从网络中获取自己的IP地址,就像是网络中的一台独立的计算机。这样虚拟机就可以提供网络服务,其他设备可以直接访问虚拟机。但是,这种模式需要在网络中有足够的IP地址供虚拟机使用。



需要安装一个ssh软件:

命令

查看ip 地址    ip addr    ifconfig

目录切换命令:  cd

语法:cd【切换到目录】

切换上一级目录:cd ../

切换到跟目录: cd /

查看目录下的内容: ls

参数: -a 所有 隐藏的列出
     -l 列表

查看当前所在的目录:pwd

创建文件命令:touch 文件名

创建目录:mkdir 目录名称

-p: 允许创建多层目录

删除文件或目录: rm 文件或者目录名

rm [参数] 文件或目录名
 

复制命令:cp 文件|目录  目标目录

-r: 允许复制目录

查看文件内容:

cat 文件名: 查询所有的内容。

more 文件名: 查看当前窗口大小的内容。 enter回车 下一行内容 空格: 下一页

head -n 文件名: 查看前n行的内容。

tail -n 文件名: 查看后n行内容。 【必须记住===>日志】

重命名|剪切: mv

测试网络连通性: ping

ping 网络ip或域名=====>域名解析====>ip====>网站

编辑命令: vi

vi 文件名
注意: 命令行模式--->i----编辑模式--->esc键---->命令行模式--->:wq退出并保存   :q! 退出不保存


例子:

修改ip地址为固定ip.

vi /etc/sysconfig/network-scripts/ifcfg-ens33

重启网络

systemctl restart network

搜索文件或目录命令: find

find 目录 -name "名称"
注意:名称可以使用通配符 *

查看所有进程命令: ps -ef

查看指定内容在文件中:  grep

grep "内容" 文件名 

管道符 : |

查看端口号: netstat -tunlp | grep 端口号

netstat -tunlp | grep 端口号

option说明:
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名

netstat -ntlp //查看当前所有tcp端口。 tcp协议 网络传输协议
netstat -ntulp | grep 80 //查看所有80端口使用情况
netstat -ntulp | grep 3306 //查看所有3306端口使用情况

解决办法:

默认的网址不让用了。---只能使用阿里云的

(1)下载阿里云yum文件.

(2)切换到 cd /etc/yum.repos.d 下 把下面的文件重名明为 CentOS-Base.repo.backup

(3) 把你下载的阿里云文件放入 /etc/yum.repos.d 并改名为 CentOS-Base.repo

(4) 使用yum clean all 清除之前所有的yum

(5) 使用 yum makecache

压缩和解压缩命令

**压缩命令**:  tar -zcvf   xxxx.tar.gz

tar -zcvf 压缩后的名称.tar.gz  要压缩的目录
 z: 通过gzip进行压缩/解压缩
 c: 压缩
 v: 详情
 f: 文件 【必填】

 **解压命令**: tar -zxvf

tar -zxvf 解压的文件.tar.gz 
  -x: 解压

安装软件:

jdk:

tomcat:

mysql:

https://www.cnblogs.com/tony-hyn/p/15777762.html

什么是shell:

后缀:.sh  .bat

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。

Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。

Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。

shell就是用户与linux交换的一款语言。

编写第一个shell

#!/bin/bash
# echo表示输出 
echo "hello world"

运行该脚本: ./路径/脚本名.sh

变量 弱语言

#!/bin/bash
name="刘德华";
echo "姓名:${name}"
echo "姓名:"${name}

Shell 传递参数

在执行shell脚本时可以传递参数值。

#!/bin/bash
name="刘德华";
echo "姓名:${name}"
echo "姓名:"${name}
echo "第一个参数值:$1"
echo "第一个参数值:$2"

执行脚本: ./脚本名 传递的值 值2

Shell 数组

数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。

与大部分编程语言类似,数组元素的下标由 0 开始。

Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:

array_name=(value1 value2 ... valuen)

关联数组--map集合

Bash 支持关联数组,可以使用任意的字符串、或者整数作为下标来访问数组元素。

关联数组使用 declare 命令来声明,语法格式如下:

declare -A site=(["google"]="www.google.com" ["runoob"]="www.runoob.com" ["taobao"]="www.taobao.com")

-A 选项就是用于声明一个关联数组。

关联数组的键是唯一的。

以下实例我们创建一个关联数组 site

Shell 基本运算符

**算术运算符**

原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。

expr 是一款表达式计算工具,使用它能完成表达式的求值操作。

例如,两个数相加(注意使用的是反引号 *`* 而不是单引号 *'*)

#!/bin/bash
a=100
b=15
c=`expr $a / $b`
echo "c===$c"

**关系运算符*

a=10
b=20
#
if [ $a -eq $b ]
then
   echo "$a -eq $b : a 等于 b"
else
   echo "$a -eq $b: a 不等于 b"
fi

**布尔运算符**

if [ $a -lt 100 -a $b -gt 15 ]
then
   echo "$a 小于 100 且 $b 大于 15 : 返回 true"
else
   echo "$a 小于 100 且 $b 大于 15 : 返回 false"
fi

控制语句

if for

a=10
b=20
if [ $a -eq $b ]
then
   echo "a 等于 b"
elif [ $a -gt $b ]
then
   echo "a 大于 b"
elif [ $a -lt $b ]
then
   echo "a 小于 b"
else
   echo "没有符合的条件"
fi

**for**

for var in item1 item2 ... itemN
do
    command1
    command2
    ...
    commandN
done

nginx

什么是nginx

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。并发能力: 50,000 

为什么使用nginx?

**nginx配置文件**

#user  nobody; 
#工作的线程数
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    # 每个工作对象允许的连接数
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    server {
       listen 81;
       server_name localhost;
       location /{
           root static;
           index main.html;
          
       }
    }

    #gzip  on;
    server {
        listen       80; # 监听的端口号
        server_name  localhost; # 监听的主机名.域名

        #charset koi8-r;

        #access_log  logs/host.access.log  main;


        # 资源/ 
        location / {
            root   html; #根目录
            index  index.html main.html; # 资源
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值