shell脚本出现错误“/bin/bash^M:坏的解释器”的解决方法

原因 由于windows系统下换行符为 \r\n,linux下换行符为 \n,所以导致在windows下编写的文件会比linux下多回车符号 \r。 解决方法 只需要去掉多余的 \r 回车符 即可。操作办法可以用sed命令进行全局替换 sed 's/\r//' -i test.sh

2023年12月1日 · 1 分钟 · 14 字 · AIHugoBlog

Ubuntu20.04搭建v2ray服务vpn的教程

1.更新系统 apt-get update -y apt-get upgrade -y 2.一键安装v2ray bash <(wget -qO- -o- https://git.io/v2ray.sh) 3.开放防火墙端口 # 根据实际情况开放端口 iptables -I INPUT -p tcp --dport 891 -j ACCEPT 端口测试网站 https://ping.eu/port-chk 4.开启BBR echo net.core.default_qdisc=fq >> /etc/sysctl.conf echo net.ipv4.tcp_congestion_control=bbr >> /etc/sysctl.conf sysctl -p # 查看是否开启 lsmod | grep bbr

2023年12月1日 · 1 分钟 · 44 字 · AIHugoBlog

centos7源更换为国内163源

1.安装wget yum install wget 2.备份原来的源 cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.bak 3.下载替换源 wget http://mirrors.163.com/.help/CentOS7-Base-163.repo mv CentOS7-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo 4.清理缓存 yum clean all yum makecache 5.更新系统 yum update -y

2023年2月21日 · 1 分钟 · 26 字 · AIHugoBlog

Centos 7下mongodb的安装使用教程

一、安装 1.添加安装源: touch /etc/yum.repos.d/mongodb-org-4.0.repo 添加以下内容: [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc 2.安装最新版本 yum install -y mongodb-org 3.安装固定版本 sudo yum install -y mongodb-org-4.0.1 mongodb-org-server-4.0.1 mongodb-org-shell-4.0.1 mongodb-org-mongos-4.0.1 mongodb-org-tools-4.0.1 4.固定版本不升级 vim /etc/yum.conf 在文件中增加以下内容: exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools

2023年1月13日 · 1 分钟 · 32 字 · AIHugoBlog

Centos7下duplicati安装测试

一、概述 1.简介 Duplicati是一个备份客户端,可以在本地存储,云存储服务和远程文件服务器上安全地存储加密的,增量的压缩备份。Duplicati可以安装在各种操作系统上。最常见的平台是Windows,Linux和OSX。 Duplicati是一款免费的开源软件 文件备份采用块备份机制,备份时文件将被分成小块数据(块) 可以备份选定的文件和文件夹 2.特性 采用强加密方式AES-256 Duplicati最初执行完全备份。之后,Duplicati仅通过添加更改的数据来更新初始备份。如果备份的文件夹不发生修改,则执行备份命令时不会产生新的备份版本 Duplicati带有Web界面。它可用于在本地计算机上配置和运行备份。 Duplicati通过duplicati-cli提供所有功能和功能。这允许您向脚本添加备份功能或在终端窗口中运行备份。 二、环境配置(以centos7 x64为例) 1.系统更新和基础环境 yum update -y yum install -y epel-release yum install -y vim net-tools nmon clamav htop rsync iptraf-ng tree lrzsz cmake make gcc gcc-c++ ntp iftop 2.duplicati依赖环境 yum install yum-utils rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" yum-config-manager --add-repo http://download.mono-project.com/repo/centos7/ yum install mono-devel yum install desktop-file-utils yum install libappindicator 3.关闭selinux及防火墙 sed -i 's@SELINUX=enforcing@SELINUX=disabled@' /etc/selinux/config systemctl stop firewalld systemctl disable firewalld 三、duplicati安装 1.从官网下载安装包 https://www.duplicati.com/download duplicati-2.0.3.3-2.0.3.3_beta_20180402.noarch.rpm 2.上传至centos系统,然后执行安装 yum localinstall duplicati-2.0.3.3-2.0.3.3_beta_20180402.noarch.rpm 四、dulicati使用 1.备份文件 duplicati-cli backup "/home/backup" "/home/storage" --passphrase=123456>>/home/backup.log 备注: /home/backup 为备份至该文件夹 /home/storage 为所需备份的存储文件夹 –passphrase=123456 为备份密码 backup.log 为备份日志 2.恢复文件 duplicati-cli restore /home/backup/ "ssl_certificates.tar.gz" --restore-path="/home/restore" --version=1 --passphrase=123456>>/home/restore.log 备注: /home/backup/ 备份文件所在位置 ssl_certificates.tar.gz 为所需恢复的文件的名称,可以用*代替恢复所有文件 –restore-path="/home/restore" 为把文件恢复至/home/restore文件夹下,如果不指定 –restore-path则恢复至原有位置,如果原有位置存在该文件,则重命名加上备份时的时间戳 –version=1 指定为恢复文件的版本号为第1个版本 –passphrase=123456 为恢复所需密码,和备份时一致 /home/restore.log 为恢复日志

2023年1月13日 · 1 分钟 · 115 字 · AIHugoBlog

Centos7下leanote笔记安装配置

环境设置 时区设置: tzselect 选择:5--9--1--1 vim /etc/profile 添加: TZ='Asia/Shanghai'; export TZ 系统更新、工具安装 yum update yum install vim 安装配置 Mongodb安装 vim /etc/yum.repos.d/mongodb-org-4.0.repo 添加以下内容: [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc 安装: yum install -y mongodb-org 启动自启: service mongod start chkconfig mongod on leanote安装 下载linux二进制包到服务器/opt下解压,得到leanote文件夹 mongorestore -h localhost -d leanote --dir /opt/leanote/mongodb_backup/leanote_install_data/ bash /opt/leanote/bin/run.sh 给leanote添加数据库访问用户 mongo use leanote; db.createUser( { user: "user", pwd: "passowrd", roles: [ "readWrite", "dbAdmin" ] } ); 修改配置文件,采用用户连接leanote vim /opt/leanote/conf/app.conf username = user password = passowrd 重启leanoe即可 开启MongoDB的auth vim /etc/mongodb.conf 添加: security: authorization: enabled 重启mongodb服务 Nginx 安装 rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install nginx 配置 vim /etc/nginx/nginx.conf http{}中添加: upstream www.jbstudy.cn { server localhost:9000; } vim /etc/nginx/conf.d/default.conf 替换为: # http server { listen 80; server_name www.jbstudy.cn; # 强制https # 如果不需要, 请注释这一行rewrite rewrite ^/(.*) https://www.jbstudy.cn/$1 permanent; location / { proxy_pass http://www.jbstudy.cn; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; #设置最大上传文件大小 } } # https server { listen 443 ssl; server_name www.jbstudy.cn; ssl_certificate /root/cert-1523341295544_www.jbstudy.cn.crt; ssl_certificate_key /root/cert-1523341295544_www.jbstudy.cn.key; location / { proxy_pass http://www.jbstudy.cn; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; #设置最大上传文件大小 } } 修改leanoe安全配置 vim /opt/leanote/conf/app.conf http.addr=127.0.0.1 http.port=9000 site.url=http://www.jbstudy.cn

2023年1月13日 · 1 分钟 · 184 字 · AIHugoBlog

Centos7下mysql单主机多实例安装-mysqld_multi

1.数据库安装(通过官方yum安装,略过) 2.创建并初始化数据目录 mkdir -p /data/mysql/{3301,3302,3303,3304,3305} chown mysql:mysql /data/mysql/* 3.通过配置文件指定并初始化数据目录 [root@localhost ~]# cp /etc/my.cnf /data/mysql/3301.cnf [root@localhost ~]# vim /data/mysql/3301.cnf [mysqld] port=3301 datadir=/data/mysql/3301/ socket=/tmp/mysql3301.sock symbolic-links=0 [mysqld_safe] log-error=/data/mysql/3301.log pid-file=/usr/local/mysql/data/3301.pid [client] port=3301 socket=/tmp/mysql3301.sock [root@localhost ~]# mysqld --defaults-file=/data/mysql/3301.cnf --initialize-insecure --user=mysql 3301.cnf初始化使用,后续不再需要,重复以上步骤完成3302-3306 4.配置my.cnf文件集中管理多个实例 [root@localhost ~]# cp /etc/my.cnf /etc/my.cnf.bak [root@localhost ~]# vim /etc/my.cnf [mysqld_multi] mysqld=/usr/bin/mysqld_safe mysqladmin=/usr/bin/mysqladmin [mysqld3301] port=3301 socket=/tmp/mysql3301.sock datadir=/data/mysql/3301/ skip-external-locking log-bin=/data/mysql/3301/mysql-bin server-id=3301 user=mysql character-set-server = utf8 collation-server = utf8_general_ci ...... ...... [mysqld3306] port=3306 socket=/tmp/mysql3306.sock datadir=/data/mysql/3306/ skip-external-locking log-bin=/data/mysql/3306/mysql-bin server-id=3306 user=mysql character-set-server = utf8 collation-server = utf8_general_ci [mysql] no-auto-rehash mysqld_multi的配置文件和一般MySQL配置不同,没有[mysqld]段,取而代之的是[mysqld1]、[mysqld2]等配置段,每个配置段代表一个MySQL实例。 ...

2023年1月13日 · 1 分钟 · 168 字 · AIHugoBlog

Centos7下NFS文件系统挂载

一、服务端 1.安装nfs yum -y install nfs-utils rpcbind 2.设置开机自动启动服务 systemctl enable nfs systemctl enable rpcbind 3.服务启动 systemctl start nfs systemctl start rpcbind 4.创建共享目录 mkdir /data/nfs-share chmod -R 777 /data/nfs-share 5.配置共享文件exports /data/nfs-share 192.168.1.0/24(rw,async,no_root_squash) 注:192.168.1.0该网段可以访问/data/nfs-share下的内容,并具有读写权限。 6.刷新配置立即生效 exportfs -a 二、客户端 1. 同样需要安装nfs,才能挂载 yum -y install nfs-utils 2.查看服务器开放了哪些共享 showmount -e 192.168.1.1 3.挂载目录 mkdir /data/share-file mount 192.168.1.1:/data/nfs-share /data/share-file 4.卸载已挂载的目录 umount /data/share-file

2023年1月13日 · 1 分钟 · 55 字 · AIHugoBlog

Centos7下samba服务搭建及通过活动目录AD控制帐号

一、samba相关软件安装 yum install krb5-workstation krb5-devel pam_krb5 samba samba-client samba-winbind-clients -y 二、配置 1.更改主机名 vim /etc/hostname 修改为:testsamba vim /etc/hosts 修改行为: 127.0.0.1 testsamba.southbaytech.co testsamba 2.更改系统dns vim /etc/sysconfig/network-scripts/ifcfg-eth0 其中dns修改为: dns1=172.21.100.11 #ip地址为dns的AD域 3.禁用防火墙和Selinux chkconfig firewalld off sed -i 's@SELINUX=enforcing@SELINUX=disabled@' /etc/selinux/config 4.设置开机启动winbind,samba chkconfig winbind on chkconfig smb on 5.创建samba目录 mkdir /home/share chmod 777 /home/share 6.修改krb5配置 vim /etc/krb5.conf 修改为如下配置 [libdefaults] dns_lookup_realm = true default_realm = SOUTHBAYTECH.CO [realms] SOUTHBAYTECH.CO = { kdc = 172.21.100.11:88 admin_server = 172.21.100.11:749 } [domain_realm] .southbaytech.co = SOUTHBAYTECH.CO southbaytech.co = SOUTHBAYTECH.CO 7.修改nss配置 vim /etc/nsswitch.conf 修改为: passwd: files winbind shadow: files winbind group: files winbind 8.修改samba配置 vim /etc/samba/smb.conf 修改为: [global] # ----------------------- Network-Related Options ------------------------- workgroup = SOUTHBAYTECH netbios name = testsamba # ----------------------- Standalone Server Options ------------------------ #security = user #passdb backend = tdbsam # ----------------------- Domain Members Options ------------------------ security = ads realm = SOUTHBAYTECH.CO password server = 172.21.100.11 idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/bash template homedir = /home/%U winbind use default domain = true winbind offline logon = true winbind enum groups = yes winbind enum users = yes winbind separator = / #============================ Share Definitions ============================== [share] comment = Home Directories path = /home/share browseable = yes (是否显示共享文件夹,默认yes) #writable = yes (是否可写,yes表示所有用户默认有写权限,write list无效;反之read list 无效) available = yes force group = nogroup create mask = 0777 directory mask = 0777 read list = asd (读权限) write list = asd (写权限) valid users = asd (有访问此共享文件夹权限的用户,默认表示所有用户都有访问权限) 9.重启服务器 reboot 10.将服务器加入域 kinit tab_ding@SOUTHBAYTECH.CO (测试是否可以加入域) net ads join -U tab_ding@SOUTHBAYTECH.CO(需要管理员权限) 注:如果出现无法加入域的情况,请检查服务器时间和AD域时间是否相差太多或者AD域中已存在该主机 11.重启winbind服务 service winbind restart 其他命令 net ads leave -U administrator (离开域) wbinfo -t (测试RPC调用是否正常) net ads testjoin (测试是否正常加入域) wbinfo -u (域内用户) wbinfo -g (域内组 三、配置日志(centos7) 1.创建日志目录 mkdir -p /home/log/samba 2.配置samba vim /etc/samba/smb.conf 添加如下配置: [global] vfs object = full_audit #设置审计日志格式 full_audit:prefix = %u|%I|%S #审计失败日志 full_audit:failure = connect #审计成功日志 full_audit:success = mkdir rmdir rename unlink kernel_flock #审计日志设备 full_audit:facility = local5 #审计日志安全等级 full_audit:priority = info 3. 配置syslog 其中*.info;mail.none;authpriv.none;cron.none /var/log/messages 为原来存在,新加local5.none vim /etc/rsyslog.conf 修改为: *.info;mail.none;authpriv.none;cron.none;local5.none /var/log/messages local5.info -/home/log/samba/smb.log 4.重启服务 systemctl restart rsyslog systemctl restart smb 四、配置回收站(centos7) 1.创建回收站目录 mkdir /home/share/.delete chmod 777 -R /home/share/.delete 2.配置samba 在共享模块share中添加以下内容: vfs objects = recycle #开启回收站 recycle:repository = /home/share/.delete/%U #回收站路径 recycle:keeptree = yes #保持原路径 recycle:versions = yes #开启版本控制 recycle:minsize = 100 #排除小于100字节的文件回收 recycle:maxsize = 1000000 #排除大于100万字节的文件回收 recycle:exclude_dir = tmp #排除tmp目录回收 recycle:exclude = *.log #排除.log结尾的文件进入回收站 3.重启服务 systemctl restart smb

2023年1月13日 · 2 分钟 · 370 字 · AIHugoBlog

Centos7下yum安装mysql-community各版本

1.下载安装repo # 打开网站 https://dev.mysql.com/downloads/repo/yum/ # 下载 mysql80-community-release-el7-3.noarch.rpm # 安装 rpm -ivh mysql80-community-release-el7-3.noarch.rpm 2.更换yum可用community版本 # 查找当前可用版本 yum repolist enabled | grep "mysql.*-community.*" # 列出可用版本 yum repolist all | grep mysql # 安装yun-config-manager yum -y install yum-utils # 关闭和启用可安装版本 yum-config-manager --disable mysql57-community yum-config-manager --enable mysql56-community 3.安装 yum repolist enabled | grep mysql yum install mysql-community-server 4.启动 service mysqld start systemctl enable mysqld 5.保护MySQL安装 # 执行命令 mysql_secure_installation 6.创建个人账号 mysql -uroot -p GRANT ALL privileges ON *.* TO 'tab'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; flush privileges; 7.开启防火墙 firewall-cmd --add-port=3306/tcp firewall-cmd --add-port=3306/tcp --permanent 8.默认密码查找 grep 'temporary password' /var/log/mysqld.log

2023年1月13日 · 1 分钟 · 94 字 · AIHugoBlog