AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[sles11](server)

Martin Hope
kab00m
Asked: 2021-08-09 10:29:26 +0800 CST

KVM 上的 SLES 11 PV 虚拟机

  • 0

我有 SUSE 11 SP4 VM,最初它在 PV 模式下在 Xen 上工作。现在我将其移至 KVM。我常用的方法是在目标 VM 中启动任何 Linux,挂载目标操作系统的根目录,chroot 并重建 initramfs,然后将 VM 重新启动到目标操作系统。

SLES 11 SP4 似乎缺少一些东西,因为在那之后 initramfs 找不到任何 vbd 设备来挂载 root。但是,我已经设法通过 KVM 主机上的直接 qemu 命令运行它:

qemu-kvm -m 32768 -smp 8 -device virtio-net-pci,mac=42:5f:96:48:39:fa,netdev=vmnic -netdev tap,id=vmnic,script=/etc/ovs-ifup,downscript=/etc/ovs-ifdown -nographic -serial mon:stdio -drive file=/dev/lvm/vm,if=none,id=drive0,format=raw  -device virtio-blk-pci,drive=drive0,scsi=off

它工作正常。

KVM 配置(与磁盘相关)如下所示:

<devices>
  <emulator>/usr/bin/qemu-system-x86_64</emulator>
  <disk type="block" device="disk">
    <driver name="qemu" type="raw" cache="none" io="native"/>
    <source dev="/dev/lvm/vm"/>
    <target dev="vda" bus="virtio"/>
    <address type="pci" domain="0x0000" bus="0x03" slot="0x00" function="0x0"/>
  </disk>
  <controller type="pci" index="3" model="pcie-root-port">
    <model name="pcie-root-port"/>
    <target chassis="3" port="0xa"/>
    <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x2"/>
  </controller>

而且我的 virt-manager 不允许我在这里进行重大更改。

我在这里可能错了,但我认为主要区别在于 PCI 设备结构,因此 initramfs 以一种方式工作,而不是另一种工作方式。我比较了 PCI 设备:

在通过 qemu 命令直接运行的 VM 上找到的设备树:

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Device 1234:1111 (rev 02)
00:03.0 Ethernet controller: Red Hat, Inc Virtio network device
00:04.0 SCSI storage controller: Red Hat, Inc Virtio block device

在任何其他 KVM 虚拟机(同一主机)上找到的设备树:

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller
00:01.0 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.1 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.2 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.3 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.4 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.5 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.6 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:01.7 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
01:00.0 Ethernet controller: Red Hat, Inc. Virtio network device (rev 01)
02:00.0 USB controller: Red Hat, Inc. QEMU XHCI Host Controller (rev 01)
03:00.0 SCSI storage controller: Red Hat, Inc. Virtio block device (rev 01)
04:00.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon (rev 01)
05:00.0 Unclassified device [00ff]: Red Hat, Inc. Virtio RNG (rev 01)
08:00.0 SCSI storage controller: Red Hat, Inc. Virtio block device (rev 01)

在这里我看到了不同之处:qemu 允许将存储连接到根 PCI 主机桥,但在 KVM 中它始终连接到 QEMU PCIe 根端口。

我的问题是:

  1. SLES 11 是否可能太旧而无法支持 QEMU PCIe Root 端口?
  2. 是否可以简化 VM 配置以将存储直接附加到主机桥?
  3. 我在目标环境中重建 initramfs,不向配置文件添加任何内容。重建 initramfs 时我是否遗漏了某些东西(挂钩或驱动程序)?
linux kvm-virtualization qemu sles11
  • 1 个回答
  • 41 Views
Martin Hope
Ilya Shinkarenko
Asked: 2016-04-23 06:52:02 +0800 CST

在 CIFS 挂载上更改目录的时间戳时权限被拒绝

  • 4

服务器目录安装有一个用户,该用户在 Windows 中肯定具有“写入属性”权限。

/etc/fstab:

//server/shared /mnt/fs1 cifs noperm,rw,nounix,iocharset=utf8,gid=java,file_mode=0774,dir_mode=0775,credentials=/localhome/securedir/fs1.credentials 0 0

挂载的文件是可读写的目录。

更改文件的时间戳有效:

> touch -t 01010101 /mnt/fs1/test.file

将目录的时间戳更改为“权限被拒绝”:

> touch -t 01010101 /mnt/fs1/baselines
touch: setting times of `/mnt/fs1/baselines': Permission denied

还有其他我必须申请的安装选项吗?谢谢!

permissions samba cifs attributes sles11
  • 1 个回答
  • 1434 Views
Martin Hope
Pace
Asked: 2012-07-03 13:04:38 +0800 CST

ksoftirqd 上的大量上下文切换 [重复]

  • 1
这个问题在这里已经有了答案:
10 年前关闭。

可能重复:
还有其他人在闰秒期间遇到 Linux 服务器崩溃率很​​高的情况吗?

我们有两台服务器正在停止运行。一个是虚拟机,另一个是裸机。他们都没有运行相似的代码,但他们在同一个网络上。看起来难以置信数量的上下文切换是由 ksoftirqd 引起的(它占用了大量的 CPU)。

vmstat 输出

procs -----------memory---------- ---swap-- -----io---- -system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 605092 182496 2637556    0    0     0     0 4177 519187  8 19 73  0  0
 2  0      0 605092 182496 2637556    0    0     0     0 4792 520980  8 19 74  0  0
 3  0      0 605092 182496 2637552    0    0     0     0 2137 659640 18 26 56  0  0
 ...

pidstat 输出

TCK4-BM-06A:~ # pidstat -w -I 5
Linux 2.6.32.12-0.7-default (TCK4-BM-06A)   07/02/2012  _x86_64_

03:03:01 PM       PID   cswch/s nvcswch/s  Command
03:03:06 PM         1      0.20      0.00  init
03:03:06 PM         4 386666.27      0.00  ksoftirqd/0
03:03:06 PM         6      0.60      0.00  ksoftirqd/1
03:03:06 PM         8 378213.17      0.00  ksoftirqd/2
03:03:06 PM        10      0.20      0.00  ksoftirqd/3
03:03:06 PM        12      0.20      0.00  ksoftirqd/4
03:03:06 PM        26 377115.37      0.00  ksoftirqd/11
03:03:06 PM        27      1.80      0.00  events/0
03:03:06 PM        28      1.00      0.00  events/1
03:03:06 PM        29      1.00      0.00  events/2
03:03:06 PM        30      1.00      0.00  events/3
03:03:06 PM        31      0.80      0.00  events/4
03:03:06 PM        32      0.80      0.00  events/5
...

我最初的想法是,由于两者都在同一个网络上,所以有些东西正在充斥网络。这与数据一致吗?

linux sles11
  • 1 个回答
  • 2289 Views
Martin Hope
QuantumMechanic
Asked: 2012-06-28 13:50:42 +0800 CST

Java 中基于时间的 32 位溢出?还是 SLES11?

  • 4

这是 Tomcat 6.0.18、Java 1.7.0_03(32 位)和 SLES11 SP2(64 位)。至于内核信息:

$ uname -a
Linux server-1 3.0.13-0.27-default #1 SMP Wed Feb 15 13:33:49 UTC 2012 (d73692b) x86_64 x86_64 x86_64 GNU/Linux

我们在三台服务器上进行负载和寿命测试。在所有三台独立的机器上,我们让 Tomcat在每台 Tomcat 启动后 2^32 毫秒(49 天以上)的一秒内退出。System.exit(1)在每台机器上,两个线程在 JVM 退出之前产生堆栈跟踪(Tomcat 本身在获取时调用,SocketTimeoutException这就是 JVM 退出的原因)。

一个线程是(默认情况下)在端口 8005 上侦听关闭命令的线程(通过查看 Tomcat 源代码验证了这一点):

Jun 22, 2012 9:10:15 AM org.apache.catalina.core.StandardServer await
SEVERE: StandardServer.await: accept: 
java.net.SocketTimeoutException: Accept timed out
      at java.net.PlainSocketImpl.socketAccept(Native Method)
      at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
      at java.net.ServerSocket.implAccept(Unknown Source)
      at java.net.ServerSocket.accept(Unknown Source)
      at org.apache.catalina.core.StandardServer.await(StandardServer.java:389)
      at org.apache.catalina.startup.Catalina.await(Catalina.java:642)
      at org.apache.catalina.startup.Catalina.start(Catalina.java:602)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

另一个线程是(我们相信,虽然我们没有检查 Tomcat 源来验证)处理传入端口 8080 连接的线程:

Jun 22, 2012 9:10:15 AM org.apache.jk.common.ChannelSocket acceptConnections
WARNING: Exception executing accept
java.net.SocketTimeoutException: Accept timed out
      at java.net.PlainSocketImpl.socketAccept(Native Method)
      at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
      at java.net.ServerSocket.implAccept(Unknown Source)
      at java.net.ServerSocket.accept(Unknown Source)
      at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:307)
      at org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:661)
      at org.apache.jk.common.ChannelSocket$SocketAcceptor.runIt(ChannelSocket.java:872)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
      at java.lang.Thread.run(Unknown Source)

Tomcat 没有做任何疯狂的事情。在第一种情况下,它只是一个通过调用while (true)获得 a 的循环,然后调用炸弹。SocketServerSocket.accept()accept()

任何想法为什么会发生这种情况以及我可以尝试查看/寻找什么来弄清楚将来如何预防它?

请注意,虽然Tomcat运行了 2^32 毫秒,但在 Tomcat 启动时系统已经启动。当然,这并不排除在 Tomcat 开始涉及时创建的一些流程变量。

tomcat java sles tomcat6 sles11
  • 2 个回答
  • 1577 Views
Martin Hope
Banjer
Asked: 2012-06-23 05:33:25 +0800 CST

eth0 和 eth1 都在启动时分配了相同的 IP

  • 1

我在 Sun Fire x4140 上有一个物理 SLES 11 SP2 服务器,它在重新启动时给我带来网络问题。NIC 是板载的。

引导期间网络似乎成功,但网络服务(如 nfs)却严重失败。这是因为 eth0 和 eth1 都接收相同的配置并且都被 ifup-ed。一旦一切都超时并且我在控制台,ifconfig 显示 eth0 和 eth1 已启动并使用相同的 IP 运行。尝试 ping 该子网中的任何内容都失败。重新启动网络服务可解决此问题。

根据 MA​​C 地址,eth0 是应该配置为主网卡的正确网卡。

问题:是什么导致 eth1 使用与 eth0 相同的配置?

我没有为 eth1 设置配置脚本:

banjer@harp:~> ls -la /etc/sysconfig/network/
total 104
drwxr-xr-x 6 root root  4096 Jun 11 12:21 .
drwxr-xr-x 6 root root  4096 Apr 10 09:46 ..
-rw-r--r-- 1 root root 13916 Apr 10 09:32 config
-rw-r--r-- 1 root root  9952 Apr 10 09:36 dhcp
-rw------- 1 root root   180 Jun 11 12:21 ifcfg-eth0
-rw------- 1 root root   180 Jun 11 12:21 ifcfg-eth3
-rw------- 1 root root   172 Feb  1 08:32 ifcfg-lo
-rw-r--r-- 1 root root 29333 Feb  1 08:32 ifcfg.template
drwxr-xr-x 2 root root  4096 Apr 10 09:32 if-down.d
-rw-r--r-- 1 root root   239 Feb  1 08:32 ifroute-lo
drwxr-xr-x 2 root root  4096 Apr 10 09:33 if-up.d
drwx------ 2 root root  4096 May  5  2010 providers
-rw-r--r-- 1 root root    25 Nov 16  2010 routes
drwxr-xr-x 2 root root  4096 Apr 10 09:36 scripts

附带说明一下,eth3 还配置了不同子网中的 IP,但这没有造成任何问题。仅供参考,正在使用的内核模块是forcedeth.

banjer@harp:~> sudo cat /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='172.21.64.25/20'
MTU=''
NAME='MCP55 Ethernet'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
ONBOOT="yes"

这是 eth3,以备不时之需:

banjer@harp:~> sudo cat /etc/sysconfig/network/ifcfg-eth3
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='172.11.200.4/24'
MTU=''
NAME='MCP55 Ethernet'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
ONBOOT="yes"

也许与 udev 有关? 70-persistent-net-rules对我来说看起来不错,但我可能不完全理解。

banjer@harp:~> cat /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x10de:0x0373 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:4f:8d:85:4c", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

# PCI device 0x10de:0x0373 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:4f:8d:85:4a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x10de:0x0373 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:4f:8d:85:4b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x10de:0x0373 (forcedeth)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:4f:8d:85:4d", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

# PCI device 0x1077:0x3032 (qla3xxx)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:c1:dd:0e:34:6c", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth4"

关于什么会导致这种情况的任何其他想法?

更新 1

根据建议,我为所有其他未使用的 NIC(eth1 和 eth2)提供了配置,例如这里是 eth1:

banjer@harp:/etc/sysconfig/network> sudo cat ifcfg-eth1
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR=''
MTU=''
NAME='MCP55 Ethernet'
NETMASK='255.255.255.0'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='off'
ONBOOT='no'
USERCONTROL='no'

并将具体添加HWADDR到实际插入的 NIC(eth0 和 eth3)。在测试重启期间,我看到网络按预期出现,并且 eth1 和 eth2 按预期显示“已跳过”。然而,eth1 仍然会随着 eth0 的配置一起出现。

我设置udev_log="debug"了/etc/udev/udev.conf,现在我在/var/log/messages. 这是 的粘贴,grep eth1 /var/log/messages但与其他 eth 的 grep 相比,我看不出有什么突出之处。

更新 2

认为这是一个 udev 问题,我进行了更改/lib/udev/rules.d/75-persistent-net-generator.rules并做了rm /etc/udev/rules.d/70-persistent-net.rules.

# device name whitelist
#KERNEL!="eth*|ath*|wlan*[0-9]|msh*|ra*|sta*|ctc*|lcs*|hsi*", GOTO="persistent_net_generator_end"
KERNEL!="eth[03]|ath*|wlan*[0-9]|msh*|ra*|sta*|ctc*|lcs*|hsi*", GOTO="persistent_net_generator_end"

重新启动后,这正是我想要的(为 eth0、eth3 生成规则),但它没有解决问题。eth1 仍然被提出。有没有办法调试整个启动过程,例如strace?我不知道这是从哪里来的。

作为创可贴,我添加了一个 rc 脚本以在引导过程的后期重新启动网络。

linux networking udev sles sles11
  • 4 个回答
  • 7513 Views
Martin Hope
Ed Manet
Asked: 2012-05-25 09:30:19 +0800 CST

SLES 11 - slapd 正在向 syslog 发送垃圾邮件

  • 1

我怎样才能安静下来?每一秒它都将相同的五行写入 /var/log/messages 文件。

May 24 13:16:09 servername slapd[21299]: conn=5866 op=15204 SRCH base="" scope=0 deref=2 filter="(objectClass=*)"
May 24 13:16:09 servername slapd[21299]: conn=5866 op=15204 SRCH attr=subschemaSubentry namingContexts altServer supportedExtension supportedControl supportedFeatures supportedSASLMechanisms supportedLDAPVersion vendorName vendorVersion
May 24 13:16:09 servername slapd[21299]: conn=5866 op=15204 SEARCH RESULT tag=101 err=0 nentries=1 text=
May 24 13:16:09 servername slapd[21299]: conn=5866 op=15205 SRCH base="o=od,c=us" scope=2 deref=2 filter="(|(|(|(|(cn:dn:=global)(cn:dn:=standards))(objectClass=organizationalUnit))(objectClass=organization))(&(&(objectClass=*)(cn:dn:=00026))(ou:dn:=dev)))"
May 24 13:16:09 servername slapd[21299]: conn=5866 op=15205 SEARCH RESULT tag=101 err=0 nentries=45 text=

这些对我来说似乎不是错误信息。AFAIK,ldap 工作正常。openldap.org 文档显示我可以将“loglevel 0”添加到 slapd.conf,但这没有帮助。

有什么想法可以让这东西闭嘴吗?

openldap slapd sles11
  • 2 个回答
  • 1434 Views
Martin Hope
Banjer
Asked: 2010-04-17 11:09:36 +0800 CST

在 SLES 11 自动安装期间指定网络设置

  • 3

我正在设置一个用于自动安装 SLES 11 的 autoinst.xml 文件。系统会提示我输入下面的各种界面设置,但是一旦服务器重新启动,它们似乎就不会粘住。我认为我没有正确定义 xml。我希望有人有这方面的经验。

<ask-list>
  <ask>
    <path>networking,dns,hostname</path>
    <question>Enter Hostname (server name)</question>
    <stage>initial</stage>
    <default>merkin</default>
  </ask>
  <ask>
    <path>networking,interfaces,interface,0,device</path>
    <question>Enter the primary ethernet device:</question>
    <stage>initial</stage>
    <default>eth0</default>
  </ask>
  <ask>
    <path>networking,interfaces,interface,0,ipaddr</path>
    <question>Enter the primary IP Address:</question>
    <stage>initial</stage>
    </ask>
  <ask>
    <path>networking,interfaces,interface,0,netmask</path>
    <question>Enter the Netmask Address:</question>
    <stage>initial</stage>
  </ask>
  <ask>
    <path>networking,routing,routes,route,0,gateway</path>
    <question>Enter the primary Gateway Address:</question>
    <stage>initial</stage>
  </ask>
</ask-list>

主机名的第一个似乎很好,但其余的则没有。作为替代方案,有没有办法在您配置网络设备的部分停止自动安装,以便用户可以接管?我能够展示分区提案,但不确定如何对网络设置进行同样的操作。

networking sles autoyast sles11
  • 1 个回答
  • 1170 Views
Martin Hope
Banjer
Asked: 2010-04-15 10:09:48 +0800 CST

如果我启动到运行级别 1,为什么 eth0 会显示 IP?

  • 0

我正在构建的新 Linux 服务器上的网络存在一些问题。操作系统是 SLES 11。当启动到运行级别 1 时,我看到 eth0 显示 IP。物理上,有一根网线插入与 eth1 关联的卡,然后有一根网线插入 QLogic iSCSI 卡(eth4,未显示)。我已经对此进行了一段时间的故障排除,似乎 eth0 以某种方式被分配了一个 IP,即使它没有在 Linux 中配置,甚至没有插入网络。想法?

ifconfig -a

这是 ifconfig 输出

(抱歉,我需要更多代表才能在 SF 上发布图片……)

sles linux-networking sles11
  • 1 个回答
  • 231 Views
Martin Hope
optilude
Asked: 2010-03-30 01:24:12 +0800 CST

使用系统范围的库在 SuSE (SLES) 11 上安装干净的 Python 2.6

  • 1

我花了一天的大部分时间在这上面,这让我非常疯狂。在我使用过的所有其他 Unix 上,这是在公园里散步,但 SLES 11 让我目瞪口呆。

我需要在 SLES 11 64 位上构建 Zope:

Linux <name> 2.6.27.45-0.1-default #1 SMP 2010-02-22 16:49:47 +0100 x86_64 x86_64 x86_64 GNU/Linux

我首先尝试只使用安装了 YaST 的 Python 2.6。我还安装了 python-devel、libjpeg-devel、readline-devel、libopenssl-devel、libz2-devel、zlib-devel 和 libgcrypt-devel。

全局python2.6里面有很多杂物,当我使用它时似乎在/etc/pythonstart中执行了一些东西,这没有帮助。但是,我得到的错误是:

Getting distribution for 'Zope2==2.12.3'.
src/AccessControl/cAccessControl.c:596: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:598: warning: ‘intargfunc’ is deprecated
src/AccessControl/cAccessControl.c:598: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:599: warning: ‘intargfunc’ is deprecated
src/AccessControl/cAccessControl.c:599: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:600: warning: ‘intintargfunc’ is deprecated
src/AccessControl/cAccessControl.c:600: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:601: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:602: warning: initialization from incompatible pointer type
src/AccessControl/cAccessControl.c:606: warning: ‘intargfunc’ is deprecated
src/AccessControl/cAccessControl.c:606: warning: initialization from incompatible pointer type
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libpython2.6.so when searching for -lpython2.6
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lpython2.6
collect2: ld returned 1 exit status
error: Setup script exited with error: command 'gcc' failed with exit status 1
An error occured when trying to install Zope2 2.12.3. Look above this message for any errors that were output by easy_install.

我不知道这里的“不兼容”指的是什么;我的猜测是硬件架构,但我不确定什么与上面的陈述不兼容。

我以前在系统安装的 Python 上遇到过问题,所以我尝试编译自己的(因此是上面的 -devel 包列表),下载 Python 2.6 tarball 并运行:

./configure --disable-tk --prefix=${HOME}/python
make
make install

这会安装,但似乎无法找到任何系统范围的库。这是一个示例解释器会话:

Python 2.6.5 (r265:79063, Mar 29 2010, 17:04:12) 
[GCC 4.3.2 [gcc-4_3-branch revision 141291]] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Traceback (most recent call last):
  File "/etc/pythonstart", line 7, in <module>
    import readline
ImportError: No module named readline
>>> from hashlib import md5
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/osc/python-2.6/lib/python2.6/hashlib.py", line 136, in <module>
    md5 = __get_builtin_constructor('md5')
  File "/home/osc/python-2.6/lib/python2.6/hashlib.py", line 63, in __get_builtin_constructor
    import _md5
ImportError: No module named _md5

应该安装 readline 和 hashlib(通过 libgrypt),并且还安装了相关的 -devel 包。在 Ubuntu 或 OS X 上,这工作得很好。在 SuSE 上,没有运气。

非常感谢任何帮助!

马丁

python 64-bit architecture sles11
  • 4 个回答
  • 9004 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve