随笔分类 -  Linux/Nginx/Shell服务器知识等

摘要:一、问题背景 1、报错描述: 今天执行 sql 时发现 Node 服务的日志报错:SequelizeDatabaseError: EE_WRITE: Error writing file '/tmp/MY4QWdUa' (Errcode: 28 - No space left on device) 阅读全文
posted @ 2023-02-08 21:04 古兰精 阅读(2210) 评论(0) 推荐(0) 编辑
摘要:一、问题背景 使用 yum 时报错,yum list 或 yum 安装任何东西都报错 CentOS-8 - Base - mirrors.aliyun.com 299 B/s | 2.3 kB 00:07 Errors during downloading metadata for reposito 阅读全文
posted @ 2022-05-10 22:31 古兰精 阅读(3238) 评论(1) 推荐(0) 编辑
摘要:一、问题背景 在实际应用中,我们可能需要获取用户的ip地址,比如做异地登陆的判断,或者统计ip访问次数等,通常情况下我们使用 request.getRemoteAddr() 就可以获取到客户端ip,但是当我们使用了nginx 作为反向代理后,使用 request.getRemoteAddr() 获取 阅读全文
posted @ 2021-11-22 22:42 古兰精 阅读(10806) 评论(0) 推荐(4) 编辑
摘要:一、nginx 配置 http 请求重定向到 https server段{}可以这样写: // 方式1 rewrite ^/(.*)$ http://domain.com/$1 permanent; // 方式2 rewrite ^ http://domain.com$request_uri? pe 阅读全文
posted @ 2021-08-30 22:57 古兰精 阅读(1170) 评论(0) 推荐(0) 编辑
摘要:做实训平台的时候有用到将 docker 应用迁移到 linux 的数据盘,我们有个 500g 的数据盘,对这方面不了解,所以查博客学习一下。 通常在项目正式上线后,随着Linux服务器中系统盘数据量的不断增长,导致Disk过高,数据存储空间短缺。因此,我们通常需要将系统盘数据进行迁移,通过创建数据盘 阅读全文
posted @ 2021-08-29 19:31 古兰精 阅读(1177) 评论(0) 推荐(0) 编辑
摘要:一、磁盘管理 1、Linux 磁盘管理好坏直接关系到整个系统的性能问题。Linux 磁盘管理常用三个命令为 df、du 和 fdisk。 df(英文全称:disk full):列出文件系统的整体磁盘使用量 du(英文全称:disk used):检查磁盘空间使用量 fdisk:用于磁盘分区 2、df 阅读全文
posted @ 2021-08-29 14:46 古兰精 阅读(4275) 评论(0) 推荐(0) 编辑
摘要:一、文件基础属性 1、Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。 2、在 Linux 中我们通常使用以下两个命令来修改文件或目录的所属用户与权限: chown 阅读全文
posted @ 2021-08-28 23:24 古兰精 阅读(892) 评论(0) 推荐(0) 编辑
摘要:一、df 、du 常见命令 du 查看目录大小,df 查看磁盘使用情况。 1、df -h 命令查看:文件系统 容量 已用 可用 已用占比 挂载点 (列标题) 2、查看某个目录的大小:du -hs /home/master/documents 3、查看目录下所有目录的大小并按大小降序排列:sudo d 阅读全文
posted @ 2021-08-26 22:49 古兰精 阅读(1094) 评论(0) 推荐(0) 编辑
摘要:一、Linux 系统启动过程 1、Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: (1)内核的引导。 (2)运行 init。 (3)系统初始化。 (4)建立终端 。 (5)用户登录系统。 2、内核引导 当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动 阅读全文
posted @ 2021-08-23 22:49 古兰精 阅读(2526) 评论(0) 推荐(0) 编辑
摘要:一、shell流程控制 1、和其他语言不一样,sh 的流程控制不可为空。如果 else 分支没有语句执行,就不要写这个 else。 2、if else 流程 (1)if 语句语法格式: if condition then command1 command2 ... commandN fi 写成一行( 阅读全文
posted @ 2021-08-21 22:53 古兰精 阅读(518) 评论(0) 推荐(0) 编辑
摘要:一、proxy_cookie_domain配置误区 Nginx做反向代理的时候,我们一般习惯添加proxy_cookie_domain配置,来做cookie的域名转换,比如 location /api { proxy_pass https://***.test.com; proxy_cookie_d 阅读全文
posted @ 2021-08-21 22:16 古兰精 阅读(3425) 评论(0) 推荐(0) 编辑
摘要:一、设备文件处理与磁盘文件的区别 先说几个比较直观的感觉。首先,在你通过键盘(一般是标准的输入的终端设备),输入字符,直到你输入的回车键(键盘上面的 Enter 为回车键,不是换行键;换行的 ACCII 为 10,回车为 13;换行在程序中的体现就是 \n),你的程序才会有“反应”,给人一种好像就是 阅读全文
posted @ 2021-08-21 21:36 古兰精 阅读(11231) 评论(0) 推荐(1) 编辑
摘要:在进到容器内部执行命令的时候,如果命令比较长,会出现折行情况,如 可以调节里面的两个环境变量:$COLUMNS $LINES,默认是80 24。 一、问题描述及解决 1、问题情况一:我需求里遇到的情况 docker 容器在启动成功后是可以通过docker exec,kubectl exec命令登陆进 阅读全文
posted @ 2021-08-21 21:01 古兰精 阅读(4528) 评论(1) 推荐(1) 编辑
摘要:一、传递参数 1、在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。 n 代表一个数字,0 为执行的文件名,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推 #以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名(包含文件路径): #!/bi 阅读全文
posted @ 2021-08-19 22:49 古兰精 阅读(906) 评论(0) 推荐(0) 编辑
摘要:一、什么是Shell脚本 可以看这篇博客,基础知识写的比较全:Linux Shell脚本教程:30分钟玩转Shell脚本编程 —— http://c.biancheng.net/cpp/shell/ 1、简介 Shell脚本(英语:Shell script)是一种电脑程序与文本文件,内容由一连串的s 阅读全文
posted @ 2021-08-17 22:48 古兰精 阅读(563) 评论(0) 推荐(0) 编辑
摘要:Linux su(英文全拼:switch user)命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。使用权限:所有使用者。 一、语法 su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG] 阅读全文
posted @ 2021-08-16 22:40 古兰精 阅读(15635) 评论(0) 推荐(0) 编辑
摘要:一、Linux连续执行多条命令的写法 多个命令可以放在一行上,其执行情况得依赖于用在命令之间的分隔符。分隔符有分号 ";"、"&&" 和 "||"。 1、分号分隔 命令按顺序从左到右依次执行,如果某个命令执行出错了,直接跳到下一个命令继续执行!(这个比较危险,慎用) 2、"&&": 这个和编程语言中 阅读全文
posted @ 2021-08-14 19:29 古兰精 阅读(330) 评论(0) 推荐(1) 编辑
摘要:sed 是一个比较古老的,功能十分强大的用于文本处理的流编辑器,加上正则表达式的支持,可以进行大量的复杂的文本编辑操作。sed 本身是一个非常复杂的工具,有专门的书籍讲解 sed 的具体用法,但是个人觉得没有必要去学习它的每个细节,那样没有特别大的实际意义。我们经常在 Dockerfile 文件中看 阅读全文
posted @ 2021-08-12 22:45 古兰精 阅读(8238) 评论(0) 推荐(2) 编辑
摘要:一、apt、yum、apk的介绍 1、apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。 apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。 apt 命令执行需要超级管理 阅读全文
posted @ 2021-08-12 16:34 古兰精 阅读(3651) 评论(0) 推荐(0) 编辑
摘要:一、Linux 创建文件的5种方式 1、touch 命令 // 创建一个文件 touch test.ini // 同时创建两个文件 touch test1.txt test2.txt // 批量创建文件(如创建2000个文件) touch test{0001..2000}.txt // 更改文件 t 阅读全文
posted @ 2021-08-01 18:16 古兰精 阅读(6414) 评论(0) 推荐(0) 编辑