用python搞了一个从excel中读取cobbler节点信息并加入cobbler中的脚本,运行的过程中出了不少问题,这里记录下来,方便日后查找!

一、yum install python,我通过这个命令安装python,默认安装的是2.6的版本,但是当我把python 2.6安装完成后,发现cobbler的WEB管理页面无法打开了,查看apahce的错误日志:

[Sun Jul 07 20:13:01 2013] [error] [client 192.168.21.94] ImportError: cannot import name urandom
[Sun Jul 07 20:13:02 2013] [error] [client 192.168.21.94] File does not exist: /var/www/html/favicon.ico
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] mod_wsgi (pid=10816): Target WSGI script '/usr/share/cobbler/web/cobbler.w
sgi' cannot be loaded as Python module.
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] mod_wsgi (pid=10816): Exception occurred processing WSGI script '/usr/shar
e/cobbler/web/cobbler.wsgi'.
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] Traceback (most recent call last):
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/share/cobbler/web/cobbler.wsgi", line 9, in <module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] import django.core.handlers.wsgi
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib/python2.6/site-packages/django/core/handlers/wsgi.py", li
ne 10, in <module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] from django import http
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib/python2.6/site-packages/django/http/__init__.py", line 12
3, in <module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] from django.utils.http import cookie_date
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib/python2.6/site-packages/django/utils/http.py", line 7, in
<module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] from email.Utils import formatdate
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib64/python2.6/email/__init__.py", line 79, in __getattr__
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] __import__(self.__name__)
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib64/python2.6/email/utils.py", line 27, in <module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] import random
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] File "/usr/lib64/python2.6/random.py", line 47, in <module>
[Sun Jul 07 20:31:09 2013] [error] [client 192.168.21.94] from os import urandom as _urandom

缺少urandom模块,python2.6版本里默认没有这个模块,随即将python升级到2.7版本。

升级过程:

1、下载Python 2.7源码:

wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz

下载

2、解压源码包:

tar -zxvf Python-2.7.2.tgz

3、编译:

cd Python-2.7.2

./configure  --prefix=/usr

4、make&&make install

安装完成后测试web界面可以正常打开了,但是使用yum安装软件的时候会发现不能使用,原因是yum与python有依赖关系,yum是急于python写的,运行yum命令时会调用pyton;

vi /usr/bin/yum

将#!/usr/bin/pyton 改成:#!/usr/bin/pyton2.6,改成你系统默认的版本即可,不然他会调用高版本的python软件包,但是是找不到的,需要做相关配置才行,这里为了方便就直接改了就可以使用了。

二、在安装了python2.7后执行cobbler的相关命令也会有问题

[root@cobbler scripts]# ./addnode2.py cobbler.xls
add test1 aa:bb:cc:dd 19:2.:16:8.:0.:2
add test2 aa:bb:cc:dd 19:2.:16:8.:0.:3
[root@cobbler scripts]# Traceback (most recent call last):
File "/usr/bin/cobbler", line 17, in <module>
import cobbler.cli as app
ImportError: No module named cobbler.cli
Traceback (most recent call last):
File "/usr/bin/cobbler", line 17, in <module>
import cobbler.cli as app
ImportError: No module named cobbler.cli [root@cobbler scripts]# cobbler get-loaders
Traceback (most recent call last):
File "/usr/bin/cobbler", line 17, in <module>
import cobbler.cli as app
ImportError: No module named cobbler.cli

这也是由于python版本导致的,同样:vi /usr/bin/cobbler

将调用的python版本修改为2.6即可。

三、补充:关于安装EasyInstall 遇到的问题:

下载:

wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg

安装:

sh  setuptools-0.6c11-py2.7.egg

报错:

Traceback (most recent call last):
File "<string>", line 1, in <module>
zipimport.ZipImportError: can't decompress data; zlib not available

解决方法:

1、安装依赖zlib、zlib-devel

2、重新编译安装Python

./configure
编辑Modules/Setup文件
找到下面这句,去掉注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
重新编译安装:make & make install

centos中使用python遇到的几个问题的更多相关文章

  1. 01 - CentOS 中安装Python 2.7.16

    准备 下载链接:https://www.python.org/ftp/python/ 下载源码:wget https://www.python.org/ftp/python/2.7.16/Python ...

  2. CentOS中输入yum报错:sudo: unable to execute /bin/yum: No such file or directory

    今天尝试更新了下虚拟机CentOS中的python版本后. 运行“yum”命令,就报错:“sudo: unable to execute /bin/yum: No such file or direc ...

  3. Centos中Python升级为3.X时yum出现except OSError, e: ^ SyntaxError: invalid syntax问题 No module named 'pip._internal.main

    CentOS 7升级Python到3.7.2后,需要在/usr/bin/python创建了一个指向Python 3的软连接,然后将/usr/bin/yum的顶部的: !/usr/bin/python ...

  4. 在Centos中部署redis运行状态图形化监控工具 — RedisLive

    写在前面 前两天看到张善友老师的一篇文章<先定个小目标, 使用C# 开发的千万级应用>,里面给出了一张腾讯OA基础服务中redis运行情况的一张监控图,然后想到自己的项目中前不久也上了re ...

  5. centos中yum命令删除还原的补救方法介绍

    前言 yum,是Yellow dog Updater Modified的简称,起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow ...

  6. 在 Linux服务器中安装 Python 3.6

    一.服务器环境配置 在 CentOS 7 中安装 Python 之前,请确保系统中已经有了所有必要的开发依赖: # yum -y groupinstall development # yum -y i ...

  7. 案例3-ubuntu和centos中自动部署tomcat相关服务的脚本

    涉及redis,mysql,xtrabackup, tomcat 1. ubuntu中 #!/bin/bash #first, change to root #出错立刻中断 set -e apt-ge ...

  8. Xshell 连接centOS虚拟机、centOS内置python版本升级

    Xshell 连接虚拟机 前置条件:VMware Workstation 12.5.1.Xshell 5 .  centOS 6.6 1.打开虚拟机,输入用户名和密码: 2.输出命令:ifconfig ...

  9. centos下搭建python双版本环境

    目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...

随机推荐

  1. Javascript 备忘

    1遍历所有属性 var person={fname:"John",lname:"Doe",age:25}; for (x in person) { txt=tx ...

  2. JVM 找出最耗 cpu的线程 并打印线程栈

    监控JVM中最占cpu的线程 top -Hp pid JVM中最占cpu的线程ID -o THREAD,tid,time | awk 'BEGIN {count=0; } { if($2>0.3 ...

  3. Cocoapod错误 - Xcode6.4

    当我从Xcode 6.3切换到Xcode6.4的时候,因为我是mac上安装了两个不同的版本,现在把Xcode 6.3卸掉了. 现在再次运行pod install命令的时候,提示如下错误:   Upda ...

  4. PHP练习题(二)

    程序6.题目: 假设某人有100,000现金,每经过一次路口需要进行一次交费交费规则为当他现金大于50,000时每次需要交%5,如果现金小于等于50,000时每次交5,000.问此人可以经过多少次这个 ...

  5. 使用XmlDocument.SelectNodes遍历xml元素遇到的一个XPathException

    使用XmlDocument类时候报错: 未处理的XPathException:需要命名空间管理器或 XsltContext.此查询具有前缀.变量或用户定义的函数. 需要使用XmlNamespaceMa ...

  6. nginx处理静态资源的配置

    修改nginx.conf文件,用于nginx处理静态资源. 主要配置如下(在server配置中加入location配置即可): server { listen 80; server_name 123. ...

  7. bzoj 3597: [Scoi2014]方伯伯运椰子 0/1分数规划

    3597: [Scoi2014]方伯伯运椰子 Time Limit: 30 Sec  Memory Limit: 64 MBSubmit: 144  Solved: 78[Submit][Status ...

  8. MinGW中的头文件路径级环境变量设置

    整理自 MinGW中的头文件路径   C头文件目录%MINGW_PATH%/include下有头文件,里面有strcpy等c函数的声明. C++头文件目录%MINGW_PATH%/lib/gcc/mi ...

  9. 没做过编译器就是被人欺——从一道变态的i++题猜编译器的行为(表达式从左往右扫描,同一变量相互影响)

    首先不要被人蒙了,如果是这样,根本编译不过: int i=1; int b=i+++++i; printf("%d %d\n", b ,i); Mingw报错:error: lva ...

  10. 控件构造函数需要的AOwner是TComponent,而不是Parent

    普通控件都只有一个构造函数,但是这个构造函数却强迫指定AOwner,也就是说,VCL希望将所有控件(至少是所有可视化控件)全部置于它的管理之下.至于到底显示不显示,那是另一个层次的问题.这个问题其实挺 ...