SELinux:php无法加载ZendOptimizer

2008-05-20 | 5:11 pm分类:工作日志 | 54 views

[root@sdfa pkg]# /usr/local/php526/bin/php -v
Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so:  /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied
PHP 5.2.6 (cli) (built: May 10 2008 11:09:48)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies

[root@sdfa pkg]# chcon -t texrel_shlib_t /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so
[root@sdfa pkg]# /usr/local/php526/bin/php -v
PHP 5.2.6 (cli) (built: May 10 2008 11:09:48)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.0, Copyright (c) 1998-2007, by Zend Technologies

CACTI:Error: Passwords do not match, please retype

2008-05-20 | 5:10 pm分类:工作日志 | 65 views

修改cacti任何配置会碰到如下错误:
Error: Passwords do not match, please retype.

firefox3问题,换IEOK.

SSH:ssh登录NAT后多台服务器报错

2008-05-20 | 5:08 pm分类:工作日志 | 57 views

问题:我的几台服务器都是位于NAT之后,在ssh登录第一台服务器之后,登录其它服务器会报错:
Warning: the RSA host key for ‘example.com’ differs from the key for the IP address ‘1.1.1.1′
Offending key for IP in /home/joerandom/.ssh/known_hosts:2
Matching host key in /home/joerandom/.ssh/known_hosts:7
Are you sure you want to continue connecting (yes/no)?

解决方法:为避免此问题,设置ssh_config,参考如下:
Host foo
HostKeyAlias example_com_9622
HostName example.com
Port 9622
CheckHostIP no
Host bar
HostKeyAlias example_com_9623
HostName example.com
Port 9623
CheckHostIP no

全文阅读 »

美国国际救援小组:地震中自救窍门

2008-05-16 | 6:04 pm分类:时事热点&评论 | 54 views

美国国际救援小组专家:地震中自救窍门  2008年05月16日
我的名字叫道格·库普(Doug Copp)。我是世界上最有经验的救援小组—美国国际救援小组(ARTI)的首席救援者,也是灾难部的经理。本文中以下信息能在地震中挽救生命。

我和曾经来自60多个不同国家成立的各种救援小组一起工作过,曾在875个倒塌的建筑物里爬进爬出。在联合国灾难减轻(UNX051- UNIENET)小组中我担任了任期两年的专家。从1985年至今,除非同时发生了多个灾祸,我几乎参与了每一次重大的救援工作。

在1996 年,我们用我创立的而且被证明是正确的方法制作了一部电影。土耳其政府、伊斯坦布尔市、伊斯坦布尔大学、及ARTI联合制作了这部科学研究性的影片。

我们人为地摧毁了一座学校,和一个里面有20个人体模特的房屋。十个人体模特用”蹲下和掩护”的方法,而另外十个模特使用我的”生命三角”的求生方法。

模拟地震发生后,我们通过倒塌的碎石慢慢进入了建筑物,并拍摄和记录了结果。 全文阅读 »

在Linux系统中,有时候会发现无法启动rman

2008-05-16 | 5:21 pm分类:工作日志, 数据库 | 66 views

在Linux系统中,有时候会发现无法启动rman

如:

rman target / nocatalog

会报错

rman: can’t open target

这纯属一个误会 : )

原因是因为 在linux中,有一个其他工具正好也叫 rman .
运行一下:

[oracle@sms-server ~]$ which rman

/usr/X11R6/bin/rman 全文阅读 »

selinux 下snmp 报错问题解决

2008-05-14 | 2:22 pm分类:工作日志 | 59 views

如下:

Dec 27 08:00:05 web kernel: audit(1198713605.145:11287): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-1 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:file_t tclass=dir
Dec 27 08:00:05 web kernel: audit(1198713605.172:11288): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-1 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:file_t tclass=dir
Dec 27 08:00:05 web kernel: audit(1198713605.251:11289): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-3 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:tmp_t tclass=dir
Dec 27 08:00:05 web kernel: audit(1198713605.277:11290): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-3 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:tmp_t tclass=dir
Dec 27 08:05:04 web kernel: audit(1198713904.989:11291): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-1 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:file_t tclass=dir
Dec 27 08:05:05 web kernel: audit(1198713905.015:11292): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-1 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:file_t tclass=dir
Dec 27 08:05:05 web kernel: audit(1198713905.093:11293): avc:  denied  { getattr } for  pid=9022 comm=”snmpd” name=”/” dev=dm-3 ino=2 scontext=root:system_r:snmpd_t tcontext=system_u:object_r:tmp_t tclass=dir

系统更新后发现上面错误,困扰了我几个月的时间,都没有办法解决,结果最近在一个老外的文章,然后受到启发后结果把问题给搞定了,不容易啊。

#audit2allow -d    //查看selinux拒绝了那些snmp正常的操作

allow snmpd_t file_t:dir getattr;
allow snmpd_t tmp_t:dir getattr;

把上面两行输出加入到文件

/etc/selinux/targeted/src/policy/domains/program/snmpd.te中。

#cd  /etc/selinux/targeted/src/policy

#make load

#setfiles file_contexts/file_contexts /usr/share/snmp

第二天再也没有报错,其他的应用程序也可以通过类似的方式解决。

SELinux设置分析工具

2008-05-14 | 2:15 pm分类:系统安全, 系统管理 | 81 views

SELinux设置分析工具 1.文件的安全上下文与文件操作

shell命令中对文件的操作命令存在如何处理文件的安全上下文的问题,一般通过选项“-Z”可对文件安全上下文进行特殊处理。如:ls -Z可以显示文件的安全上下文,ps -Z可以查看进程的安全上下文,cp -Z可以给拷贝的文件指定安全上下文等。

默认下,mv操作保持安全上下文不变,创建和拷贝的文件继承父目录的安全上下文。默认操作下,操作后的文件可以因文件安全上下文的变化造成无法运行,此时,还可以通过选项“-Z”指定文件的安全上下文。

在targeted策略下,进程的域类型数量较少,内核线程的安全上下文一般为system_u:system_ r:kernel_t,用户进程一般为user_u:system_r:unconfined_t,后台进程一般有特殊的安全上下文。从这里可以看 出,targeted策略对后台进程进行严格的权限限制,而对用户进程进行一般的限制。使用命令ps -AZ可以看到进程的安全上下文,列出如下:

^-^$ ps -AZ
LABEL                             PID TTY     TIME CMD
system_u:system_r:init_t            1 ?    00:00:00 init
system_u:system_r:kernel_t          2 ?   00:00:00 migration/0
system_u:system_r:kernel_t          3 ?     00:00:00 ksoftirqd/0
......
system_u:system_r:kernel_t        426 ?   00:00:00 kjournald
system_u:system_r:kernel_t        452 ?    00:00:00 kauditd
system_u:system_r:udev_t:SystemLow-SystemHigh 478 ? 00:00:00 udevd
system_u:system_r:kernel_t        829 ?        00:00:00 kedac
system_u:system_r:kernel_t       1503 ?        00:00:00 kmpathd/0
system_u:system_r:kernel_t       1527 ?        00:00:00 kjournald
......
system_u:system_r:initrc_t       2161 ?         00:00:00 pcscd
system_u:system_r:bluetooth_t    2179 ?        00:00:00 hidd
......
system_u:system_r:getty_t        3030 tty6     00:00:00 mingetty
system_u:system_r:init_t         3031 ?         00:00:00 prefdm
system_u:system_r:xdm_t:SystemLow-SystemHigh 3036 ? 00:00:00 gdm-binary
......
root:system_r:unconfined_t:SystemLow-SystemHigh 3391 ? 00:00:00 notification-da
system_u:system_r:cupsd_t:SystemLow-SystemHigh 3979 ? 00:00:00 cupsd
system_u:system_r:telnetd_t     10476 ?        00:00:00 in.telnetd
system_u:system_r:remote_login_t 10477 ?       00:00:00 login
user_u:system_r:unconfined_t    10480 pts/1    00:00:00 bash
user_u:system_r:unconfined_t    10690 pts/1    00:00:00 su
user_u:system_r:unconfined_t    10692 pts/1    00:00:00 bash
system_u:system_r:kernel_t      10792 ?        00:00:00 kjournald
......
system_u:system_r:remote_login_t 10834 ?       00:00:00 login
user_u:system_r:unconfined_t    10835 pts/2     00:00:00 bash
......
user_u:system_r:unconfined_t    30329 pts/6    00:00:00 bash
user_u:system_r:unconfined_t    30916 pts/1    00:00:00 ps

全文阅读 »

精彩SELinux基础知识篇

2008-05-13 | 10:38 am分类:系统安全, 系统管理 | 71 views

一.前言

Security Enhanced Linux(以下简称为SELinux)是RedHat Enterprise Linux 4(以下简称为RHEL4)上新的安全机制,在以往的RHEL系统中从未使用,这使得很多资深的系统管理员已开始使用RHEL4时弄得一头雾水,出现了很 多莫名其妙的错误,随后寻找帮助才发现原来是SELinux弄的。由于SELinux有着严格的安全控制和管理权使得系统管理员一时不知如何设定,索性就 关闭了,很是可惜。究其原因,是当一个事物出现时,如果他给你带来了麻烦,增加了工作量,便对其产生了厌恶感,这是人之常情。本文暂不探讨SELinux 复杂的内部运作机制,只是先让读者对SELinux有个初步的认识和了解,希望能在您的心里对SELinux留下一个好的印象,并认识到尽管一开始时有些 麻烦,但当你熟悉了它以后,系统的管理会变得更轻松。

二.认识DAC与MAC

在介绍SELinux之前,读者需要了解两个基本的系统访问控制机制:

DAC(Discretionary access control,自主访问控制):DAC机制就是指对象(比如程序、文件或进程等)的的拥有者可以任意的修改或授予此对象相应的权限。例如传统Linux,Windows等。

MAC(Mandatory Access Control,强制访问控制):MAC机制是指系统不再允许对象(比如程序、文件或文件夹等)的拥有者随意修改或授予此对象相应的权限,而是透过强制的方式为每个对象统一授予权限,例如SELinux。

图1 DAC与MAC的不同(引自 Security Features in Red Hat Enterprise Linux 4)

  全文阅读 »

oracle10g内存结构

2008-04-19 | 8:53 pm分类:数据库 | 113 views

转自 http://space.itpub.net/662867/viewspace-165682

1. SGA

1.1 从查询sga相关视图开始

1.1.1 gv$sga_dynamic_components

SQL> select * from gv$sga_dynamic_components;

PS:

1)SGA的分配单元为granule,sga中的components都是由granule组成的,granule的信息由granule entry来管理,每个entry维护了granule的类型和状态,当sga<=128M时granule为4M,当sga>128M时 granule为16M,特殊情况是32BIT的windows NT则为8M,从视图查询的结果可以看出当前的granule为16M

2)sga的主要成分为:buffer cache,shared pool,java pool,large pool

全文阅读 »

PGA自动管理原理深入分析及性能调整

2008-04-19 | 8:47 pm分类:数据库 | 68 views

1. PGA的概念以及所包含的内存结构
作为一个复杂的Oracle数据库系统来说,每时每刻都要处理不同的用户所提交的SQL语句,获取数
据并返回数据给用户。众所周知,解析SQL语句的工作是在oracle实例中的shared pool所完成的。那么对于每个session来说,其执行SQL语句时所传入的绑定变量放在哪里?而且,对于那些需要执行比较复杂SQL的 session来说,比如需要进行排序(sort)或hash连接(hash-join)时,这时这些session所需要的内存空间又从哪里来?另外, 还有与每个session相关的一些治理控制信息又放在哪里?对于诸如此类与每个session相关的一些内存的分配问题,oracle通过引入PGA这 个内存组件来进行解决。

1.1 PGA的相关概念
PGA 按照oracle官方文档解释,叫做程序全局区(Program Global Area),但也有些资料上说还可以理解为进程全局区(Process Global Area)。这两者没有本质的区别,它首先是一个内存区域,其次,该区域中包含了与某个特定服务器进程相关的数据和控制信息。每个进程都具有自己私有的 PGA区,这也就意味着,这块区域只能被其所属的进程进入,而不能被其他进程访问,所以在PGA中不需要latch这样的内存结构来保护其中的信息。笼统 的来说,PGA里包含了当前进程所使用的有关操作系统资源的信息(比如打开的文件句柄等)以及一些与当前进程相关的一些私有的状态信息。
每个PGA区都包含两部分:
固定PGA部分(Fixed PGA):这部分包含一些小的固定尺寸的变量,以及指向变化PGA部分的指针。
变化PGA部分(Variable PGA):这部分是按照堆(Heap)来进行组织的,所以这部分也叫做PGA堆。可以从X$KSMPP视图中看到有关PGA堆的分布信息。PGA堆中所包含的内存结构包括:
有关一些固定表的永久性内存。
假如session使用的是专用连接方式(dedicated server),则还含有用户全局区(UGA-User Global Area)子堆。假如session使用的是共享连接方式(shared server),则UGA位于SGA中。
调用全局区(CGA-Call Global Area)子堆。

全文阅读 »

Pages: Prev 1 2 3 4 5 6 7 8 ...24 25 26 Next