bin

linux练习题

荒凉一梦 提交于 2019-11-26 08:46:01
1、判断/etc/inittab文件是否大于100行,如果大于,则显示”/etc/inittab is a big file.”否者显示”/etc/inittab is a small file.” #!/bin/bash A=`wc -l /etc/inittab |cut -d' ' -f1` if [ $A -gt 100 ];then echo '/etc/inittab is a big file.' else echo '/etc/inittab is a small file.' fi 2、给定一个用户,来判断这个用户是什么用户,如果是管理员用户,则显示“该用户为管理员”,否则显示“该用户为普通用户” 1 #!/bin/bash 2 3 #USER=root 4 USERID=`id -u $1` 5 if [ $USERID -eq 0 ];then 6   echo $1'是管理员' 7 else 8   echo $1'不是管理员' 9 fi 3、判断某个文件是否存在 1 #!/bin/bash 2 if [ ! -z $1 ];then 3 if [ -e $1 ];then 4 echo $1'文件存在' 5 else 6 echo $1'文件不存在' 7 fi 8 else 9 echo '请给定文件' 10 fi 4

6 一些shall练习题

余生长醉 提交于 2019-11-26 08:42:33
1、判断/etc/inittab文件是否大于100行,如果大于,则显示”/etc/inittab is a big file.”否者显示”/etc/inittab is a small file.” 1 #!/bin/bash 2 3 A=`wc -l /etc/inittab |cut -d' ' -f1` 4 if [ $A -gt 100 ];then 5 echo '/etc/inittab is a big file.' 6 else 7 echo '/etc/inittab is a small file.' 8 fi 2、给定一个用户,来判断这个用户是什么用户,如果是管理员用户,则显示“该用户为管理员”,否则显示“该用户为普通用户” 1 #!/bin/bash 2 3 #USER=root 4 USERID=`id -u $1` 5 if [ $USERID -eq 0 ];then 6   echo $1'是管理员' 7 else 8   echo $1'不是管理员' 9 fi 3、判断某个文件是否存在 1 #!/bin/bash 2 if [ ! -z $1 ];then 3 if [ -e $1 ];then 4 echo $1'文件存在' 5 else 6 echo $1'文件不存在' 7 fi 8 else 9 echo '请给定文件' 10 fi 4

jump用户管理命令

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-26 07:52:51
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 手动拷贝id_rsa.pub的内容到其他机器 #跳板机新建user并拷贝公钥: useradd leixiaolong #install home Dir auto cd /home/leixiaolong mkdir .ssh cd .ssh touch authorized_keys chmod 600 authorized_keys chown -R leixiaolong: leixiaolong ../.ssh #Jumpserver系统用户sudo -i权限其实是写在/etc/sudoers文件里 sudoedit /etc/sudoers 1/ 可以sudo的配置 feng.feng ALL=(ALL) NOPASSWD: /bin/whoami,/bin/su,/bin/bash,!/bin/tcsh,!/usr/bin/passwd,!/usr/bin/passwd root,!/bin/vim /etc/sudoers,!/usr/bin/vim /etc/sudoers,!/usr/sbin/visudo,!/usr/bin/sudo -i,!/bin/bi /etc/ssh/*,!/bin/chmod 777 /etc/*,!/bin/chmod 777 *,!/bin

hex/binary string conversion in Swift

家住魔仙堡 提交于 2019-11-26 06:49:48
问题 Python has two very useful library method (binascii.a2b_hex(keyStr) and binascii.hexlify(keyBytes)) which I have been struggling with in Swift. Is there anything readily available in Swift. If not, how would one implement it? Given all the bounds and other checks (like even-length key) are done. 回答1: Data from Swift 3 has no "built-in" method to print its contents as a hex string, or to create a Data value from a hex string. "Data to hex string" methods can be found e.g. at How to convert

yum报错Loaded plugins:fastestmirror Loading mirror speeds from cacheed hostfile的解决办法

…衆ロ難τιáo~ 提交于 2019-11-26 04:19:43
今天使用yum install命令,发现如下报错: Loaded plugins:fastestmirror Loading mirror speeds from cacheed hostfile File "/usr/libexec/urlgrabber-ext-down",line 28 except OSError,e: SyntaxError:invalid syntax 而且其它yum命令也用不了了,出现如上错误的原因是: 我们近期可能安装了python3.7,导致CentOS系统yum命令使用环境变量中的Python命令,致使yum无法使用。 解决办法: #which yum(查看yum配置文件路径) 我的显示结果是: [root@izxtai8y33srdaz bin]# which yum /usr/bin/yum 然后输入指令cd /usr/bin目录下 再输入 ls -a 查看该目录下的所有文件,并找到python开头的文件/文件夹,笔者的是: 注意绿色字体的python文件,我的是python2.7,有可能你的会是python_old或者啥的~ 然后: #vi /usr/libexec/urlgrabber-ext-down 更改配置文件第一行#!/usr/bin/python为#!/usr/bin/python_2.7即可! 来源: https://blog

zabbix自定义脚本做监控及自制模板初探

拜拜、爱过 提交于 2019-11-26 04:09:46
一、说明 zabbix监控支持自定义脚本以及自制模板来扩展监控,换句话说就是对业务自定义监控;因此通过撰写脚本完成自定义监控十分有必要;这里的脚本既可以用shell也可以用python等语言; 另外自定义了脚本主要目的是获取业务相关的监控数据;还需要结合zabbix web GUI上的模板才能生效;本文的目的就是基于之前的zabbix相关部署操作之后的补充! 任务: 通过撰写脚本获取tcp 的各种状态,添加tcp状态模板,添加触发器;添加图形;完整实现脚本自定义监控的整个步聚流程! 二、agent端配置 创建目录存放自定义脚本 [root@node2 ~]# mkdir -pv /etc/zabbix/bin [root@node2 ~]# chown zabbix.zabbix /etc/zabbix/bin 脚本内容 [root@node2 ~]# cat /etc/zabbix/bin/tcp.sh #!/bin/bash tcp_conn_status(){ TCP_STAT=$1 ss -ant |awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/tcp_conns.txt TCP_NUM=$(grep "$TCP_STAT" /tmp/tcp_conns.txt | cut -d ' ' -f2) if

编译内核时出现fatal error: linux/compiler-gcc7.h: No such file or directory(已解决)

强颜欢笑 提交于 2019-11-26 03:28:29
编译内核时出现fatal error: linux/compiler-gcc7.h: No such file or directory(已解决) ##linux内核编译时出错 最近编译linux内核时出现了问题,网上找了好多办法都没解决,最后才找到一个比较好一点的方法。 网上的方法大多数都是把/usr/src/… linux内核中的compile-gcc.h加入到需要编译的内核的位置。然并卵,又出现了新的错误,还是没解决。 解决办法 :因为网上没有gcc7.h文件,所以我直接更改了编译器的版本,改成 gcc-4.7-arm-linux-gnueabi,然后编译就能通过了。 输入命令如下: 先卸载gcc7: sudo apt-get remove gcc-arm-linux-gnueabi 清理剩余数据: sudo apt autoremove 安装gcc4.7: sudo apt-get install gcc-4.7-arm-linux-gnueabi 安装好交叉编译链后还需要做如下处理,即创建链接(为什么创建,可以了解下编译脚本): sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-4.7 /usr/bin/arm-linux-gnueabi-gcc sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-ar-4

Tomcat服务安装——可跟做(简单易做)

不羁岁月 提交于 2019-11-26 03:13:55
Tomcat介绍 1、免费的、开放源代码的Web应用服务器 2、Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目 3、由Apache、Sun和一 些公司及个人共同开发而成 4、深受Java爱好者的喜爱,并得到部分软件开发商的认可 5、目前比较流行的Web应用服务器 Tomcat核心组件 Tomcat处理请求过程 1.用户在浏览器中输入网址localhost:8080/test/index.jsp,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得; 2.Connector把该请求交给它所在的Service的Engine(Container)来处理,并等待Engine的回应; 3.Engine获得请求localhost/test/index.jsp,匹配所有的虚拟主机Host; 4.Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机),名为localhost的Host获得请求/test/index.jsp,匹配它所拥有的所有Context。Host匹配到路径为/test的Context(如果匹配不到就把该请求交给路径名为“ ”的Context去处理); 5.path=“/test

单机多实例tomcat 部署

随声附和 提交于 2019-11-26 02:50:41
简介: 目录结构 /bin - 启动,停止及其它脚本目录 /conf - 配置文件目录,容器的主配置文件为server.xml /logs - 默认日志目录 /webapps - 网站应用目录 变量引用 CATALINA_HOME : Tomcat 安装的根目录,例如 /home/tomcat/apache-tomcat-9.0.10. CATALINA_BASE : 实例运行时配置的根目录.。如果运行多个Tomcat实例,请使用 CATALINA_BASE 属性 注: 默认CATALINA_HOME 和CATALINA_BASE 指向同一目录。当在一台主机上运行多个Tomcat 实例时,手动设置CATALINA_BASE 目录。 这样配置多个实例共享一组CATALINA_HOME目录的.jar文件和二进制文件,易于将Tomcat 升级到新版本。 避免重复的.jar文件 可以共享某些设置,如setenv shell 如果将CATALINA_HOME和CATALINA_BASE 配置为不同的目录,CATALINA_HOME目录应包含静态资源如.jar 文件或二进制文件。CATALINA_BASE 包含本容器配置文件,日志文件,部署应用和其他运行需求。 CATALINA_BASE 目录结构 在开始使用CATALINA_BASE 属性前,先创建CATALINA_BASE 使用的目录结构:

Centos7.6 使用二进制安装docker

淺唱寂寞╮ 提交于 2019-11-26 01:56:10
创建Docker二级制文件存放目录 mkdir /opt/kube/bin/ -pv # ll total 155108 -rwxr-xr-x 1 root root 37598450 Sep 19 11:10 docker -rwxr-xr-x 1 root root 11748168 Sep 19 11:13 docker-compose -rwxr-xr-x 1 root root 26393752 Sep 19 11:13 docker-containerd -rwxr-xr-x 1 root root 14725592 Sep 19 11:13 docker-containerd-ctr -rwxr-xr-x 1 root root 4173632 Sep 19 11:13 docker-containerd-shim -rwxr-xr-x 1 root root 53076360 Sep 19 11:11 dockerd -rwxr-xr-x 1 root root 764144 Sep 19 11:13 docker-init -rwxr-xr-x 1 root root 2837280 Sep 19 11:13 docker-proxy -rwxr-xr-x 1 root root 7495056 Sep 19 11:13 docker-runc 配置启动文件 #