centos6.5 git安装(centos7安装python3)

大家好,今天小编来为大家解答centos6.5 git安装这个问题,centos7安装python3很多人还不知道,现在让我们一起来看看吧!

LuckyFrame搭建关键点

一、搭建环境说明

1.web端部署在虚拟机Centos6.5系统中。已安装jdk1.8,mysql5.7,tomcat8

2.客户端在Windows中,已安装jdk1.8,mysql workbench

客户端开发环境:eclipse, git, maven

二、mysql连接关键点

1.服务端安装JDBC(mysql-connector-java.jar)

2.注意远程连接服务器上mysql不成功的各种坑:

a.防火墙记得要关闭或者添加开放mysql端口

b.用于远程访问的用户权限放开,即host不能是localhost(只能访问本机),而应该是%(允许所有机器访问)

eg. SELECT user, host from mysql.user;

    update user set host='%' where user='root';

c.给远程访问的用户授权 

eg.grant all on luckyframedb.* to'luckyframe'@'localhost' identified by'luckyframe';

三、tomcat部署关键点

1.确保tomcat远程访问已经ok

2.将构建好的war包上传到服务器tomcat的webapps目录下

3.项目名称不能出现在远程访问url中,即访问地址应该为:192.168.x.x:9999这样。那就需要将tomcat默认项目设置为我们期望的项目luckyframe

vi/conf/server.xml,添加一行<Context path="" docBase="LuckyFrameServer" reloadable="true">

注: path为空字符串表示此项目为Tomcat默认的项目; docBase可以为本地项目绝对路径,也可以是webapps下项目的相对路径,也可以用war包自动解压出来的相对路径; reloadable表示项目修改时是否自动重新编译和装载项目。

django如何调用ansible(2023年最新分享)

导读:本篇文章首席CTO笔记来给大家介绍有关django如何调用ansible的相关内容,希望对大家有所帮助,一起来看看吧。

如何在django中使用ansible-playbook命令执行yaml文件

一、安装

1、安装第三方epel源

centos5的epel

rpm-ivh

rpm-ivh

17:01:30#cat/etc/issue

CentOSrelease6.5(Final)

Kernel\ronan\m

由于是6版本所以安装6的epel

yuminstallansible

如果需要自定义module或者想阅读源码、使用最新版本,可以去github里下载源码

gitclone

17:22:08#cd/etc/ansible/

root@ip-10-10-10-10:/etc/ansible

17:23:27#ll

total12

-rw-r--r--1rootroot5113Dec2903:00ansible.cfg

-rw-r--r--1rootroot965Dec2903:00hosts

其中ansible.cfg是配置文件,hosts是管理主机信息

17:24:44#cathosts

172.17.0.2:49154

172.17.0.4:49155

[zabbix]

172.17.0.2:49154

172.17.0.4:49155

[vpn]

172.17.0.10

16:20:57#ansible127*-mping

SSHpassword:

127.0.0.1|success{

"changed":false,

"ping":"pong"

}

root@ip-10-10-10-10:/etc/ansible

16:21:05#ansible172*-mping

SSHpassword:

172.17.0.5|success{

"changed":false,

"ping":"pong"

}

172.17.0.4|success{

"changed":false,

"ping":"pong"

}

172.17.0.2|success{

"changed":false,

"ping":"pong"

}

如果你有多台服务器的话,想并发运行,可以使用-f参数,默认是并发5

11:30:35#ansiblevpn-mshell-a"echo$TERM"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success|rc=0

xterm

11:30:44#ansiblevpn-mcopy-a"src=/tmp/serverdest=/tmp/server"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success{

"changed":true,

"dest":"/tmp/server",

"gid":505,

"group":"test",

"md5sum":"e8b32bc4d7b564ac6075a1418ad8841e",

"mode":"0664",

"owner":"test",

"size":7,

"src":"/home/test/.ansible/tmp/ansible-1402630447.45-253524136818424/source",

"state":"file",

"uid":503

}

去客户端查看文件是否传输过来

11:34:57#ansiblevpn-mshell-a"ls-l/tmp/"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success|rc=0

total76

-rw-r--r--1rootroot41692May2113:02config

-rw-r--r--1rootroot1228Jun1218:24install_pptpd_vpn.sh

-rw-rw-r--1testtest7Jun1319:33server

-rw-r--r--1rootroot82Jun1218:21test.log

-rw-r--r--1rootroot290Jun1218:21test.sh

-rw-r--r--1rootroot2444Apr282012vpn_centos6.sh

-rw-------1rootroot727Jun1018:21yum_save_tx-2014-06-10-18-21UrqDAp.yumtx

-rw-rw-r--1zabbixzabbix3124Jun1221:32zabbix_agentd.log

-rw-rw-r--1zabbixzabbix5Jun1221:32zabbix_agentd.pid

11:35:09#ansiblevpn-mshell-a"cat/tmp/server"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success|rc=0

server

还有另外一个模块file,可以修改用户与权限

13:50:07#ansiblevpn-mshell-a"ls-l/tmp/server"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success|rc=0

-rw-rw-r--1testtest7Jun1319:33/tmp/server

server文件是664权限,用户与组都是test

13:51:17#ansiblevpn-mfile-a"dest=/tmp/servermode=755owner=rootgroup=root"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success{

"changed":true,

"gid":0,

"group":"root",

"mode":"0755",

"owner":"root",

"path":"/tmp/server",

"size":7,

"state":"file",

"uid":0

}

root@ip-10-10-10-10:/etc/ansible

13:51:31#ansiblevpn-mshell-a"ls-l/tmp/server"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success|rc=0

-rwxr-xr-x1rootroot7Jun1319:33/tmp/server

14:20:30#ansiblevpn-myum-a"name=nmapstate=installed"-utest--private-key=denglei-K

SSHpassword:

sudopassword[defaultstoSSHpassword]:

172.17.0.10|success{

"changed":true,

"msg":"",

"rc":0,

"results":[

"Loadedplugins:fastestmirror,security\nLoadingmirrorspeedsfromcachedhostfile\n*epel:mirrors.hust.edu.cn\nSettingupInstallProcess\nResolvingDependencies\n--Runningtransactioncheck\n---Packagenmap.x86_642:5.51-3.el6willbeinstalled\n--FinishedDependencyResolution\n\nDependenciesResolved\n\n================================================================================\nPackageArchVersionRepositorySize\n================================================================================\nInstalling:\nnmapx86_642:5.51-3.el6Base2.7M\n\nTransactionSummary\n================================================================================\nInstall1Package(s)\n\nTotaldownloadsize:2.7M\nInstalledsize:9.7M\nDownloadingPackages:\nRunningrpm_check_debug\nRunningTransactionTest\nTransactionTestSucceeded\nRunningTransaction\n\rInstalling:2:nmap-5.51-3.el6.x86_641/1\n\rVerifying:2:nmap-5.51-3.el6.x86_641/1\n\nInstalled:\nnmap.x86_642:5.51-3.el6\n\nComplete!\n"

]

}

三、playbook配置管理

A.进行一下shell模块操作,测试删除文件

先查看一下客户端的server-test是否存在

[root@puppetansible]#ansiblevpn-mshell-a"ls-l/tmp/server-test"-utest--private-key=/root/denglei-k

SSHpassword:

172.17.0.10|success|rc=0

-rw-rw-r--1testtest7Jun1400:37/tmp/server-test

然后写一个删除的playbook

[root@puppetansible]#cattest.yml

---

-hosts:vpn

remote_user:test

tasks:

-name:delete/tmp/server-test

shell:rm-rf/tmp/server-test

[root@puppetansible]#ansible-playbooktest.yml--private-key=/root/denglei-k

[WARNING]:Theversionofgmpyouhaveinstalledhasaknownissueregarding

timingvulnerabilitieswhenusedwithpycrypto.Ifpossible,youshouldupdate

it(ie.yumupdategmp).

SSHpassword:

PLAY[vpn]********************************************************************

GATHERINGFACTS***************************************************************

ok:[172.17.0.10]

TASK:[delete/tmp/server-test]***********************************************

changed:[172.17.0.10]

PLAYRECAP********************************************************************

172.17.0.10:ok=2changed=1unreachable=0failed=0

[root@puppetansible]#ansiblevpn-mshell-a"ls-l/tmp/server-test"-utest--private-key=/root/denglei-k

SSHpassword:

172.17.0.10|FAILED|rc=2

ls:cannotaccess/tmp/server-test:Nosuchfileordirectory

B.进行一下template模块操作,测试文件传输

[root@puppetansible]#catcopy.yml

---

-hosts:vpn

remote_user:test

tasks:

-name:copylocalservertoclient/tmp/server-test

template:src=/tmp/serverdest=/tmp/server-test

[root@puppetansible]#ansible-playbookcopy.yml--private-key=/root/denglei-k

[WARNING]:Theversionofgmpyouhaveinstalledhasaknownissueregarding

timingvulnerabilitieswhenusedwithpycrypto.Ifpossible,youshouldupdate

it(ie.yumupdategmp).

SSHpassword:

PLAY[vpn]********************************************************************

GATHERINGFACTS***************************************************************

ok:[172.17.0.10]

TASK:[copylocalservertoclient/tmp/server-test]**************************

changed:[172.17.0.10]

PLAYRECAP********************************************************************

172.17.0.10:ok=2changed=1unreachable=0failed=0

[root@puppetansible]#ansiblevpn-mshell-a"ls-l/tmp/server-test"-utest--private-key=/root/denglei-k

SSHpassword:

172.17.0.10|success|rc=0

-rw-rw-r--1testtest7Jun1417:07/tmp/server-test

C.使用service模块,测试一下服务重启

python——Django项目开发:配置项目/static/路径,调用css、img、js等静态文件

在Django项目开发中,不能像正常web开发一样通过'imgs/bg.jpg'访问本地静态文件,需要做一些配置,才能实现静态文件的访问。

一、首先在项目根路径下新建一个static文件夹,然后在static文件夹下可以新建相应的css、imgs、js等文件夹,用于存放css、img、js等静态文件。

二、项目配置

1、打开settings.py,在底部添加:

2、打开urls.py,在urlpatterns中添加:(注意,如果你在blog目录下也建立了urls.py,那么就得在blog/urls.py中做修改。别忘了importsettings):

(不过我经过实测,不加这一个,也可以完成静态文件的访问)

3、在html模板最上面添加:

然后在需要的地方按照这个格式进行调用,如:

最后重新运行项目,img等本地静态文件就可以被django找到了,这时模板对应的页面就可以显示使用img等文件了。

初学者,求教django1.8如何调用python3.4脚本的问题

下面来看下在python3.4中,如何与Linux交互的。在python里面可以操作linux的命令有1,os.system("cmd")2,os.open("cmd")3,spawn*4,subprocess在最新的python里,推荐使用subprocess来与shell通信

Django配置Celery执行异步和同步任务(tasks))

celery是一个基于python开发的简单、灵活且可靠的分布式任务队列框架,支持使用任务队列的方式在分布式的机器/进程/线程上执行任务调度。采用典型的生产者-消费者模型,主要由三部分组成:

比如系统上线前后台批量导入历史数据,发送短信、发送邮件等耗时的任务

1.安装RabbitMQ,这里我们使用RabbitMQ作为broker,安装完成后默认启动了,也不需要其他任何配置

Ubuntulinux安装

CentOSLinux安装

苹果mac安装需要配置

配置环境变量(苹果用户)

启动rabbitmq-server

2.安装celery

3.celery用在django项目中,django项目目录结构(简化)如下

4.创建oa/celery.py主文件

5.在oa/__init__.py文件中增加如下内容,确保django启动的时候这个app能够被加载到

6.各应用创建tasks.py文件,这里为users/tasks.py

7.views.py中引用使用这个tasks异步处理

8.启动celery

9.这样在调用post这个方法时,里边的add就可以异步处理了

定时任务的使用场景就很普遍了,比如我需要定时发送报告给老板~

1.oa/celery.py文件添加如下配置以支持定时任务crontab

3.启动celerybeat,celery启动了一个beat进程一直在不断的判断是否有任务需要执行

结语:以上就是首席CTO笔记为大家整理的关于django如何调用ansible的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

如何在centos6.5的kvm虚拟机中永久激活windows2008

一、激活原理

目前激活Windows7/Windows2008的各种方法充斥互联网,但公认比较完美的激活方式是将品牌机(例如DELL、LENOVO等)的SLIC信息表刷写进需要安装Windows系统的计算机BIOS中,将该计算机“仿真”为品牌机,然后安装微软的OEM版Windows7/Windows2008并自动激活。

相信喜欢搞破解的童鞋都应该知道其中的奥秘,微软和PC厂商为了减轻对于操作系统的激活负荷,对大多数品牌机实行了有别于联网激活的“SLIC激活机制”:当Windows操作系统启动时,就会自行读取本机BIOS中的SLIC信息表,以及操作系统的“OEM密钥”和“OEM证书”,如果三者完全吻合、验证一致,Windows7/Windows2008系统就会被识别为自动激活的OEM版本。

笔者研究发现,Windows2012(注意不是Windows2012_R2,下同)与以往激活Windows7/Windows2008的方式类似,依然可以采用刷写BIOS中SLIC信息表安装OEM版系统的方式实现永久激活,只不过激活Windows2012需要SLIC2.2版,经测试SLIC2.2能够向下兼容SLIC2.1/2.0。

众所周知,虚拟机软件也是有BIOS的,目前市场上常见的虚拟机软件,如VMware、Xen、Kvm等均通过软件仿真的方式“模拟”硬件BIOS。既然可以采用刷写计算机硬件BIOS的方式实现永久激活,那么如果能够将SLIC2.2信息表通过软件再编译方式“灌入”虚拟机的BIOS中,然后再安装Windows2012的OEM版本,不就可以与刷写BIOS硬件实现自动激活“异曲同工”了吗?

二、核心问题

激活原理已经非常明确了,现在的关键问题是如何重新编译Linux虚拟机的问题了,这涉及Linux内核的重新编译,一些菜鸟可能望而生畏,尽管编译 Linux全部内核确实需要较高的技术水平,但重新编译Linux的BIOS难度并不高,初学者也可以轻松实现。本文以Linux的常见版本CentOs6.5为例,详细讲解重新编译KVM虚拟机BIOS的步骤。本文的方法同样适用Ubuntu等 Linux版本。

CentOs6.5虚拟机KVM的BIOS实际是一个二进制的可执行文件,默认安装路径为/usr/share/seabios/bios.bin。笔者研究发现,KVM虚拟机BIOS使用的是开源软件 seabios,该软件的源代码可以在互联网上找到,开源组织也制作了为seabios软件增加相应SLIC信息表的补丁包,下载seabios的源代码并打上该补丁包,然后重新编译并替换Linux默认的bios.bin文件,就可以将虚拟机“仿真”为品牌机,然后自动激活OEM版的Windows2012系统了,这种激活方式是永久激活,激活后的Windows2012可以打上微软的后续补丁且绝对不会被封杀。

三、详细步骤

1.获取SLIC2.2信息表。当前SLIC2.1的信息表网上很容易找到,SLIC2.2的信息表不多,比较容易找到的是DELL版的SLIC2.2信息表。当然也可以找一台预装了Windows2012的品牌机(市面上比较常见的是DELL的机器),然后使用SLIC_Toolkit3.2工具导出该机器的SLIC表。SLIC2.1/2.2表为二进制文件,长度均为374字节(这一点一定要注意)。

2.安装CentOs6.5_x64版操作系统。记得把gcc安装上,然后将上一步已经获取的SLIC2.2表拷贝在/ opt目录中(假定文件名称为DELL_SLIC2.2.BIN)。

3.在root用户下安装git,、iasl及所有依赖包。

#yum install git

#yum install iasl//这是必须安装的包

4.使用git获取sealic项目的源码。

# mkdir bios//目录可以自己随便建

#cd bios

#git clone git://github.com/ghuntley/seaslic//获取源代码

#ls-ls

Seaslic//用git软件获取源代码后会有多出一个目录

# cd seaslic

#ls

patch.sh README.markdown seabios.patch seabios.submodule

//该目录共包含三个文件和一个子目录,其中子目录seabios.submodule需要删除掉,用我们后面下载的内容重建。

#rm-rf seabios.submodule

5.从地址code.coreboot.org/p/seabios下载的SeaBios的源码并解压。注意源代码一定要下载1.7.3.2版本的,这一点也很关键,千万不能搞错了。

#tar xzvf seabios-1.7.3.2.tar.gz解压在/bios目录下。

6.重建seabios.submodule

#cd/bios

# cp–r seabios-1.7.3.2 seaslic/seabios.submodule

# cd seaslic

# ls

patch.sh README.markdown seabios.patch seabios.submodule

进入我们重建的seabios.submodule目录,可以发现有bios的源代码存在:

# cd seabios.submodule

# ls

COPYING COPYING.LESSER Makefile README README.CSM src TODO tools vgasrc

# cd src

可以发现seabios的源代码,我们需要重新编译这些源代码,生成新的bios.bin文件,用于替代CentOs6.5系统自带的bios.bin。

7.查看/bios/seaslic/patch.sh文件。这是一个批处理文件,只有2行有用。用Linux的命令方式执行,为防止输入错误,最好从patch.sh中复制粘贴后在root用户下执行:

①将SLIC2.2文件转换为C语言包含文件格式(acpi-slic.hex)的命令:

#xxd-i/opt/DELL_SLIC2.2.BIN| grep-v-E"len"| sed's/unsigned char.*/static char SLIC[]={/'> seabios.submodule/src/acpi-slic.hex

说明:这条命令执行后将会把SLIC2.2表(即/opt/DELL_SLIC2.2.BIN文件)转换为C语言包含文件格式(文件名../src/acpi-slic.hex),并以数组形式存在。这一步非常非常关键,转换完成的acpi-slic.hex文件应为2333字节。如果本条命令执行不成功的话,编译出来的bios.bin文件不会包含SLIC2.2信息,也就无法实现激活了。

②为acpi.c文件打补丁的命令:

# cd/bios/seaslic/seabios.submodule

#patch-p1<../seabios.patch

说明:这条语句执行后将给../ src/acpi.c文件打上补丁,执行后系统将会提示:

Hunk#1 succeeded at 20 with fuzz 2(offset-194 lines).

Hunk#2 succeeded at 37 with fuzz 2(offset-194 lines).

Hunk#3 succeeded at 631 with fuzz 2(offset-205 lines).

注意:至此我们的准备工作已经全部完成了,下面将重新编译生成新的bios了。

8.重新编译生成bios.bin文件

# cd/bios/seaslic/seabios.submodule

#make//编译需要花几十秒钟吧,应提示无错误、无警告,否则可能需要仔细检查以上步骤。

查看..seabios.submodule/out/bios.bin

看到最后生成的结果了吧,会在..seabios.submodule/out/中多出一个bios.bin文件,这个文件就是我们重新编译生成的虚拟机的bios,将用来替换KVM的系统原有的bios.bin文件。

说明:这里编译生成bios.bin文件包含有DELL品牌机的SLIC2.2,可以激活DELL的Windows2012_OEM版。同理,我们只要找到其他品牌机的SLIC2.2信息表,重新编译后就可以安装激活其他品牌机的OEM版Windows7/2008/2012(SLIC2.1只能支持Vista/Win7/2008,不支持 Win2012;SLIC2.2则支持XP/Vista以及Win2008/2012并兼容SLIC2.1),与刷写计算机硬件BIOS实现自动激活的方式相比,采用这种方式激活Windows的风险为零,非常适合批量激活虚拟机的Windows2008/Windows2012。

9.替换CentOs6.5系统默认的bios.bin文件

# cp out/bios.bin/usr/share/seabios/bios.bin

#reboot//重新启动一下宿主机,然后再重新启动Windows虚拟机,在启动KVM虚拟机的时候,可以发现虚拟机的bios已经更新为最新版本了。

10.激活windows2012

至此KVM虚拟机的bios已经重新配置完成,在KVM中启动WINDOWS客户机,然后利用SLIC_Toolkit3.2工具检查SLIC,会发现你的SLIC信息已经获取成功,如果你安装的是OEM版本的 Win2008/2012的话,无需输入key和证书就能自动激活。你可以从网上百度如下OEM镜像(我已试验过可自动激活):

(1)Lenovo的OEM版Windows2008_R2镜像:

Windows_Server-2008_R2_ENT_OEM.iso或者

Win_Server_08_R2_SP1_33in1.iso

(2)Dell的OEM版Windows2012镜像:

Ser2012_ST_DA_OEM.iso

(3)如果你手上暂时没有OEM版的话,也不要紧,可以用slmgr命令手工增加证书及OEM序列号也可以激活Windows2008/20012。直接用管理员身份进入命令行模式:

①slmgr-ilc DELL2.2.XRM-MS//这里找到的是DELL计算机的Windows2012版OEM证书。

②接下来就是写入注册号了:

slmgr-ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

说明:下面是我从网上找到的 OEM版序列号(经测试可以激活):

Windows Server 2012 Standard DELL OEM KEY

2G9DG-XKFR6-VG8D3-DN9T9-CDG98

Windows Server 2012 Datacenter DELL OEM KEY

2BVGY-TNRWK-6927W-866R9-66J3H

Windows Server 2008 R2 Standard DELL OEM KEY

D7TCH-6P8JP-KRG4P-VJKYY-P9GFF

Windows Server 2008 R2 Enterprise DELL OEM KEY

BKCJJ-J6G9Y-4P7YF-8D4J7-7TCWD

③执行slmgr–dlv//显示全部激活信息

④执行slmgr-xpr//显示Windows2008/2012已经永久激活。

阅读剩余
THE END