Archive for linux

ubuntu Apache+mod_wsgi错误提示

ExtractionError: Can't extract file(s) to egg cache The following error occurred while trying to extract file(s) to the Python egg cache: [Errno 13] Permission denied: '/var/www/.python-eggs' The Python egg cache directory is currently set to: /var/www/.python-eggs Perhaps your account does not have write access to this directory? You can change the cache directory by setting the PYTHON_EGG_CACHE environment variable to point to an accessible directory. 解决办法: mkdir /var/www/.python-eggs chmod -R 777 /tmp/.python-eggs 设置PYTHON_EGG_CACHE环境变量 $ SetEnv PYTHON_EGG_CACHE /tmp/aaa/ ##(setenv是在cshell中用的,在bshell中用的是 export 不同的SHELL设置变量的方法很不一致: csh : set、setenv bash : set、export ksh : set、export或直接赋值 vim /etc/profile export PYTHON_EGG_CACHE=/tmp/.python-eggs source /etc/profile export PYTHON_EGG_CACHE=/tmp/.python-eggs env |grep egg chmod -R 777 /tmp/.python-eggs or # vi /root/.bashrc export PYTHON_EGG_CACHE=/tmp/.python-eggs ) 目录权限注意要是apache用户,或者简单点就777
Read more...

Ubuntu安装配置Apache和mod_wsgi

这两个的安装都是直接命令安装, apt-get install libapache2-mod-wsgi 查看mod_wsgi是否安装成功,找文件/usr/lib/apache2/modules/mod_wsgi.so 编辑/etc/apache2/httpd.conf,加入: #  LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so   WSGIScriptAlias / "/data/web/test/mysite/apache/django.wsgi"     <Directory "/data/web/mysite">   Order Deny,Allow   Allow from all   </Directory> #那句不用写,加入以后会提示“已经载入mod_wsgi” [warn] module wsgi_module is already loaded, skipping 以后还要再配置一次,现在做个测试。主要参照官网。 Alias /robots.txt /usr/local/wsgi/static/robots.txt Alias /favicon.ico /usr/local/wsgi/static/favicon.ico AliasMatch ^/([^/]*\.css) /usr/local/wsgi/static/styles/$1 Alias /media/ /usr/local/wsgi/media/ Alias /static/ /usr/local/wsgi/static/ <Directory /usr/local/wsgi/static> Order deny,allow Allow from all </Directory> <Directory /usr/local/wsgi/media> Order deny,allow Allow from all </Directory> WSGIScriptAlias / /usr/local/wsgi/scripts/django.wsgi <Directory /usr/local/wsgi/scripts> Order allow,deny Allow from all </Directory>   /data/web/test/mysite/apache/django.wsgi
# -*- coding: utf-8 -*-
import os
import sys

apache_configuration = os.path.dirname(__file__)
project = os.path.dirname(apache_configuration)
workspace = os.path.dirname(project)
sys.path.append(workspace)

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
apache的日志文件存放在:/var/log/apache2/目录下。
Read more...

Ubuntu安装mod_python错误

安装MySQL-python-1.2.3, 整整一晚上,查了N多网页,安装了N多的包,多不正确 。其中最有问题的是提示的错误在putty中乱码了,艹。 command 'gcc' failed with exit status 1 就看到这一句,Google了一大堆没用的。 最后发现时缺少一个python-dev,apt-get install python-dev就解决问题了。 唉,错误提示也看不出,蒙着头撞了一晚上。躺被窝里哭吧
Read more...

vsftpd配置使用参考小手册

ftp基本知识vsftpd的名字代表“very secure FTP daemon”,它的开发者Chris Evans考虑的首要问题就是数据传输的安全性。所以,在上述所有的特性当中,较高的安全性是处于最重要的地位。vsftpd比其他诸如Wu-ftpd和 Proftpd之类的FTP服务器更加优越。另外,在速度方面,据统计,使用ASCⅡ模式下载数据的速度是Wu-ftpd的两倍。在Linux2.4系列版本的内核下,千兆以太网的下载速度可以达到86MB/S;在稳定性方面,根据ftp.redhat.com的数据,它可以支持15000个并发用户,所以其总体性能也是非常高的,vsftpd在安全性、高性能及稳定性三个方面有上佳的表现。它提供的主要功能包括虚拟IP设置、虚拟用户、Standalone、inetd操作模式、强大的单用户设置能力及带宽限流等。在安全方面,它从原理上修补了大多数Wu-FTP、ProFTP,乃至BSD-FTP的安装缺陷,使用安全编码技术解决了缓冲溢出问题,并能有效避免“globbing”类型的拒绝服务攻击。目前正在使用vsftpd的官方网站有Red Hat、SuSE、Debian、GNU、GNOME、KDE、Gimp和OpenBSD等。 linux里有三个主要的FTP服务器,分别是VsFTPd、ProFTPd和Pure-FTPd,其中VsFTPd以安全和性能著称,ProFTPd则以众多的特性取胜,Pure-FTPd的性能和特性介乎两者中间 论坛很多都是介绍怎么配置ftp的,这里就只说下关于ftp的一点基本知识 ftp使用者的分类,根据服务器对象的不同将ftp使用者分为3类 1:本地用户(real用户) 2:虚拟用户(guest用户) 3:匿名用户 本地用户:如果用户在远程ftp服务器上拥有服务器的本地帐号,本地用户可以通过输入自己的帐号和口令来进行授权登陆 虚拟用户:如果用户在远程ftp服务器上拥有帐号,且此帐号只能用于文件的传输服务,则称此用户为虚拟用户或guest用户(实际多个虚拟用户只是本地一个用户的影射) 匿名用户:如果用户在远程ftp服务器上没有帐号,则称此用户为匿名用户 ftp协议中定义的典型消息,用来判断问题 125 :数据连接打开,传输开始 200 :命令ok 226 :数据传输完毕 331 :用户名OK,需要输入密码 425 :不能打开数据连接 426 :数据连接被关闭,传输被中断 452 :错误写文件 500 :语法错误,不可识别的命令 530 :未登入。 基本命令: 这里说下建立ftp可能会涉及到的一些命令 ls (显示目录列表,如果太多,可以使用分页命令:ls /etc | more ,按q结束) touch (建立文件,注意是文件,不是目录) cp (复制文件或目录,如:cp /etc/vsftpd.conf /home/xxx 复制vsftpd.conf到/home/xxx目录下) mv (移动文件或目录或改名 如:mv /home/xxx.conf /etc/ 移动/home/xxx.conf到/etc下) rm (删除文件或目录 如果删除目录需要加 -R 参数) cd (切换路径,可以用tab键补全路径 cd ..代表退到上个路径) mkdir (建立目录) chown (改变目录或文件所有者,如 sudo chown root.root /etc/vsftpd.conf 所有者和组都为root) chmod (改变目录或文件权限,配合ls -l使用) (如,chmod ugo+rwx /home/ftp/xxx u:文件或目录所有者的权限 g:组的权限 o:其他用户权限 +添加权限 -减少权限 r w x (读,写,执行) ) ls -l (查看文件或目录权限等信息 ftp的数据传输模式 可能很多人都感到pasv_enable这个参数很奇怪,只是默认是打开的,所以很多人不关心它 这里就要说下ftp的传输模式,分为2种模式 1:主动模式(Active FTP) 2:被动模式(Passive FTP) 主动模式:简单说就是客户提交请求到服务器21端口,然后监听,服务器用默认20端口连接客户监听的端口,进 行数据传输 就是说是服务器向客户发起一个用于传输的连接。 被动模式:客户提交请求到服务器21端口,然后开启x端口,再向服务器发送PASV命令,告诉服务器自己处于被动模式,服务器收到命令,就会开放一个p端口监听,然后通知客户自己数据端口p,客户收到命令,又会开启一个端口v进行连接服务器的p端口,然后两个v-p端口进行数据传输,就是说数据传输是客户发起的,相对服务器就是被动的。 (被动模式通常用在处于防火墙之后的FTP客户端访问外界FTP服务器的情况,因为防火墙通常配置是不允许外界访问防火墙之后的机器,只允许由防火墙之后的主机发起的连接请求) vsftpd主配置文件常用参数说明: listen=<YES/NO> :设置为YES时vsftpd以独立运行方式启动,设置为NO时以xinetd方式启动(xinetd是管理守护进程的,将服务集中管理,可以减少大量服务的资源消耗) listen_port=<port> :设置控制连接的监听端口号,默认为21 listen_address=<ip address> :将在绑定到指定IP地址运行,适合多网卡 connect_from_port_20=<YES/NO> :若为YES,则强迫FTP-DATA的数据传送使用port 20,默认YES pasv_enable=<YES/NO> :是否使用被动模式的数据连接,如果客户机在防火墙后,请开启为YES pasv_min_port=<n> pasv_max_port=<m> :设置被动模式后的数据连接端口范围在n和m之间,建议为50000-60000端口 message_file=<filename> :设置使用者进入某个目录时显示的文件内容,默认为 .message dirmessage_enable=<YES/NO> :设置使用者进入某个目录时是否显示由message_file指定的文件内容 ftpd_banner=<message> :设置用户连接服务器后的显示信息,就是欢迎信息 banner_file=<filename> :设置用户连接服务器后的显示信息存放在指定的filename文件中 connect_timeout=<n> :如果客户机连接服务器超过N秒,则强制断线,默认60 accept_timeout=<n> :当使用者以被动模式进行数据传输时,服务器发出passive port指令等待客户机超过N秒,则强制断线,默认60 accept_connection_timeout=<n> :设置空闲的数据连接在N秒后中断,默认120 data_connection_timeout=<n> : 设置空闲的用户会话在N秒后中断,默认300 max_client=<n> : 在独立启动时限制服务器的连接数,0表示无限制 max_per_ip=<n> :在独立启动时限制客户机每IP的连接数,0表示无限制(不知道是否跟多线程下载有没干系) local_enable=<YES/NO> :设置是否支持本地用户帐号访问 guest_enable=<YES/NO> :设置是否支持虚拟用户帐号访问 write_enable=<YES/NO> :是否开放本地用户的写权限 local_umask=<nnn> :设置本地用户长传的文件的生成掩码,默认为077 local_max_rate<n> :设置本地用户最大的传输速率,单位为bytes/sec,值为0表示不限制 local_root=<file> :设置本地用户登陆后的目录,默认为本地用户的主目录 chroot_local_user=<YES/NO> :当为YES时,所有本地用户可以执行chroot chroot_list_enable=<YES/NO> chroot_list_file=<filename> :当chroot_local_user=NO 且 chroot_list_enable=YES时,只有filename文件指定的用户可以执行chroot anonymous_enable=<YES/NO> :设置是否支持匿名用户访问 anon_max_rate=<n> :设置匿名用户的最大传输速率,单位为B/s,值为0表示不限制 anon_world_readable_only=<YES/NO> 是否开放匿名用户的浏览权限 anon_upload_enable=<YES/NO> 设置是否允许匿名用户上传 anon_mkdir_write_enable=<YES/NO> :设置是否允许匿名用户创建目录 anon_other_write_enable=<YES/NO> :设置是否允许匿名用户其他的写权限(注意,这个在安全上比较重要,一般不建议开,不过关闭会不支持续传) anon_umask=<nnn> :设置匿名用户上传的文件的生成掩码,默认为077 anon_root=<file> :设置匿名用户登陆后的目录 no_anon_password=<YES/NO> :设置匿名用户登陆是否询问密码 ascii_download_enable=<YES/NO> ascii_upload_enable=<YES/NO> :一般为NO,启动这个可能会导致DoS的攻击 hide_ids=<YES/NO> :如果启动,所有档案拥有者与组群都为FTP,也是就ls -l之类指令看到的拥有者和组均为FTP ls_recurse_enable=<YES/NO> :启动此功能,则允许登录者使用ls -R这个指令,默认为NO tcp_wrappers=<YES/NO> :设置服务器是否支持tcp_wrappers(就是支持/etc/hosts.allow和/etc/hosts.deny这两个文件) pam_service_name=vsftpd :设置PAM模块的名称 xferlog_enable=<YES/NO> :是否启动FTP日志记录 xferlog_file=/var/log/vsftpd.log :设置日志记录文件的名称 xferlog_std_format=<YES/NO> :当设置为YES时,将使用与wu-ftpd相同的日志记录格式 问题篇------------------------------- 1.匿名用户问题 下面说下匿名用户上传的问题 要使匿名用户可以上传,需要激活两个选项, 1.anon_upload_enable=YES 2.anon_mkdir_write_enable=YES 然后打开写权限:write_enable=YES 同时还要anon_world_readable_only=NO ,开放匿名用户对整个服务器的浏览权限。 需要注意的是匿名用户对文件权限而言,属于其他用户,所以一定要把允许匿名用户上传目录的权限修改为其他用户可写,如果配置anon_root=/home/ftp ( 匿名的根目录为/home/ftp) 那么/home/ftp的其他用户权限就不能有写权限,如果根目录所有者是ftp的话,所有者的权限也不能有w,否则出同样的错误 可以在建立个文件/home/ftp/public目录,打开public其他用户的写权限,就可以个public上传了(匿名用户根目录是不可以有写权限的),如果只让下载,就可以再建立目录 /home/ftp/down 然后设置其他用户没有写权限就可以了 需要注意的是anon_other_write_enable这个参数,YES会开放文件更名,删除文件等权限,官方是不建议开启的,但关闭会无法进行续传, 这就需要管理员作出权衡了 (这里解释下续传的问题,就我自己的理解续传是指:在已经上传的文件目录中继续添加文件或目录 如果继续使用默认的022文件掩码,就会产生不能续传问题,因为022不允许写入, 当然你可以打开anon_other_write_enable来解决,不过就会产生混乱,安全问题 这时候文件掩码就很重要了,下边会介绍到文件掩码,你可以根据自己的环境设置 ) 2.文件掩码问题 在配置文件中有umask=xxx的参数,这个参数挺让新手费解的,其实它的意思简单 :建立的文件不能拥有的权限 相信大家都见过,sudo chmod 777 /xxx/xxx 其实umask的数值和那个777是一样的系统,8进值表示的权限 第一个是目录所有者权限,第二个是组的权限,第三个是其他用户权限。 有关umask的有这几个参数: local_umask,anon_umask. 分别代表本地用户,和匿名用户的文件掩码。 可以根据不同需要设置用户创建文件的权限。 umask还是比较重要的,设置好的话,可以很省事,而且安全 下边是关于8近制权限的列表: 0:没有权限 1:允许执行 2:允许写入 3:允许执行和写入 4:允许读取 5:允许执行和读取 6:允许写入和读取 7:允许执行,写入和读取 3.虚拟用户问题 首先要了解,虚拟用户和本地用户是不可以同时存在的 关于虚拟用户的设置论坛里有很多,我只实验了一种可以完整配置成功 特别提醒,必须把local_enable=YES打开才能允许虚拟用户登录 这里要说的是关于虚拟用户权限的问题 虚拟用户本质上是本地用户的一个影射,默认的文件掩码是077,这是有原因的 对与虚拟用户这个团体来说用到的权限只跟文件的所有者的权限有关,就是第一组的rwx 虚拟用户要访问另一个虚拟用户的文件,除了需要可以浏览到对方文件外,就需要相应的权限了 能看到文件,就需要有r权限 如果要进入目录,就需要x权限 要想写入目录,就需要w权限 另外提下,在每个虚拟用户各自的配置文件中,更改anon_umask可以改变每个用户上传的文件掩码,但必须在主配置文件中注释掉local_umask。 4.本地用户的访问控制 论坛的置顶贴中有一个简单的ftp,是一个本地用户的配置,实际中可能不只需要一个 这里就说下本地用户的访问控制,基本有两种方法 都是通过修改主配置文件: 1:指定的本地用户不能访问,其他可以访问 userlist_enable=YES userlist_deny=YES userlist_file=/etc/vsftpd.user_list (这个文件需要自己建立,并添加不能访问的用户名) 2:指定的本地用户可以访问,其他不可以(这个比较常用) userlist_enable=YES userlist_deny=NO userlist_file=/etc/vsftpd.user_list(同上,添加可以访问的用户名) 关于chroot的配置1:如果想把所有用户都限制在主目录内活动可以使用下边配置 chroot_local_user=YES chroot_list_enable=YES(这行可以没有, 也可以有) chroot_list_file=/etc/vsftpd.chroot_list 那么, 凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户 即, 可以浏览其主目录的上级目录. 2: 如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置, 然后在 文件vsftpd.chroot_list中不添加该用户即可(此时, 在该文件中的用户都是可以浏览其主目录之外的目录的). 或者, 设置如下 chroot_local_user=NO chroot_list_enable=YES(这行必须要有, 否则文件vsftpd.chroot_list不会起作用) chroot_list_file=/etc/vsftpd.chroot_list 然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件vsftpd.chroot_list(此时, 在该文件中的用户都是不可以浏览其主目录之外的目录的) 最后要说下tcp_wrappers参数,这个参数是为独立启动vsftpd提供基于主机的访问控制的配置,可以限制特定主机访问,又可以对不同主机或 网络实施不同的配置(可以理解为不同的待遇) tcp_wrappers使用/etc/hosts.allow和/etc/hosts.deny两个配置文件实现访问控制,hosts.allow是一个许可表,hosts.deny是一个拒绝表 在hosts.allow中也可以使用DENY,所以通常可以只使用hosts.allow来实现访问控制。 对vsftpd而言,书写hosts.allow有三种语法形式 1: vsftpd:主机表 (设置允许访问的主机表) 2: vsftpd:主机表:DENY (设置拒绝访问的主机表) 3: vsftpd:主机表:setenv VSFTPD_LOAD_CONF 配置文件名 (对指定的主机使用另外的配置) setenv VSFTPD_LOAD_CONF的值为指定的配置文件名,意图是让vsftpd守护进程读取新的配置项来覆盖主配置文件中的项,实现特定待遇 这有一个小例子来说明tcp_wrappers 功能: 》1.拒绝192.168.2.0/24访问 》2.对192.168.1.0/24内的所有主机不作连接限制和最大传输速率限制 》3.对其他主机的访问限制为:每ip连接数为1,最大传输速率为10kb/s (在主配置文件中设置就好了) 首先保证设定tcp_wrappers=YES 然后编辑 sudo vi /etc/hosts.allow 输入 vsftpd:192.168.2.0/24: DENY (阻止192.168.2.0子网的访问) vsftpd:192.168.1.0/24 (允许192.168.1.0子网的访问) vsftpd:192.168.1.0/24: setenv VSFTPD_LOAD_CONF /etc/xxx.conf (对192.168.1.0/24指定专有配置文件xxx.conf,xxx可以自己指定文件名,需要建立) 然后建立xxx.conf文件,并编辑 (建立文件可以用sudo touch /etc/xxx.conf建立) local_max_rate=0 anon_max_rate=0 max_per_ip=0 !
Read more...

Ubuntu下安装FTP服务-VSFTPD

安装命令: apt-get install vsftpd 环境:Ubuntu 10.04  vsftpd_2.2.2-3ubuntu6.3_i386.deb  开启关闭服务的命令: sudo /etc/init.d/vsftpd start sudo /etc/init.d/vsftpd stop 查看ftp的根目录可以用这个命令 finger ftp 重启ftp:sudo /etc/init.d/vsftpd restart 查看vsftpd是否启动了可以用 pgrep vsftpd 或者列出所有进程 ps -d 配置: /etc/vsftpd.conf local_root=<file> :设置本地用户登陆后的目录,默认为本地用户的主目录 local_enable=<YES/NO> :设置是否支持本地用户帐号访问 /etc/ftpusers文件 该文件内的用户一律禁止ftp连接,默认列表包括了root, daemon, nobody等。需要禁止某个用户,添加进来便是。 在这里我的配置,允许本地用户访问,root默认禁止登陆,我把root去掉了。ftp不会长时间开,端口也关掉。 local_root=/data #设置修改默认路径,默认为用户根目录。 这里有个问题,文件权限 上传是需要有写权限的,系统写权限大于配置文件的写权限,给文件夹设置你那个用户可写后,在配置文件中在允许写就可以了 chmod 777 /data chroot_local_user=<YES/NO> :当为YES时,所有本地用户可以执行chroot,控制用户访问上级目录。
Read more...

ubuntu 10.04挂载新硬盘,分区

先简略记载步骤:
  • 用fdisk –l命令查看
  • fdisk /dev/xvdb #进行磁盘分区;
  • command(M for help):n#新建分区
  • p#主分区
  • 1#/dev/xvdb1
  • 1#开始硬盘柱面
  • 1000#结束硬盘柱面
  • command(M for help):w#保存退出
  • mkfs.ext4 -E lazy_itable_init=1 /dev/xvb1 #将 xvdb1 分区格式化为 ext4 文件系统;
  • mkdir /data #创建目录;
  • echo "/dev/xvdb1 /data ext4 defaults,noatime,nodiratime 0 0 " >> /etc/fstab #修改系统配置文件;
  • mount -a #挂载磁盘 ;
  • ------------------------------------------------------ 第一次挂载新硬盘分区,虽然错了可以重来,但还是非常谨慎。查了资料,记录: df -h #查看硬盘分区空间的使用情况。 分区时的命令:
  • Command (m for help):   
  • 这里按m获得帮助   
  • a   toggle a bootable flag   将分区设置为启动区   
  • b   edit bsd disklabel    编辑bsd的disklabel   
  • c   toggle the dos compatibility flag  设置该分区为dos分区   
  • d   delete a partition 删除分区   
  • l   list known partition types  列出已知的分区类型   
  • m   print this menu  打印帮助列表   
  • n   add a new partition 创建新分区   
  • o   create a new empty DOS partition table   
  • p   print the partition table查看分区信息   
  • q   quit without saving changes 退出不保存   
  • s   create a new empty Sun disklabel   
  • t   change a partition's system id改变分区类型   
  • u   change display/entry units   
  • v   verify the partition table   
  • w   write table to disk and exit 保存退出   
  • x   extra functionality (experts only)  
  • /etc/fstab 文件的配置内容很多 ,在百度文库找到资料下载。搜索了个别参数的意义:(摘) 在 Linux 下面挂载文件系统的时候,加上 noatime 参数能大幅提高文件系统性能。不知道这个结论来自哪里,其实不需要像设置 noatime 那样设置 nodiratime,最可靠的资料应该是源代码,VPSee 查了一下源代码,发现在内核源代码 linux-2.6.33/fs/inode.c 文件里有一个 touch_atime 函数,可以看出如果 inode 的标记位是 NOATIME 的话就直接返回了,根本就走不到 NODIRATIME 那里去,所以只设置 noatime 就可以了,不必再设置 nodiratime. void touch_atime(struct vfsmount *mnt, struct dentry *dentry) 1405{ 1406        struct inode *inode = dentry->d_inode; 1407        struct timespec now; 1408 1409        if (inode->i_flags & S_NOATIME) 1410                return; 1411        if (IS_NOATIME(inode)) 1412                return; 1413        if ((inode->i_sb->s_flags & MS_NODIRATIME) && S_ISDIR(inode->i_mode)) 1414                return; 1415 1416        if (mnt->mnt_flags & MNT_NOATIME) 1417                return; 1418        if ((mnt->mnt_flags & MNT_NODIRATIME) && S_ISDIR(inode->i_mode)) 1419                return; ... 1435}
    Read more...

    linux下C语言函数执行时间统计

    摘自C语言论坛。 写好程序,用gcc编译,带上-pg参数,然后运行以后分析gmon.out文件:
    starwing@starwing-desktop:~/Work/prj$ cat test.c
    #include 
    #include 
    
    int func(int i)
    {
        return i <= 2 ? 1 : func(i - 1) + func(i - 2);
    }
    
    int main(void)
    {
    
        printf("zzz: %d\n", func(20));
        return 0;
    }
    /* cc: cmd='' */
    starwing@starwing-desktop:~/Work/prj$ gcc -o test -pg test.c
    starwing@starwing-desktop:~/Work/prj$ ./test
    zzz: 6765
    starwing@starwing-desktop:~/Work/prj$ gprof ./test ./gmon.out
    
    另一个C语言:
    /**
    *      file_name:      time_lost.c
    *    description:
    *
    *        version:      1.0
    *        created:      3:32 2009-7-21
    *       revision:      none
    *       compiler:      gcc 4.3.3
    *
    *         author:      prankmoon@gmail.com
    *        company:
    */
    
    #include 
    #include 
    
    /* just for test */
    int foo(int n)
    {
        int i;
        int sum = 0;
        for (i=0; i
                  
    Read more...

    优化linux启动服务(sysv-rc-conf)

    安装sysv-rc-conf,禁止掉那些你不需要启动的服务。 sudo apt-get install sysv-rc-conf sudo sysv-rc-conf 以下是一些服务选项参考,可参考 1. acpi-support - 你最好使其在S运行等级处于“X”状态。 2. acpid - acpi守护程序.这两个用于电源管理,对于笔记本和台式电脑很重要,所以让它们开启。 3. alsa - 如果你使用alsa声音子系统,是的,开启它。 4. alsa-utils -在我系统里,此服务取代了alsa,所以我关闭了alsa并在S运行等级将此服务开启。**注意**,我所说的“关闭”是指在所有运行等级里面去除所有 “X”。如果在你系统里没有它,没问题。让我们继续。 5. anacron - 一个cron子系统,当时间到达时用于执行任何没有被执行的cron作业。当某种cron 作业时间准备好时,很可能你或许已经关闭了你的计算机。打个比方,updatedb被计划在每天2点执行,但是在那个时候,你的计算机是关闭的,然后如果 ananron服务如果是开启的话,它将设法抓起那个updatedb cron… 我将它关闭是因为我不经常关闭我的笔记本,但是否开启此服务完全取决于你。 6. apmd - 这是十分困惑我的一个服务。我已经开启了acpid服务,那同时开启apmd有啥好处呢?如果你的计算机不是那么老,甚至不能支持acpi,然后你可以设法关闭它。无论如何,我是关闭它的。 7. atd - 就像cron,一个作业调度程序。我把它关了 8. binfmt-support - 核心支持其他二进制的文件格式。我让它开着 9. bluez-utiles - 我把它关了因为我没有任何蓝牙设备 10. bootlogd - 开启它 11. cron – 开启它 12. cupsys – 管理打印机的子系统。我没有打印机所以我关闭它了,如果你有打印机,开启他。 13. dbus – 消息总线系统(message bus system)。非常重要,开启它。 14. dns-clean – 当使用拨号连接,主要用于清除dns信息。我不用拨号,所以我关闭了它。 15. evms – 企业卷管理系统(Enterprise Volumn Management system). 我关闭了它。 16. fetchmail – 一个邮件接受守护进程,我关闭了它。 17. gdm – gnome桌面管理器。无论如何我关闭它了,因为我将系统用终端引导。如果你想直接引导到图形用户界面,这取决于你。 18. gdomap – 事实上我也不知道为什么此服务必需开启。我没有在其他系统见过这个守护程序,所以我将其关闭并且我没觉得我失去了什么。开启它对笔记本或者台式机有任何好处吗? 19. gpm – 终端鼠标支持。如果你觉得你在终端使用鼠标更好,那么在运行等级 1 和2 开启它。那正是你所需要的。 20. halt - 别更改它。 21. hdparm – 调整硬盘的脚本。我在运行等级 2,3,4,5去除了它但是在S 运行等级添加了它。我觉得早点打开DMA,32bit I/O等等将对其余过程有益。我自己也将原来的脚本精简了一下。如果我知道我正做什么,我觉得做过多的检查没用。相应配置文件是 /etc/hdparm.conf。 22. hibernate – 如果你的系统支持休眠,把它打开,否则它对你没用。 23. hotkey-setup – 此守护进程为你的笔记本建立一些热键映射。支持的制造商包括: HP, Acer, ASUS, Sony, Dell, 和IBM。如果你有那些品牌的笔记本,你可以打开它,否则它或许对你没有任何好处。 24. hotplug and hotplug-net #激活热插拔系统是费时的。我将考虑关掉它们。我在的/etc/network/inte***ces文件作了很多修改,并将其设置为自动运行,而不是在 热插拔进程期间映射我的无线网卡。所以我可以将它们关掉。我已经测试过了,甚至我将它们关闭,ubuntu仍旧可以检测到我的usb驱动器,我的数码相 机,等等。所以我认为关掉它们是很安全的**注意**如果在关闭热插拔服务以后发现你的声卡部工作了,你可以将服务打开,或者编辑 /etc/modules文件并添加声卡驱动模块。经测试,后者比较快。 25. hplip – HP打印机和图形子系统,我将其关闭了。 26. ifrename – 网络接口重命名(network inte***ce rename)脚本。听上去很酷但是我把它关掉了。主要用于管理多网络接口名称。虽然我有无线网卡和以太网卡,两者被内核标识为eth0和ath0,所以此服务对我不是很有用。 27. ifupdown and ifupdown-clean – 打开它,它们是开机时网络及口激活脚本。 28. inetd or inetd.real – 查看文件/etc/inetd.conf 注释掉所有你不需要的服务。如果该文件不包含任何服务,那关闭它是很安全的。 29. klogd – 打开它。 30. linux-restricted-modules-common – 你应该去查看下是否你的系统装载有任何受限制的模块。既然我需要madwifi ath_pci 模块,所以我将其开启。受限制的模块可以从/lib/linux-restricted-modules查看到。如果你发现你没有使用任何受限制的模块, 那关掉这个服务没事。 31. lvm – 我没有使用逻辑卷所以我将此服务关闭。让它开启如果你 *确实* 有lvm(lvm是逻辑卷管理器在此不再扩充). 32. makedev – 打开它。 33. mdamd – Raid管理工具。不使用Raid所以我将此服务关闭。 34. module-init-tools – 从/etc/modules加载扩展模块。你可以研究/etc/modules文件查看是否有一些你不需要的模块。通常我们将此服务开启。 35. networking – 在启动期间通过扫描/etc/network/inte***ces文件增加网络接口和配置dns信息。让它开着。 36. ntpdate – 通过ubuntu时间服务器同步时间。在开机的时候我不需要它,故我关掉了此服务。 37. nvidia-kernel – 我自己编译了nvidia驱动,所以此服务对我没用。如果你从受限制模块中使用nvidia驱动,那打开此服务。 38. pcmcia – 激活pcmica设备。我将此服务打开在S运行等级而不是分别在2,3,4,5运行等级打开此服务,因为我觉得起先让硬件设备准备更好。如果你在使用没有 pcmica卡的台式机的话,请关闭此服务。 39. portmap – 管理像nis,nfs等等之类服务的守护程序。如果你的笔记本或台式机是纯粹的客户端,那么关闭此服务。 40. powernowd – 管理CPU频率的客户端程序。主要用于支持CPU speed stepping技术的笔记本。通常如果你在配置一台笔记本,你应该开启此服务。如果是台式机,那此服务应该没有用。 41. ppp and ppp-dns - 对我没用,我不使用拨号。 42. readahead - **感谢 mr_pouit!** readahead似乎是一种“预加载程序”。在开机时它将一些库文件加载到内存,以便一些程序启动的更快。但是它给启动时间增加了3-4秒。所以,你可 以留着它…或者不。**更新**,经我测试我觉得加载程序没有什么不同。所以我决定关闭此服务。如果你有打开此服务的理由,那就打开它。 43. reboot - 别更改它。 44. resolvconf – 按照你的网络状态自动配置DSN信息,我将它打开着。 45. rmnologin – 如果发现nologin,那么去除它。此情况不会在笔记本上面发生,所以我摆脱它。 46. rsync – rsync守护程序. 我不打算在我的笔记本上使用rsync协议,所以我将其关闭 47. sendsigs – 在重启和关机期间发送信号。顺其自然。 48. single – 激活单用户模式。顺其自然。 49. ssh – ssh守护程序。 我需要ssh,所以我将此服务打开。 50. stop-bootlogd – 从2,3,4,5运行等级停止bootlogd。顺其自然。 51. sudo – 检查sudo 状态。我没在一台笔记本或者台式机客户端上看到任何使用sudo的好处,因此我关闭了它。 52. sysklogd - 顺其自然。 53. udev and udev-mab – 用户空间dev文件系统(userspace dev filesystem)。好东西,我将它们打开。 54. umountfs - 顺其自然。 55. urandom – 随机数生成器。可能没什么用处,但是我留着它。 56. usplash - 嗯,如果你想看到漂亮的开机画面,顺其自然。无论如何沃关闭此服务了。如果你想关闭它,你也可以编辑/boot/grub/menu.lst文件注释掉splashimage行,除去开机 splash核心选项。 57. vbesave – 显卡BIOS配置工具。它能保存你显卡的状态。我将其开启。 58. xorg-common – 设置X服务ICE socket。我将其从在S运行等级开启移动到2,3,4,5,运行等级。如果我引导到单用户模式,那我不需要此服务。在最初引导期间这种方法将不占用时间。 59. adjtimex – 这也是调整核心hw时钟的工具。通常你不会在开机列表中看见它。在非常少有的情况如果你确实在开机进程中看见它了,事出有因,因此最好顺其自然。在我的情况里,它是关闭的。 60. dirmngr – 证书列表管理工具(certification lists management tool)。和gnupg一起工作。你必须看看你是否需要它。在我的情况里,我是关掉它的。 61. hwtools – 一个优化irqs的工具。不确定打开它的好处。在我的情况里,我是关掉它的。 62. libpam-devperm - 在系统崩溃之后用于修理设备文件许可的一个守护程序。听起来不错,因此我打开它了。 63. lm-sensors – 如果你的主板内建一些传感芯片,通过用户空间(userspace)查看hw状态可能是有帮助的。我运行了它,但是它提示“没有发现传感器”,因此我关闭 了此服务。64. mdadm-raid – 作用和mdadm服务相同。用来管RAID设备。如果你没有此类设备,那尽管关掉它好了。 65. screen-cleanup – 一个用来清除开机屏幕的脚本。嗯,是否关闭它有你决定。在我的情况里,我打开它了。 66.xinetd – 用来管理其他守护进程的一个inetd超级守护程序。在我的系统里,xinetd管理chargen, daytime, echo和time (在 /etc/xinetd.d 目录找到的),我不关系任何一个,因此我关掉了此服务。如果在xinetd下你确实有一些重要的服务,那打开它。
    Read more...

    Linux下windows应用程序的安装使用

    许许多多的优秀的windows软件不支持Linux下的运行。 很多时候,在使用Linux系统时我们要用的这些应用程序,在Linux下要怎样运行呢?下面推荐几个工具: 1.Linux下安装的vmware 先想到的就是他,因为在windows系统下虚拟机我用 的vmware最多,便搜索。 有找到,但是不多,看来用VMware的不多额。 2.知名的wine 官方网站: http://www.winehq.org/ wine可能是大多数人的选择吧 在搜索过程中,发现了一个CrossOver,他能安装许多windows办公程序,像IE、office、Photoshop、Dreamweaver、Flash 、Fireworks等等。在wine官网上我看到CrossOver是wine的一个polished version,明白了WHY。  
    Read more...

    Previous Page 1 2 3 4 5 6 7