分类 linux 中的文章

mysql集群在线无损扩容

前言

收到数据库磁盘占比告警了
前提条件,磁盘采用lvm管理方式,做在线无损扩容才方便管理,其他方式没测试过

1、分配一个1T的新盘,HDD、SDD随规划选择

这个一般在磁阵或者云管理平台操作,不需要什么命令,一般都是图形化操作

2、查找新分配的1T新盘

1
2
fdisk -l     
lvmdiskscan

个人建议第二个命令,2个命令都会返回一堆查询值,怎么判断谁是新盘,谁是已使用的盘,这点有运维经验的人还是不成问题的,不详说

……

阅读全文

linux的一些细节点-不定期补充

前言

linux的一些小细节记录

1、tmp目录、var目录自动清理

tmp下的文件或目录长时间没有更新或者改动的话,systemd-tmpfiles 会按配置定期清理,配置参考如下:

1
vi /usr/lib/tmpfiles.d/tmp.conf
1
2
3
4
5
6
7
8
9
# Clear tmp directories separately, to make them easier to override  
v /tmp 1777 root root 90d  
v /var/tmp 1777 root root 90d  

# Exclude namespace mountpoints created with PrivateTmp=yes  
x /tmp/systemd-private-%b-*  
X /tmp/systemd-private-%b-*/tmp  
x /var/tmp/systemd-private-%b-*  
X /var/tmp/systemd-private-%b-*/tmp

2、tcp连接数统计

1
2
3
4
5
6
7
netstat -ant|awk '/^tcp/ {++S[$NF]} END {for(a in S) print (a,S[a])}'

TIME_WAIT 1
FIN_WAIT2 1
ESTABLISHED 34
LAST_ACK 1
LISTEN 23

注:netstat 属于已停止维护的 net-tools 套件,新发行版推荐用 ss 等价替代:ss -ant | awk 'NR>1 {++S[$1]} END {for(a in S) print (a,S[a])}'。

……

阅读全文

linux小技巧:文件句柄排查与乱码文件名删除

前言

攒了几个 linux 小技巧,单独发太碎,合在一起记录:文件句柄占用排查(句柄打满的锅十有八九是它)、TIME_WAIT 过多的内核参数、还有删除乱码文件名文件。

1、文件句柄排查

服务报 Too many open files 的时候,先找到是谁把句柄吃光的:

1
2
3
4
5
# 按进程统计打开的文件句柄数量,倒序
lsof -n | awk '{print $2}' | sort | uniq -c | sort -nr | more

# 拿到进程号后再确认是什么进程
ps -aef | grep 进程号

调大句柄上限,root 登录:

……

阅读全文

mysql低版本源代码安装

前言

如果不使用最新版本的mysql,但是低版本的mysql官方不提供编译好的安装包,只能自己编译安装了。以下步骤和参数针对5.6、5.7生效,新版本有变动请阅读官方文档介绍。

版本停更提示:5.6 已于 2021-02、5.7 已于 2023-10 结束官方支持(EOL),两者均不再有安全补丁,新项目请直接上 8.0/8.4 LTS。老库升级前注意 8.0 的行为差异:

……

阅读全文

OrangePi

前言

朋友弄了一批香橙派的板子,给我做测试,拿了板子、CF卡、电源后开启了试玩,通过配置查看,香橙派比草莓派配置还强劲一些,国产的还不错,不过生态没草莓派完善,对新手可能没健全的指导,稍显不友好,但是对于我这种职业开发人员来说,小case,所以这里个人觉得香橙派还是很不错的

1、准备工作

烧录系统镜像
1、准备一个CF读卡器
2、安装Win32DiskImager,给CF卡格式化,其实可以免了直接进入下一步,最初以为跟U盘一样要格式化所以多安装了这个@_@,其实下面ethcher更好用
3、安装ethcher,给CF卡烧录系统的软件
4、准备网线和hub一个,或者用hdmi网线连显示器,作为输出端,烧录后需要登录板子系统进行一些操作,我选择的是ssh方式登录,所以准备网线和hub,如果路由器网口多不用hub也可以,不过朋友测试的是8套香橙派集群,必须要hub

……

阅读全文

开发技能-shell面试整理

1、常规命令

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
cd 切换目录 
ls 查看当前目录下的内容 
cp 复制 
head、tail 显示文件头、尾内容 
cat 查看文件内容 
more、less 分页展示文件内容 
rm 删除 
tar 解、压缩 
touch 创建文本 
mv 移动或重命名 
find 在文件系统中搜索某文件 如find . -name filename 支持正则 
wc 统计 
grep 查找某个字符串 
pwd 显示当前目录

2、系统管理命令

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
su 切换用户 
ps 查看进程 
kill 根据pid号杀进程 
who 显示在线账号 
whoami 显示当前操作账号 
hostname 显示主机名 
uname 显示系统信息 
top 动态显示当前资源消耗 
du 查看目录大小 
df 查看磁盘大小 
ping 测试网络是否连通,丢包 
ifocnfig 查看网卡 
man 帮助 
clear 清屏 
alias 对命令重命名 如:alias showmeit=”ps -aux” ,另外解除使用unaliax showmeit 
netstat 显示网络状态 
free 显示内存使用情况 
sar 1 20 以20次显示当前系统资源占用情况,最终显示这20次的平均值 
export 设置环境变量

3、Linux管道

1
2
将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。 
例:grep -r “close” /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。

4、用户及用户组管理

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
/etc/passwd 存储用户账号 
/etc/group 存储组账号 
/etc/shadow 存储用户账号的密码 
/etc/gshadow 存储用户组账号的密码 
useradd 用户名 
userdel 用户名 
groupadd 组名 
groupdel 组名 
passwd root 给root设置密码 
/etc/profile 系统环境变量 
bash_profile 用户环境变量 
.bashrc 用户环境变量 
su user 切换用户,加载配置文件.bashrc 
su - user 切换用户,加载配置文件/etc/profile ,加载bash_profile

5、更改文件的用户及用户组

1
chown [-R] owner[:group] {File|Directory}

6、文件权限管理

1
2
3
4
三种基本权限 
R 读 数值表示为4 
W 写 数值表示为2 
X 可执行 数值表示为1

7、更改权限

1
chmod [u所属用户 g所属组 o其他用户 a所有用户] [+增加权限 -减少权限] [r w x] 目录/文件名

8、vim使用

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。 命令模式下:

……

阅读全文

初识Kali-linux及其工具

前言

在虚拟机里安装了专用安全测试工具,kali Linux,

vm及其安装步骤很简单,kali是debain的一个linux发型版本,里面包含很多安全测试工具,既然是工具,你懂的,既是盾也是矛,不过跟神器sqlmap一样,我们拿来做安全测试再好不过。

安装完kali后,默认是图形化进入,尝试修改成xmanager图形化启动,测试不成功。但是里面的工具需要图形化时,用xmanager可以运行。

……

阅读全文

linux日常小细节注意说明

前言

一些 linux 和 shell 的小细节记录

1、清理cache

1
2
3
4
5
6
7
8
仅清除页面缓存(PageCache)
sync; echo 1 > /proc/sys/vm/drop_caches

清除目录项和inode
sync; echo 2 > /proc/sys/vm/drop_caches

清除页面缓存,目录项和inode
sync; echo 3 > /proc/sys/vm/drop_caches

2、crontab定时任务取值范围

文件/etc/crontab中每行任务的描述格式如下:

1
2
3
4
5
6
7
8
minute hour day month dayofweek command

minute - 从0到59的整数 
hour - 从0到23的整数 
day - 从1到31的整数 (必须是指定月份的有效日期)
month - 从1到12的整数 (或如Jan或Feb简写的月份)
dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)
command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

前面五个*号代表五个数字,数字的取值范围和含义如下:

分钟 (0-59)
小時(0-23)
日期(1-31)
月份(1-12)
星期(0-6) //0代表星期天

……

阅读全文

最近文章

分类

标签

其它