linux操作笔记

linux

linux环境搭建

服务器连接软件

Xshell&Xftp

Xshell:官网提供了付费和免费的家庭和学校用户版

Xftp:官网提供了付费和免费的家庭和学校用户版

python3

安装依赖环境
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
下载python3
  1. 切换路径 cd /opt

  2. 下载 wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz

    如果没有wget命令 yum -y install wget

    为什么不安装别的版本,因为写的时候最新的是3.10但是还在改bug,3.7和3.8是比较稳定的版本。

  3. 安装python3

    • 创建目录 mkdir -p /usr/local/python3

    • 解压 tar -zxvf Python-3.7.1.tgz

  4. 编译

    • 安装gcc yum install gcc

    • 3.7版本之后需要安装一个新的包 yum install libffi-devel -y

    • 进入python文件夹 cd Python-3.7.1

    • 指定安装目录 ./configure --prefix=/usr/local/python3

    • 编译 make

    • 安装 make install

    • 检查 /usr/local/python3/bin/python3.7

      image-20211020151306201

  5. 建立python3和pip3的软连接

    • python3 ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    • pip3 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    • 不要将python的软连接指向python3因为linux底层有部分是python2写的,如果将python指向python3会出错,python2和python3差的很多。
  6. 添加环境变量

    • vim /etc/profile

    • 按 ’i‘ ,然后粘贴如下内容

      # vim ~/.bash_profile
      
      # .bash_profile
      
      # Get the aliases and functions
      
      if [ -f ~/.bashrc ]; then
      
      . ~/.bashrc
      
      fi
      
      # User specific environment and startup programs
      
      PATH=$PATH:$HOME/bin:/usr/local/python3/bin
      
      export PATH
      

      image-20211020151910120

    • 按Esc,输入:wq回车退出

    • 修改完以后执行 source ~/.bash_profile

  7. 检查python3和pip3是否可用

    • python3 -V

      image-20211020152044405

    • pip3 -V

      image-20211020152116420

  8. 升级pip

    pip3 install --upgrade pip

  9. pip国内镜像

    pip3 install scrpay -i https://pypi.tuna.tsinghua.edu.cn/simple

redis

redis是个很好用的库,如果只是测试可以在内网自己搭建,如果你的服务器是公网,你如果想在本地访问就要开启外网访问了。

linux搭建redis
下载redis

执行命令,这里选择的5.0的版本,可根据需要进行修改

wget http://download.redis.io/releases/redis-5.0.7.tar.gz

解压redis

tar -zvxf redis-5.0.7.tar.gz

移动目录

mv /root/redis-5.0.7 /usr/local/redis

移动工作目录

cd /usr/local/redis

编译redis

make

安装redis

make PREFIX=/usr/local/redis install

解释一下,这里的PREFIX是指定存放路径,如果不指定Linux会将可执行文件存放在/usr/local/bin目录,库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。(大佬的解释,我抄的)

启动测试redis

./bin/redis-server ./redis.conf &

最后那个&是表示redis后台运行,./redis.conf是表示加载redis.conf配置文件,这时候如果在服务器上测试是可以的,输入指令 redis-cli

image-20211020111718326

查看配置

CONFIG GET *

image-20211020111815491

配置项很多,

配置项名称配置项值范围说明
daemonizeyes、noyes表示启用守护进程,默认是no即不以守护进程方式运行。其中Windows系统下不支持启用守护进程方式运行
port指定 Redis 监听端口,默认端口为 6379
bind绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问 。
protected-modeyes 、no保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将此属性改为no。
timeout300当客户端闲置多长时间后关闭连接,如果指定为 0,表示关闭该功能
logleveldebug、verbose、notice、warning日志级别,默认为 notice
databases16设置数据库的数量,默认的数据库是0。整个通过客户端工具可以看得到
rdbcompressionyes、no指定存储至本地数据库时是否压缩数据,默认为 yes,Redis 采用 LZF 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大。
dbfilenamedump.rdb指定本地数据库文件名,默认值为 dump.rdb
dir指定本地数据库存放目录
requirepass设置 Redis 连接密码,如果配置了连接密码,客户端在连接 Redis 时需要通过 AUTH 命令提供密码,默认关闭
maxclients0设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为 Redis 进程可以打开的最大文件描述符数,如果设置 maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回 max number of clients reached 错误信息。
maxmemoryXXX 指定 Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的 vm 机制,会把 Key 存放内存,Value 会存放在 swap 区。配置项值范围列里XXX为数值。

​ 这是一些参考,主要的参数有如下几个:

​ requirepass——> 设置密码 requirepass 123 指定密码为123

​ daemonize——>修改为yes,可以启动的时候不加&

​ bind——>注释掉,这样可以不限制ip,为外放访问做铺垫

​ protected-mode——>改为no,这样就可以外网访问了

redis设置外网访问
  1. 打开我们的配置文件,如果按照上面的步骤来的,那配置文件就在这个路径下:/usr/local/redis,该路径下有一个redis.conf的文件,

    image-20211020112831114

  2. 编辑配置文件 vim /usr/local/redis/redis.conf

  3. 修改ip限制

    image-20211020113002762

  4. 增加守护进程

    image-20211020113039936

  5. 允许外网访问

    image-20211020113120014

  6. 保存并退出,Esc-:wq

  7. 查询之前启动的redis的进程号 ps -aux

    image-20211020113343258

  8. kill -9 进程号

  9. 重新启动redis,/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf &按理论来说可以不用&,但是以防万一我就加上了。

测试外网访问

次数使用python进行测试,其他语言可自行百度进行测试。

import redis

pool = redis.ConnectionPool(host='你的ip', port=端口,db='0',decode_responses=True,password='访问密码(没有就删除该字段)') # db 选择库
r = redis.Redis(connection_pool=pool)
print(r.keys()) # 查询所有的key

image-20211020114540912

之前redis存过值,所以查询的key有数据,如果没使用过,则查询结果为空列表。

如果访问不到,可以看看服务器提供商的安全组是否开放了对应端口,如果检查服务器是否开放了对应的TCP端口,服务器端口开发命令:firewall-cmd --zone=public --add-port=要开放的端口/tcp --permanent

redis常用命令

直接看大佬

docke

没别的优点,就是好用。

linux搭建docker

这里使用的Contos7

docker下载并安装
  1. 检查是是否安装了yum list installed | grep docker

  2. 如果没安装就安装

  3. 下载并安装 yum -y install docker

  4. 完成后再次查看 yum list installed | grep docker

    image-20211020120324091

启动docker

systemctl start docker

查看docker服务状态

systemctl status docker

image-20211020120453899

docker常用命令

还是看大佬

GitHub上的中文操作手册

docker搭建es库
修改参数
  1. 查看查看max_map_count的值 默认为65530

    cat /proc/sys/vm/max_map_count

  2. 重新设置max_map_count的值

    sysctl -w vm.max_map_count=262144

下载镜像
  1. 使用docker拉取镜像

    docker pull elasticsearch:7.7.0

  2. 启动镜像

    docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0

访问测试

浏览器访问ip:9200,出现如下的类似页面则安装完成,

image-20211020140937769

如果访问不到,先检查一下是安全组,然后再去检查一下服务器端口。

安装elasticsearch-head
  1. docker拉取镜像

    docker pull mobz/elasticsearch-head:5

  2. 创建容器

    docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5

  3. 启动容器

    docker start elasticsearch-head

  4. 访问连接http://ip:9100

    如果被拒绝访问,先检查一下是安全组,然后再去检查一下服务器端口。

  5. 解决数据跨域问题

    查看在运行的docker docker ps

    image-20211020141552228

    进入es的docker环境 docker exec -it es的ID /bin/bash

    image-20211020141947453

    查询当前文件夹的内容 ls

    image-20211020142134189

    移动到config中 cd ./config

    修改里面的elasticsearch.yml文件 vim ./elasticsearch.yml

    如果vim报错说不存在,bash: vim: command not found

    两个命令解决:

    Ubuntu:

    apt-get update

    apt-get install vim

    CentOS:

    yum update

    yum install vim

    完活!

    编辑 elasticsearch.yml 文件,添加如下内容:

    http.cors.enabled: true http.cors.allow-origin: "*"

    image-20211020143554196

    保存并退出。Esc->:wq

    退出当前容器:

    exit

    进入elasticsearch-head容器(用docker ps查询容器id)

    docker exec -it 容器id /bin/bash

    image-20211020144337145

    修改此文件 vim ./Gruntfile.js

    添加hostname

    connect: {
                            server: {
                                    options: {
                                            hostname: '0.0.0.0',
                                            port: 9100,
                                            base: '.',
                                            keepalive: true
                                    }
                            }
                    }
    
    

    image-20211020144519586

    保存并退出。记得退出容器。

    重启两个容器 docker restart es-header容器id es容器id

    image-20211020144812580

    网页访问ip:9100

    image-20211020144930408

    将上面的localhost修改为你的ip,然后点击连接即可。

linux搭建mysql
拉取镜像
docker pull mysql

默认会拉取最新的mysql版本,这次拉取的是mysql8。

创建容器
docker run -itd --name mysql-test -p 9768:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

将服务器的9768端口映射到docker的3306端口,root密码设置为123456。

mysql8创建外网访问

因为版本问题,mysql8需要手动添加mysql的外网访问,5.6不需要。

查询容器id

docker ps

image-20211108150430874

进入docker环境

docker exec -it 07b3fb2c6828 /bin/bash

image-20211108150546171

进入mysql

mysql -uroot -p

image-20211108150628967

执行sql语句

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
本地连接

image-20211108150737782

测试连接

image-20211108150753191

完成。

Java

linux环境下搭建Java
安装JDK

这次选择jdk8安装,原因就是我喜欢。

  1. 下载JDK包,现在官网对JDK下载有cookie验证,所以只能选择手动下载方式了,共享登录账号我用的版本

  2. 使用Xftp将下载好的jar包上传到服务器上,一般上传到我们的/usr/local中。

  3. 解压

    tar -zxvf jdk-8u181-linux-x64.tar.gz
    
  4. 编辑环境变量

    vim /etc/profile
    
  5. 添加环境变量

    export JAVA_HOME=/usr/local/jdk1.8.0_181  #jdk安装目录
     
    export JRE_HOME=${JAVA_HOME}/jre
     
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
     
    export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
     
    export PATH=$PATH:${JAVA_PATH}
    
  6. 检测安装是否成功

    • 命令 javac

      image-20211025102447737

    • 命令 java -version

      image-20211025102640563

    • 完活

linux工具

运维可视化工具

宝塔

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值