`
y806839048
  • 浏览: 1089304 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

linux 命令

阅读更多
set -e

你写的每个脚本都应该在文件开头加上set -e,这句语句告诉bash如果任何语句的执行结果不是true则应该退出。

///常量的定义

DISABLE_MANO=$1
ROOT_DIR=/root #must be exist or we can create one
CM_USER=cm
CM_IP=172.16.33.166
CM_PASSWORD=cm2012
CM_RELEASE_ROOT_DIR=/home/cm/iCloud/release-latest
CM_SCAPE_ROOT_DIR=$CM_RELEASE_ROOT_DIR/scape
CM_MANO_ROOT_DIR=$CM_RELEASE_ROOT_DIR/nfv-mano


cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件
cp  /usr/local/apache-tomcat-7.0.57/bin/catalina.sh  /etc/init.d/tomcat
scp --- 主要是在不同的Linux系统之间来回copy文件
scp cm@172.16.33.166:/home/cm/iCloud/release-latest/flexscap-nfv-install.sh
chmod u+x


chmod命令用于改变文件权限。

u 这里指文件所有者

+x 添加可执行权限

./ 指当前目录

chmod u+x $ROOT_DIR/ascp 
这句话是改变当前目录下的$ROOT_DIR/ascp 文件的权限。

yum -y install expect
域名,下载liunix系统需要的文件,并安装,然后通过配置,实现自动

,要安装expect,linux expect的安装 1.安装相应的包 yum install -y tcl tclx tcl-devel 2.下载expect-5.43.tar.gz包(我这里用的这个包,大家也可以用别的) 根据参数,运行./configure
./configure --with-tcl=/usr/lib --with-tclinclude=/usr/include/tcl-private/generic
3.make && make install 安装完毕 简单的登陆别的机器执行命令,可行 (更详细的还得参考expect的有关说明) expect.sh #!/usr/local/bin/expect
set timeout 10
spawn ssh root@ip
expect "*password*"
send "123456\r"
expect "#"
send "service crond restart\r"
expect eof
注:expect的功能是很强大的,实现了无须人与系统交互的功能,已经成为SA的一个强大助手,要研究的彻底,还是需要大量的时间的.

虚拟机是否启动
ps aux|grep evm

linux查看tomcat日志
//先进入日志目录,然后查看目录
/var/www/miq/vmdb/log/

tail -f evm.log

cd /usr/local/apache-tomcat-7.0.57/
/usr/local/apac+tab键

cd ./logs

tail -f *.log
/usr/local/apac

tail -f catalina.out

#vim /etc/init.d/tomcat
INSERT_CONTENT="# chkconfig: 2345 10 90 \n# description: Tomcat service\nCATALINA_HOME=/usr/local/apache-tomcat-7.0.57\nJAVA_HOME=/usr/local/jdk1.7.0_75\nexport CATALINA_HOME\nexport JAVA_HOME\n"
INSERT_LINE=`grep -n 'os400=false' /etc/init.d/tomcat |awk -F ':' '{print $1}'`
sed "${INSERT_LINE} a${INSERT_CONTENT}" -i /etc/init.d/tomcat

//读取一行,执行一行,显示在屏幕上
sed "${INSERT_LINE} a${INSERT_CONTENT}" -i /etc/httpd/conf.d/cfme-https-application.conf


//增加一个服务
chkconfig  --add  tomcat

//
#bugfix remove =>  "[[ -s /opt/rh/postgresql92/enable ]] && source /opt/rh/postgresql92/enable"
#from /var/www/miq/system/LINK/etc/default/evm
#from sql.sh
DELETE_LINE=`grep -n 'postgresql92' /var/www/miq/system/LINK/etc/default/evm |awk -F ':' '{print $1}'`
sed "${DELETE_LINE}d" -i /var/www/miq/system/LINK/etc/default/evm


查找行  grep -n “查找内容” “路径"    
打印行  awk -F ':(设置分割符,默认为空格)' '{print $1}'
从/var/www/miq/system/LINK/etc/default/evm 查找含有postgresql92的行,并返回函数,并且打印这个返回的内容的第一行
将${DELETE_LINE}d 中的内容插入/var/www/miq/system/LINK/etc/default/evm当中

//解压并覆盖原始版本
tar -xzf XXX.tar.gz XXX/

# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-x是解开的意思

//强制(不管有没有)复制当前文件夹及子文件夹
cp -rf 的意思


//数据库迁移,

cd /var/www/miq/vmdb
bundle exec rake db:migrate


bundle exec(1) bundle-exec.1.html
              Execute a script in the context of the current bundle
就说是为了维护工作环境,其实还是gem版本,bundle是拷Gemfile这个配置文件来维持统一的gem版本的。所以,你可以有多个项目使用相同的gem,但是不同的版本 单独执行rake db:migrate可能会出现版本错误


chkconfig --list :显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。

chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。


chkconfig --del name:删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。

/sbin/chkconfig  --add  evmserverd

//服务重启
service evmserverd restart

//启动服务
service mysql start

/sbin/chkconfig mysql on

//指定在在哪一个级别开启和关闭服务
chkconfig [--level levels] name <on|off|reset>

//查看当前运行的级别
chkconfig [--level levels] name

停止防火墙  
service iptables stop
启动防火墙  
service iptables start
查看防火墙配置
iptables -L -n
/////////////////////////////////////从这里可以看出服务的启动,关闭有两种,一种是重启后生效chkconfig 服务名 on,一种的立即生效 service 服务名 start

//一般防火墙的更改要重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off  
或者 /sbin/chkconfig --level 2345 iptables off

2) 即时生效,重启后失效service 方式
开启: service iptables start
关闭: service iptables stopiptables
方式查看防火墙状态:/etc/init.d/iptables status
暂时关闭防火墙:/etc/init.d/iptables stop
重启iptables:/etc/init.d/iptables restart

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics