Other
Archlinux安装使用向日葵
安装向日葵 yay -S sunloginclient 设置开机启动服务 sudo systemctl enable runsunloginclient.service 打开客户端 sunloginclient
Linux学习(二)
Linux linux基础命令 Vim编辑器 1、安装yum install vim
快速打开记事本:控制台输入notepad
保存文件内容:
1、进入vim编辑器
2、输入a或者i,就会显示insert(插入)
3、编写具体的内容 4、按esc键 5、再按下shift+:,就会显示出来:,然后在后面输入wq,就会保存文件内容
1、
2、
3、
4、
大数据中间件: Hadoop
Spark
Hive
Hbase
Flink
Kafka
RabbitMQ
Redis Python
Java
Go
C++
C
显示内容的行数 命令:cat -n 文件名字
倒叙查看 命令 tac index.txt
3、⼀屏⼀屏查看⽂件内容 more(左下⻆会显示查看⽂件的进度)
切换⾄下⼀屏:空格键 切换⾄上⼀屏:Ctrl+B
命令: more 文件名称
补充知识:查看⽂档的总⾏数,使⽤命令 wc -l
命令: more 文件名称 | wc -l
centos7搭建nextcloud个人网盘
nextcloud推荐在LAMP环境使用,所有得准备好lamp环境。我这里准备的是cenots7/8 , php7.4 , mariadb ,和使用redis做缓存。
cenots使用最小化安装,
首先,安装好yum/dnf源,加上epel源,这里不做赘述。(我使用的是阿里云的源)
安装一些基础包:
[root@bak ~]# yum install -y epel-release yum-utils unzip curl wget bash-completion policycoreutils-python-utils mlocate bzip2 #更新一下包 [root@bak ~]# yum -y update 1.安装apache [root@bak ~]# yum install -y httpd 配置虚拟主机:
新建配置文件/etc/httpd/conf.d/nextcloud.conf,往里面加入下面的配置
<VirtualHost *:80> DocumentRoot /var/www/html/nextcloud/ ServerName your.server.com <Directory /var/www/html/nextcloud/> Require all granted AllowOverride All Options FollowSymLinks MultiViews <IfModule mod_dav.c> Dav off </IfModule> </Directory> </VirtualHost> 启动httpd,并开机自启
[root@bak ~]# systemctl enable --now httpd Created symlink from /etc/systemd/system/multi-user.
腾讯云服务器 MySQL 远程连接设置
问题说明# 使用 MySQL GUI 连接腾讯云的 MySQL 服务器连接失败,经查是由三个原因引起的:
云服务器未配置安全组,开通 3306 端口。 数据库默认只允许本地连接,拒绝远程连接。 所使用 root 账号无远程连接权限,需要设置权限,或新建账号用于远程连接。 解决方法和步骤# 创建远程连接账号,给 root 开通远程连接权限# 登录 MySQL mysql -u root -pCopy 查看当前 MySQL 账户 SELECT `user`,`host` FROM mysql.user;Copy 输出:
+------------------+-----------+ | user | host | +------------------+-----------+ | debian-sys-maint | localhost | | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +------------------+-----------+ Copy 创建新用户 CREATE USER 'username'@'%' IDENTIFIED BY 'password';Copy 注意:@ 左边是用户名,右边是域名、IP 和 %,表示可以访问 mysql 的域名和 IP,% 表示外部任何地址都能访问。
HikvisionOS Linux Centos 快速部署系统IP操作
1、Linux系统安装与配置(不做延申,相信大家都会,HikOS默认SSH端口55555)
默认管理员root密码:123456,默认hik密码:123456
2、检查服务器网络连接
ip a 查询所有网卡 ethtool+网卡名字:检测网卡是否连接网络
3、配置服务器IP
进入:cd /etc/sysconfig/network-scripts/ 输入:ls 可以看到有所有网卡信息,类似如 ifcfg-ens160 ifcfg-ens192。 然后输入:vim 网卡名,如vim ifcfg-ens160,进入编辑界面 然后输入“i”进入修改
修改之后按“esc”退出编辑状态
然后按“shift+:”,输入“wq”保存退出,完成修改
4、重启网卡服务 systemctl restart network.service(推荐使用)
systemctl stop network.service systemctl start network.service 5、系统时间和硬件时间
查看系统时间命令:date 查看硬件时间命令:hwclock 设置系统时间:date –s “2017-08-10 10:21:00” 若硬件时间和系统时间不一致,需要同步:hwclock --systohc 若系统时间不准,则需要同步:hwclock –w 6、防火墙相关配置(这一步若无必要不需要操作)
关闭服务器防火墙 systemctl stop firewalld
进制开机启动防火墙 systemctl disable firewalld.service
命令:firewall-cmd --get-default-zone 查看当前默认防火墙生效区域(作用域),通过命令查看到当前为hik 命令:firewall-cmd --permanent --zone=hik --add-port=8080/tcp 配置防火墙开启8080/tcp端口,永久生效 ,其中“hik”根据查询的结果输入 命令:firewall-cmd --reload 更新防火墙规则 命令:firewall-cmd --list-all 查看防火墙开放端口
Linux安装宋体
到要安装的字体问题(这里我寻找宋体) 可以在Windows系统中C:\Windows\Fonts目录下找到宋体,复制在桌面后为simsun.ttc
登录Linux服务器进行配置 在/usr/share/fonts/目录下创建chinese文件夹并把simsun.ttc放在chinese文件夹里
编辑配置文件 在/etc/fonts/目录下找到fonts.conf文件并添加
<dir>/usr/share/fonts/chinese</dir>
查看是否安装成功 fc-list :lang=zh
linux命令绕过
linux命令绕过 test文件里的内容是'hahaha'
利用空字符、空变量、转译符 ca''t test/cat test
cat te\st
ca$@t test (Linux中$[0-9]、$*、$!、$@表示参数)
a=at;b=c;d=st;e=te;$b$a $e$d(Linux中变量以英文字母,数字和下划线,首个字符不能以数字开头)
利用花括号 cat t{es,}t 花括号通过逗号分割构建序列并展开
cat {tes,t}{tes,t} 花括号可以表示两个序列的笛卡尔积
利用通配符 cat /te* *匹配任意长度的任意字符 cat /te?t ?匹配一个任意字符 cat /te[a-z] t 匹配[list]列表中的所有字符
cat /t[ ^a,b,c]st 匹配非列表[^list]中的所有字符
利用编码 以下编码都是(cat test)
echo Y2F0IHRlc3Q= | base64 -d | bash 打印 | 解码 | bash运行
echo 6361742074657374 | xxd -r -p|bash hex加密
$(printf \x63\x61\x74\x20\x74\x65\x73\x74\x0a) 注意printf后面有一个空格
`printf \x63\x61\x74\x20\x74\x65\x73\x74\x0a` 反引号
cat命令绕过 cat test tac test more test less test head test tail test (用tail -f 查看服务器日志,会不断检索文件有没有更新,实时把内容打印) nl test od test rev test
三、单redis升级redis集群+哨兵
针对假如已经是安装了redis,只是是单部署,需要把他切换成redis集群+哨兵模式,我因为偷懒,就写了个脚本来执行,各位看官,请品~你品~你细品~
首先准备个升级包,放到任意路径,内容如下:
第一个文件不用管,第二个跟第四个,是把里面的配置改好,如何配置请参考我之前写的redis集群一,
然后是upgrade.sh脚本内容:
1 #!/bin/bash 2 3 base_path=/home/zmoon 4 redis_package_name=redis-5.0.12 5 6 #安装文件名称(安装文件位置=安装位置+安装文件名称) 7 redis_path=/redis-5.0.12 8 redis_conf=/etc/redis.conf 9 sentinel_conf=/etc/sentinel.conf 10 monitor_redis=/home/zmoon/bin 11 12 13 14 #判断redis是否安装 15 check_redis(){ 16 if [ -d $base_path$redis_path ]; then 17 echo redis 已安装,无需再次安装! 18 return 1 19 else 20 return 0 21 fi 22 } 23 24 #判断etc 25 check_redis_conf(){ 26 if [ -f $base_path$redis_path$redis_conf ]; then 27 echo redis.conf 已存在,无需再次安装! 28 return 1 29 else 30 return 0 31 fi 32 } 33 34 #判断etc redis.
mysql 基础(事务)
事务四大特性:原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败。一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态。隔离性(Isolation):数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。
并发事务问题:两个及以上事务同时操作一个数据库或表时所引发的问题脏读:读到了其他事务未提交的数据,未提交意味着这些数据可能会回滚,也就是可能最终不会存到数据库中,也就是不存在的数据。读到了并一定最终存在的数据不可重复读:不可重复读指的是在同一事务内,不同的时刻读到的同一批数据可能是不一样的,可能会受到其他事务的影响,比如其他事务改了这批数据并提交了。通常针对数据更新(UPDATE)操作幻读:一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在,好像出现了“幻影”。针对数据插入(INSERT)操作
事务隔离级别:是用来解决并发事务问题的,事务隔离级别越高数据越安全但性能越低
隔离级别 脏读 不可重复读 幻读 Read uncommitted(读未提交) √ √ √ Read committed(读已提交) x √ √ Repeatable Read(mysql默认) x x √ Serializable(串行化) x x x 查看隔离级别:
MySQL5.0+:1.查看当前会话隔离级别select @@tx_isolation;2.查看系统当前隔离级别select @@global.tx_isolation;
MySQL8.0+:1.查看当前会话隔离级别select @@transaction_isolation;2.查看系统当前隔离级别select @@global.transaction_isolation;
设置隔离级别:1.当前会话修改set session transaction isolation level 需要设置的事务隔离级别;2. mysql.ini配置修改#可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.[mysqld]transaction-isolation = REPEATABLE-READ