日常使用的shell脚本
1、shell实现无密码登陆
host=$
expect << EOF
spawn ssh-copy-id $host
expect "password:"
send "123456\r"
expect eof
EOF
2、一个节点分类的shell脚本
network="eth0"
host1=`uname -n`
base=`uname -n|cut -c -`
id1=`uname -n|cut -c -`
if ((#$id1 % == ));then
((id2=#$id1+))
else
((id2=#$id1-))
fi
if ((#$id1 < || #$id1 == ));then
host2=${base}${id2}
elif ((#$id1 < || #$id1 == ));then
host2=${base}${id2}
else
host2=${base}${id2}
fi
rm -fr /tmp/targets
mkdir -p /tmp/targets
#ha.cf
cp templates/ha.cf /tmp/targets/ha.cf
echo "ucast $network $host2" >> /tmp/targets/ha.cf
echo "ping 20.0.255.254" >> /tmp/targets/ha.cf
echo "auto_failback on" >> /tmp/targets/ha.cf
echo "node $host1" >> /tmp/targets/ha.cf
echo "node $host2" >> /tmp/targets/ha.cf
#haresources
cp templates/haresources /tmp/targets/haresources
echo "$host1 Lustre::$host1-targets" >> /tmp/targets/haresources
echo "$host2 Lustre::$host2-targets" >> /tmp/targets/haresources
#authkeys
cp templates/authkeys /tmp/targets/authkeys
cp -fr /tmp/targets/ha.cf /etc/ha.d/
cp -fr /tmp/targets/haresources /etc/ha.d/haresources
cp -fr /tmp/targets/authkeys /etc/ha.d/authkeys
3、yum源的配置方法,yum源的目标文件为/etc/yum.repos.d/yum.repo
[Server]
name=RHEL 6.6
baseurl=ftp://10.0.0.2/mnt/rhel6.6/Server
enable=
gpgcheck=
gpgkey=ftp://10.0.0.2/mnt/rhel6.6/RPM-GPG-KEY-redhat-release
[HA]
name=RHEL 6.6 HA
baseurl=ftp://10.0.0.2/mnt/rhel6.6/HighAvailability
enable=
gpgcheck=
gpgkey=ftp://10.0.0.2/mnt/rhel6.6/RPM-GPG-KEY-redhat-release
4、tiotest测试盘阵性能的脚本(nohup 后台执行)
5、使用tiotest测试盘阵性能的简单脚本
#cd /mnt/;nohup tiotest -f -b -t >/tmp/d1.`hostname`.out >& &
#cd /mnt/;nohup tiotest -f -b -t >/tmp/d2.`hostname`.out >& &
#cd /mnt/;nohup tiotest -f -b -t >/tmp/d3.`hostname`.out >& &
cd /mnt/;nohup tiotest -f -b -t >>/tmp/d4.`hostname`.out >& &
cd /mnt/;nohup tiotest -f -b -t >>/tmp/d5.`hostname`.out >& &
cd /mnt/;nohup tiotest -f -b -t >>/tmp/d6.`hostname`.out >& &
~
6、重定向符号的使用
1> 指标准信息输出路径
2> 指错误信息输出路径
2>&1 将标准信息输出路径指定为错误信息输出路径(也就是都输出在一起)
7、添加环境变量
#!/bin/sh
export SW_CLUSTER_PATH=/usr/sw-cluster
export MPI_ROOT=$SW_CLUSTER_PATH/mpi2
export SLURM_ROOT=$SW_CLUSTER_PATH/slurm-14.11.
source $SW_CLUSTER_PATH/intel/composer_xe_2013_sp1.3.174/bin/compilervars.sh intel64
source $SW_CLUSTER_PATH/intel/composer_xe_2013_sp1.4.211//bin/compilervars.sh intel64
export PATH=$PATH:$SLURM_ROOT/bin:$MPI_ROOT/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SLURM_ROOT/lib:$MPI_ROOT/lib
export PATH=$PATH:/usr/sw-mpp/bin:/usr/sw-cluster/slurm-14.11./bin:
8、使用tiotest的简单脚本
base=`hostname|cut -c -`
((idx=#$base*-))
if [ x$ = x ];then
echo "too few argument"
exit
fi
mkdir -p result/$
cp /tmp/*.out result/$1/
for((i=$idx;i<$idx+3;i++));do rm -fr OST$i; done
for((i=$idx;i<$idx+3;i++));do
mkdir OST$i
lfs setstripe -i $i -c 1 OST$i
if [ $? -ne 0 ];then
exit 1
fi
cd OST$i
nohup tiotest -b 1048576 -f 20000 -t 8 > /tmp/OST$i.out 2>&1 &
cd ..
done
9、使用tiotest的简单测试脚本
base=`hostname|cut -c 5-6`
((idx=10#$base*3-3))
while true
do
for((i=$idx;i<$idx+3;i++));do rm -fr OST$i; done
for((i=$idx;i<$idx+3;i++));do
mkdir OST$i
lfs setstripe -i $i -c 1 OST$i
cd OST$i
nohup tiotest -b 1048576 -f 20000 -t 8 -k1 -k2 -k3 > /tmp/OST$i.out 2>&1 &
done
sleep 600
cd ..
done
done
10、挂载nfs网络文件系统
mkdir /usr/sw-cluster -p
mount -t nfs nfs_nas:/vol/vol_nas001/sw-cluster /usr/sw-cluster
mkdir /usr/sw-mpp -p
mount -t nfs nfs_nas:/vol/vol_nas001/sw-mpp-app /usr/sw-mpp
11、 一个排序的小指令
du -sh * |sort -nr
显示出所有文件的排序和大小
日常使用的shell脚本的更多相关文章
- Shell脚本字符串匹配及日常命令工具 - 用法总结(技巧指南)
Shell提供了很多字符串和文件处理的命令,如awk.expr.grep.sed等命令,还有文件的排序.合并和分割等一系列的操作命令.下面重点总结下Shell字符串处理.文本处理以及各类命令及函数用法 ...
- 日常运维中的相关日志切割处理方法总结 [Logrotate、python、shell脚本实现 ]
对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮 ...
- 博主日常工作中使用的shell脚本分享
前言: 今天给大家分享一篇在我工作中常用的一个shell脚本,里面有一些我们常用到的shell操作.该脚本用于本地电脑和服务器交互上,实现以下功能: 自动拉取自己个人电脑上的源码到服务器上yocto包 ...
- 学习 shell脚本之前的基础知识
转载自:http://www.92csz.com/study/linux/12.htm 学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写sh ...
- shell脚本调试之工具——bashdb
bash是Unix/Linux操作系统最常用的shell之一,它非常灵活,和awk.c++配合起来异常强大 以下使用一个测试脚本来说明使用bash调试的方法 test.sh #!/bin/bash e ...
- Linux Shell脚本面试25问
Q:1 Shell脚本是什么.它是必需的吗? 答:一个Shell脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件( ...
- 阿里Linux Shell脚本面试25个经典问答
转载: 阿里Linux Shell脚本面试25个经典问答 Q:1 Shell脚本是什么.它是必需的吗? 答:一个Shell脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命 ...
- 系统管理中 bash shell 脚本常用方法总结
在日常系统管理工作中,需要编写脚本来完成特定的功能,编写shell脚本是一个基本功了!在编写的过程中,掌握一些常用的技巧和语法就可以完成大部分功能了,也就是2/8原则 1. 单引号和双引号的区别 单引 ...
- 【转】Linux Shell脚本面试25问
Q:1 Shell脚本是什么.它是必需的吗? 答:一个Shell脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件( ...
随机推荐
- ubuntu安装搜狗输入法
搜狗官网上说14.04直接安装deb包就行,无需配置. 但是经实践发现仍然需要配置一下== 命令: ibm@IBM:~$ sudo dpkg --get-selections | grep fcitx ...
- array数组加过滤
var array = new Array(); array.push(0); array.push(1); array.push(2); var arr = array.filter(functio ...
- Java 线程池的使用
转载原文链接: http://www.cnblogs.com/dolphin0520/p/3932921.html 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有 ...
- 【Alpha】Phylab2.0: Postmortem
设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 主要解决同学们写物理实验报告时,处理数据的困难--巨大的计算量和不规范的物理报告数据处理格式.典型 ...
- Untiy3D - 窗口界面1
记录Untiy3D学习中的英语单词 一.Project窗口下的英语单词 First Day Folder : 文件夹 C# Script : C#脚本 JavaScript:JS脚本 Editor T ...
- 如何修改Linux主机名
Linux 下什么都比较麻烦,就连修改主机名也不例外.我们就下文说一下具体方法. Linux 安装好后,其默认的主机名是 localhost.修改 Linux 主机名需要3步. 使用 hostname ...
- Docker 修改默认存储位置
首先使用 docker info 查看 docker 的基本信息 sudo docker info Containers: 0 Images: 5 Storage Driver: devicemapp ...
- SSDB 数据库
SSDB数据库 SSDB是一套基于LevelDB存储引擎的非关系型数据库(NOSQL),可用于取代Redis,更适合海量数据的存储. 另外,rocksdb是FB在LevelDB的二次开发版本,因此也存 ...
- TF-IDF 加权及其应用
TF-IDF 加权及其应用 TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索的常用加权技术.TF-IDF是一种统计方法,用以评估某个 ...
- dns泛解析漫谈
比如说:http://www.aaa.com/ 指向10.10.1.1,ftp.aaa.com/ 指向10.10.2.2,如果这时候客户访问的是aaa.com或者error.aaa.com (这里er ...