您没有来错地!为了更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 网络管理 查看内容

Solaris7 交流 -- 重新配置系统核心

2005-6-2 06:39| 投稿: Linux

摘要: Sun Microsystems公司于前不久发布了它的新一代的旗帜性软件产品线:适用于SPARC 和Intel两种计算...
Sun Microsystems公司于前不久发布了它的新一代的旗帜性软件产品线:适用于SPARC 和Intel两种计算机的新的Solaris 7 软件环境。Solaris 7产品系列包括基本的 Solaris 7操作环境和3个模块化软件扩展版本(Solaris Easy Access Server,Solaris Enterprise Server,Solaris ISP Server)--每个扩展版本都在基本的Solaris 7操作 环境上运行。新的产品线主要具有以下特点: 1. 处理数据的能力大为增加,不仅数据量没有什么限制,计算的复杂性也有突破, 为新一级的应用软件敞开了大门。 2. 大型机的能力,而价格只有大型机的几分之一。 3. 具有对PC机的完全互操作性,可使客户连接和管理他们的Windows NT环境与 Solaris环境一样。 4. 具有PC机简易管理的新风格,大大简化了安装与管理。 不仅如此,该版本的Solaris还具有强大的软件支持,其中包括了Sun Visual WorkShop C++ 5.0软件和Sun Performance WorkShop Fortran 5.0软件,并为C/C++和 Fortran的开发商开发企业级应用软件提供了具有竞争性的优势。Solaris 7具有全新中 文版本,中文版本不仅具有多种中文输入方式、灵活地支持中文的输出,同时方便地接 收中文邮件和进行字体转换弥补了过去Solaris在这方面的不足。Solaris 7与 Windows 无缝连接,从而使用户可以进行简单明了的操作和管理。在Solaris 7中,Sun公司着重考 虑了健壮和安全的问题,提供了一系列的现代化的安全机制,同时修补了安全漏洞和系统 BUG,使得Solaris 7具有相当可靠的安全性和健壮性,将用户的风险降到了最低的限度。 综上所述,Solaris 7是适用于企业网的操作系统。 一、相关站点 1.Solaris软件免费下载站点: http://www.sunfreeware.com/ 2.solaris 咨询站 http://www.ibiblio.org/pub/packages/solaris/sparc/ 3.solaris中文手册: http://docs.sun.com/ab2?Ab2Lang=zh&Ab2Enc=gb2312 4.UNIX depot http://www.cise.ufl.edu/depot/ 5.solaris中心 http://www.solariscentral.org/ 二、重新配置系统核心 举例: Oracle 8 for solaris 2.6 安装的安装需要增加Shared Memory Segments; 修改/etc/system文件,在文件后加上 set shmsys:shminfo_shmmax=4294967295 set shmsys:shminfo_shmmin=1 set shmsys:shminfo_shmmni=100 set shmsys:shminfo_shmseg=15 set semsys:seminfo_semmns=200 set semsys:seminfo_semmni=70 set ulimit=3000000 比如innd用的文件数目比较多,需要设置: set rlim_fd_max=4096 set rlim_fd_cur=1024 如何看系统默认值; 先看系统默认值,超级用户可以用-k参数来看核心的各个参数,如果指定-w参数,则可 以 adb - general-purpose debugger 可以看现在的值是什么? /usr/bin/adb –kw physmem 1f8d9 maxusers/D maxusers: maxusers: 504 maxusers/W 200 maxusers: 0x1f8 = 0x200   (1)IO相关的设置 最经常需要改变的是文件描述符数因为SOCKET API处理INTERNET连接使用文件描述符, set rlim_fd_max = 8192 set rlim_fd_cur = 4096 Please, before you start, make a backup copy of your initial /etc/system. The backup should be located on your root filesystem. Thus, if some parameters fail, you can always supply the alternative, original system file on the boot prompt. The following shows two typically entered parameters: * these are the defaults of Solaris < 8 set rlim_fd_max=1024 set rlim_fd_cur=64 rlim_fd_cur 这个参数定义了一个进程可以打开文件描述符的“软”限制,该数目由当前运行的SHELL 决定;ulimit –Sn,还可以通过setrlimit()函数来修改这个参数;不需要超级用户权 限; The predicate rlim_fd_cur <= rlim_fd_max must be fulfilled. rlim_fd_max default 1024, recommended >=4096 这个参数决定了一个进程可以打开文件描述符的“硬”限制;如果想改变该限制,必须 有超级用户的权限; 对于大多数SERVER,不管使用TCP还是UDP进行通讯,最大描述符数是每个用户进程的最 重要的参数;文件描述符决定了同时可以连接的数目; ulimit -Hn You should consider a value of at least 2 * tcp_conn_req_max and you should provide at least 2 * rlim_fd_cur. The predicate rlim_fd_cur <= rlim_fd_max must be fulfilled. (2)进程相关的设置 maxusers default 249 ~= Megs RAM (Ultra-2/2 CPUs/256 MB), min 8, max 2048, no recommendations 最大用户定义系统可以支持的最大用户数,当核心生成的过程中,有一些表的大小就是 由这个参数决定的。这个值的大小在当前SOALRIS版本中决定于内存的兆数目;有一些参 数是由MAXUSER来决定的, _ The maximum number of processes on the system _ The number of quota structures held in the system _ The size of the directory name lookup cache(DNLC) 默认值是系统内存兆数,小于2048; 如果大于1024,必须在/etc/system中指定,如果大于4096,它的值为4096; 当系统出现用户进程生成(FORK)缓慢时,系统报信息; out of processes 默认值比较大有以下情况: 数据库系统使用较大内存,但相对少的进程,减少MAXUSERS的值,可以节省系统内存; PIDMAX 这个参数指定系统最大可能进程ID; 默认值为30000,范围为266到999999;只在启动 时候进行设置; max_nprocs 系统最大进程数,包含系统进程和用户进程;默认值为为10+(16*MAXUSERS) 该值范围为266到MAXPID; 基于Intel i386体系结构的Linux操作系统中,已经提供了这样的多进程运行的支持。 通过合理的选择进程调度算法,可以获得比较好的平均相应时间和较高的系统性能。但 是,美中不足的是,在目前的2.2.x版本的Linux内核中,存在对最大进程数的限制。也 就是说,在目前的Linux系统中,最多只能有4090个用户进程同时存在。对于一般的桌面 应用,这个数目是绰绰有余。但是,对于企业级的服务器应用来说,则是不够的。 设想一个典型的Web服务器软件,它们一般都采用多进程/线程的结构。每当接到一个连 接请求,就产生一个子进程/线程来处理。显然,对于一个重负载的服务器来说,同时有 成千上万个连接是很常见的。而这时,采用kernel 2.2.x的系统就不能胜任了。因此, 可以说正是因为存在这个最大进程数的限制,使得Linux不能胜任企业级服务器操作系统 的工作。事实上,目前这个级别的操作系统一般都是较为成熟,并且没有上述限制的 Solaris、AIX、HP-UX等系统。 maxuprc 一个用户可以生成的最大用户进程数; 默认值为MAX_NPROCS-RESERVED_PROCS STREAM nstrpush 默认值为9,这个参数定义了允许有多少个STREAM 模块加载在系统核心中,我猜想这个 参数是指相对于一个用户或一个进程,通常不用修改该参数; strmsgsz 默认值为 65536, 单个系统调用可以传给一个STREAM设备信息的数据部分的最大字节数 ;任何write(2)超过这个大小限制会被分为多个信息; 范围为:0到262144 bytes 当出现putmsg(2)系统调用返回ERANGE时,需要修改该参数; strctlsz 默认值为 65536, 单个系统调用可以传给一个STREAM设备信息的控制部分的最大字节数 ;范围:0-MAXINT BYTES; General Kernel Variables noexec_user_stack Warning: This option might crash some of your application software, and endanger your system's stability! By default, the Solaris 32 bit application stack memory areas are set with permissions to read, write and execute, as specified in the SPARC and Intel ABI. Though many hacks prefer to modify the program counter saved during a subroutine call, a program snippet in the stack area can be used to gain root access to a system. If the variable is set to a non-zero value, the stack defaults to read and write, but not executable permissions. Most programs, but not all, will function correctly, if the default stack permissions exclude executable rights. Attempts to execute code on the stack will kill the process with a SIGSEGV signal and log a message in kern:notice. Program which rely on an executable stack must use the mprotect(2) function to explicitly mark executable memory areas. Refer to the System Administration Guide for more information on this topic. Admins which don't want the report about executable stack can set the noexec_user_stack_log variable explicitly to 0. Also note that the 64 bit V9 ABI defaults to stacks without execute permissions. TCP/IP参数设置 TCP/IP参数可以由ndd工具来设置, Ndd命令能容易的在不重新配置系统内核和重起系统的情况下,修改核心和TCP/IP的设备 的一些参数。使用如下命令可看到相应的帮助。 #ndd /dev/arp ? ? (read only) arp_cache_report (read only) arp_debug (read and write) arp_cleanup_interval (read and write) # ndd /dev/icmp ? ? (read only) icmp_wroff_extra (read and write) icmp_def_ttl (read and write) icmp_bsd_compat (read and write) icmp_xmit_hiwat (read and write) icmp_xmit_lowat (read and write) icmp_recv_hiwat (read and write) icmp_max_buf (read and write) icmp_status (read only) #ndd /dev/ip ? ? (read only) ip_forwarding (read and write) ip_respond_to_address_mask_broadcast(read and write) ip_respond_to_echo_broadcast (read and write) ip_respond_to_timestamp (read and write) ip_respond_to_timestamp_broadcast(read and write) ip_send_redirects (read and write) ip_forward_directed_broadcasts(read and write) ip_debug (read and write) ip_mrtdebug (read and write) ip_ire_cleanup_interval (read and write) ip_ire_flush_interval (read and write) ip_ire_redirect_interval (read and write) ip_def_ttl (read and write) ip_forward_src_routed (read and write) ip_wroff_extra (read and write) ip_ire_pathmtu_interval (read and write) ip_icmp_return_data_bytes (read and write) ip_send_source_quench (read and write) ip_path_mtu_discovery (read and write) ip_ignore_delete_time (read and write) ip_ignore_redirect (read and write) ip_output_queue (read and write) ip_broadcast_ttl (read and write) ip_icmp_err_interval (read and write) ip_reass_queue_bytes (read and write) ip_strict_dst_multihoming (read and write) ip_addrs_per_if (read and write) ip_ill_status (read only) ip_ipif_status (read only) ip_ire_status (read only) ip_ipc_status (read only) ip_rput_pullups (read and write) ip_enable_group_ifs (read and wri

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部