抓哪個進程干壞事前要先停掉syslog
          service syslog stop

          打開block dump:
          echo 1 > /proc/sys/vm/block_dump

          統計:
          dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head
          1423 kjournald
          1075 pdflush
          209 indexer
          3 cronolog
          1 rnald
          1 mysqld

          不要忘記在抓完之 后關掉block_dump和啟動syslog:
          echo 0 > /proc/sys/vm/block_dump
          service syslog start


          加個有人寫了一個perl腳本來處理輸出,能得到更直觀的結果:

          參考:http://www.xaprb.com/blog/2009/08/23/how-to-find-per-process-io-statistics-on-linux/

          wget http://aspersa.googlecode.com/svn/trunk/iodump

          echo 1 > /proc/sys/vm/block_dump

          while true; do sleep 1; dmesg -c; done | perl iodump

          root@kanga:~# while true; do sleep 1; dmesg -c; done | perl iodump
          ^C# Caught SIGINT.
          TASK PID TOTAL READ WRITE DIRTY DEVICES
          firefox 4450 4538 251 4287 0 sda4, sda3
          kjournald 2100 551 0 551 0 sda4
          firefox 28452 185 185 0 0 sda4
          kjournald 782 59 0 59 0 sda3
          pdflush 31 30 0 30 0 sda4, sda3
          syslogd 2485 2 0 2 0 sda3
          firefox 28414 2 2 0 0 sda4, sda3
          firefox 28413 1 1 0 0 sda4
          firefox 28410 1 1 0 0 sda4
          firefox 28307 1 1 0 0 sda4
          firefox 28451 1 1 0 0 sda4
          posted @ 2012-07-18 10:17 小馬歌 閱讀(737) | 評論 (0)編輯 收藏
           

          下面性能測試對比來自LevelDB官方,由 NoSQLFan 進行翻譯整理。從結果上看,這不像某些田忌賽馬式的性能對比,總體來說還是比較客觀全面。通過多種場景下的不同性能測試結果的對比,我們也能對這三個數據庫分別擅長和適用的場合有所了解。同時對其性能調優的方法理解也有一定的幫助。

          原文鏈接:leveldb.googlecode.com

          下面是對LevelDB、TreeDBSQLite3 這幾個數據庫的性能對比測試,分別使用了LevelDB (revision 39) SQLite3 (version 3.7.6.3) 及 Kyoto Cabinet’s (version 1.2.67)這三個版本的數據庫。

          測試機器配置:six-core Intel(R) Xeon(R) CPU X5650 @ 2.67GHz, with 12288 KB of total L3 cache and 12 GB of DDR3 RAM at 1333 MHz

          文件系統:測試腳本分別跑在兩臺機器上,其文件系統一臺為ext3(磁盤為 SATA Hitachi HDS721050CLA362),一臺為ext4(配備磁盤 SATA Samsung HD502HJ)

          性能測試源碼:

          基本測試

          基本測試的條件如下:

          • 每個數據庫使用4GB內存
          • 數據庫都處于異步寫模式(LevelDB’s sync option, TreeDB’s OAUTOSYNC option, SQLite3’s synchronous options 都關閉),也就是說寫操作不用等數據真正寫到磁盤上才返回。
          • Key 的長度為16字節
          • Value 的長度為100字節 (這個長度才能讓數據庫的壓縮算法能夠起作用,將數據壓縮至50%大小左右)
          • 順序讀寫時Key值遞增變化
          • 隨機讀時生成隨機的Key值

          測試結果:



          結果顯示,在順序讀寫和隨機寫上,LevelDB 在性能上都遙遙領先,在隨機讀上面 Kyoto Cabinet 引擎稍快一些。

          在幾種不同策略下進行寫操作測試

          A. Values 為長數據(數據長度為100,000字節)

          LevelDB在Value較長時性能比較低,這是由于LevelDB對每一次寫操作都會至少進行兩次寫動作,一次是寫數據文件,另一次是寫日志文件。這里慢的主要原因是LevelDB在進行這些操作時對值進行了過多的Copy。

          B. 批量寫操作

          一次寫操作寫1000條100字節的數據,由于TreeDB不支持批量寫入,故未對其進行對比測試

          上面結果是由于LevelDB數據的組織方式,導致順序寫和隨機寫在性能上都變化不大。

          C. 同步進行寫操作

          • 對 LevelDB, 設置 WriteOptions.sync = true.
          • 對 TreeDB, 將 TreeDB’s OAUTOSYNC 選項開啟.
          • 對 SQLite3, 設置 “PRAGMA synchronous = FULL”.

          如果你看一下ext4文件系統下的測試數據,你會發現ext3和ext4在表現上非常不同。

          D. 無壓縮的寫操作

          LevelDB 和 TreeDB 都支持相應的數據壓縮算法(LevelDB 使用的是 Snappy , TreeDB 使用的是 LZO),由于SQLite不支持壓縮,所以這里的測試數據只是從上面的基本測試結果copy過來的。

          LevelDB開啟壓縮比不開啟壓縮效率更高,而TreeDB則相反,這可能是由于TreeDB采用的壓縮算法(LZO)與LevelDB采用的壓縮算法(Snappy)相比計算代價更高。

          E. 使用更大內存

          將每個獨立庫的內存增大到128MB,對LevelDB來說,其中120MB用來做 write buffer,另外8MB用來做 cache(原來是2MB的 write buffer 和2MB的cache),對SQLite來說,我們不改變其page size,還是保持為1kb,但是我們增大其page數量從4k增加到128k,對TreeDB來說,我們同樣不改變其page大小,也只是增大其cache,從4MB增大到128MB。

          SQLite 在采用了大內存后性能變化并不大,而 LevelDB 和 TreeDB 的隨機寫性能卻有顯著提高。LevelDB 在增大內存后性能提升的原因是其write buffer 更大,從而減少了創建的sorted file的次數。減少了磁盤IO。而 TreeDB 的性能提升原因是由于其數據庫的更大部分被映射到內存中了。

          在幾種不同策略下進行讀操作測試

          A. 大的Cache空間

          我們分配128MB給每個數據庫,對LevelDB來說,我們分配8MB給 write buffer,120MB給cache,對另外兩個數據庫,由于它們不支持區分 write buffer 和cache,所以統一將 cache size設置成128MB。

          從結果可以看到,增大Cache在數據庫讀性能上都有所提升,其中最為顯著的是TreeDB,其隨機讀性能大幅提升。主要是由于有足夠的內存使得其所有讀操作都幾乎是在內存中進行。

          B. 無壓縮的讀操作

          下面結果是我們對預先無壓縮狀態寫入的100萬條key為16字節、value為100字節的數據后進行的讀性能測試。同樣的 SQLite 由于不支持壓縮,所以下面數據是直接從其基本測試上copy過來的。

          結果可以看到,取消壓縮對讀取性能提升不是特別大,當然,如果你的數據都在內存中的話,執行解壓操作也不會對性能造成太大影響。

          posted @ 2012-07-18 10:16 小馬歌 閱讀(699) | 評論 (0)編輯 收藏
           
          dstat 是一個用來替換 vmstat, iostat, netstat, nfsstat 和 ifstat 這些命令的工具,是一個全能系統信息統計工具。

          1) 安裝:

          yum install http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
          yum install dstat

          2) 使用:

          [root@ha1 logs]# dstat
          You did not select any stats, using -cdngy by default.
          ----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
          usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
          1   2  95   0   0   1|  26k   84k|   0     0 |   0     3B|9686  8092 
          0  13  87   0   0   0|   0  1728k| 409k 2798k|   0     0 |3870  1152 
          0  13  87   0   0   0|   0     0 | 473k 3198k|   0     0 |4225  1181 
          0  13  87   0   0   0|   0     0 | 454k 3507k|   0     0 |4244  1403 
          0  13  87   0   0   0|   0     0 | 440k 3055k|   0     0 |4071  1203 
          0  13  87   0   0   0|   0     0 | 580k 2986k|   0     0 |3600  1154 
          0  13  86   1   0   0|   0   200k| 430k 2388k|   0     0 |3727  1220 
          0  13  87   0   0   0|   0     0 | 421k 2184k|   0     0 |3662  1305 
          0  13  87   0   0   0|   0     0 | 643k 2216k|   0     0 |3536  1180 
          0  13  87   0   0   0|   0     0 | 414k 2233k|   0     0 |3414  1129 
          0  13  87   0   0   0|   0     0 | 547k 1978k|   0     0 |3802  1326 
          0  13  86   1   0   0|   0   372k| 455k 2679k|   0     0 |3971  1351 
          0  13  87   0   0   0|   0     0 | 397k 1918k|   0     0 |3763  1348 

          [root@ha1 logs]# dstat -c --top-cpu -d --top-bio --top-latency
          ----total-cpu-usage---- -most-expensive- -dsk/total- ----most-expensive---- --highest-total--
          usr sys idl wai hiq siq|  cpu process   | read  writ|  block i/o process   | latency process 
          1   2  95   0   0   1|kipmi0       1.4|  26k   84k|init [3]     11k   38k|pdflush       227
          0  13  86   0   0   0|kipmi0        13|   0   328k|kjournald     0   152k|nginx: worker   1
          0  13  87   0   0   0|kipmi0        13|   0     0 |nagios        0    20k|                 
          0  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0  8192B|ksoftirqd/6     3
          1  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    16k|ksoftirqd/3     4
          1  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    12k|ksoftirqd/0     3
          1  13  86   1   0   0|kipmi0        13|   0   204k|nginx: work   0  8192B|ksoftirqd/7     5
          1  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    12k|ksoftirqd/2     3
          1  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    16k|ksoftirqd/5     3
          0  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    12k|ksoftirqd/1     4
          1  13  87   0   0   0|kipmi0        13|   0     0 |nginx: work   0    12k|ksoftirqd/4     5


          dstat可以在linux下比較清析的顯示CPU,內存,網絡,磁盤等的統計信息。非常好用。

          3) 更多信息

          http://dag.wieers.com/home-made/dstat/
          posted @ 2012-07-18 10:16 小馬歌 閱讀(222) | 評論 (0)編輯 收藏
           

          現在apache用得越來越少了,大家都改用nginx。但有些東西還是比較依賴apache,如nagios。

          想讓nagios在nginx上運行,必需先讓nginx支持perl和cgi解析的功能,需要用到fcgi-perl,安裝方式參見我的上一篇blog:

          在nginx上配置使用bugzilla

          在這里就不多說了。

          現在帖上perl的fast-cgi起來后,nginx的配置:

             server {
                  listen       80;
                  server_name  monitor.xxxx.com;

                  root   /data1/www/monitor.xxxx.com;
                  index  index.php index.html index.htm;

                  access_log /data1/app/log/nginx/monitor.xxxx.com.log  combined;
                  error_log  /data1/app/log/nginx/error-monitor.xxxx.com.log notice;

                  allow 10.0.0.0/8;
                  deny all;

                  location ~ \.php$ {

                      root  /data1/www/monitor.xxxx.com;

                      fastcgi_pass   unix:/data1/app/tmp/php-cgi.sock;
                      fastcgi_index  index.php;
                      include        fastcgi.conf;
                  }

                  location /nagios/ {

                      alias /usr/share/nagios/;
                      index index.html index.htm index.php;

                      auth_basic "Nagios Access";
                      auth_basic_user_file htpasswd.users;

                      location ~ \.php$ {
                          root /usr/share;
                          fastcgi_pass   unix:/data1/app/tmp/php-cgi.sock;
                          fastcgi_index  index.php;
                          include        fastcgi.conf;
                      }

                  }

                  location ~ .*\.(pl|cgi)$ {
                      rewrite ^/nagios/cgi-bin/(.*)\.cgi /$1.cgi break;

                      auth_basic "Nagios Access";
                      auth_basic_user_file htpasswd.users;

                      gzip off;
                      include fastcgi_params;
                      fastcgi_pass  127.0.0.1:8999;
                      fastcgi_index index.cgi;
                      fastcgi_param SCRIPT_FILENAME  /usr/lib64/nagios/cgi$fastcgi_script_name;
                      fastcgi_param AUTH_USER $remote_user;
                      fastcgi_param REMOTE_USER $remote_user;

                  }


             }

           

          然后重新生成認證文件htpasswd.users放在nginx的conf目錄。重啟nginx服務便可。

          生成認證文件使用:

          htpasswd -c htpasswd.users nagiosadmin

          特別注意下面兩個參數,一定要加上:

                      fastcgi_param AUTH_USER $remote_user;
                      fastcgi_param REMOTE_USER $remote_user;

          否則進入nagios會提示沒有認證。

          posted @ 2012-07-17 17:47 小馬歌 閱讀(809) | 評論 (0)編輯 收藏
           

          基于列存儲的數據庫的優點¶
          a)對于聚集操作,比如求sum,明顯基于列存儲的要比基于行存儲的快;
          b)對于update操作,不須接觸其他列值;
          c)基于行存儲的數據庫在查詢每行記錄的多個列值更高效的條件是,row-size比較小,這樣一次磁盤讀取就可以獲取整行;
          d)基于行存儲的數據庫在insert一行的時候相對更高效,畢竟可一次寫入一個連續空間,即一次single disk seek;

           

          從實際情況上來看,基于行存儲的數據庫更適合OLTP(聯機事務處理系統),基于列存儲的數據庫更適合OLAP(聯機分析處理系統),比如數據倉庫。除此之外,同一列必定是同一類型大小,基于列存儲的數據庫更容易使用高效的存儲方式,與之相對,基于行存儲的數據庫則只能采用隨機方式處理列值了。


          Vertica 數據庫的設計特點¶
          a)它是基于列的存儲結構,提高了連續的record處理的性能,但是在一般事務中增加了對單獨record進行update和delete的開銷;
          b)“單獨”更新(out-of-place updates)和混合存儲結構,提高了查詢、插入的性能,但增加了update和delete的開銷;
          c)壓縮,減少存儲開銷和IO帶寬開銷;
          d)完全無共享架構,降低對共享資源的系統競爭;

          Vertica數據庫運行在基于Linux的網格服務器上,目前應用于Amazon Elastic Compute Cloud的數據庫管理系統。

           

          The Vertica Analytic Databas¶
          a)重申三大特點:壓縮、基于列、表分解;
          b)混合數據存儲模式,當insert時候,按照寫優先分配原則,實現insert與query的高并發操作;
          c)自動化數據庫結構設計工具,多節點集群系統,所有的數據都會保存在不止一個節點上,即所謂的k-safety,這樣可防止單點故障造成的損失;
          d)高性能,支持ACID,輕量級事務和并發控制更加適合load和query操作。Vertica的故障恢復模型是基于多節點拷貝,而不是傳統的基于日志;
          e)靈活部署;
          f)監視和管理工具和API;

          對于一個node上的vertica數據庫,數據存儲分為兩個部分,一個是讀優存儲(read-optimized store,ROS),另一個是寫優存儲(write-optimized store,WOS),每次更新和插入的數據臨時放在WOS部分,SQL查詢會訪問ROS部分,并且ROS存放已經經過壓縮和排序的數據,這樣就做到了讀寫并發兩不誤,通過tuple mover進程定期將WOS的數據壓縮排序后拷貝到ROS區域。

          對于多個node,一個表的schema首先會按列拆分為多個映射,將每個列排序保存在不同磁盤上。

          Vertica數據庫設計本身就適合基于列的查詢,雖然一些基于行的數據庫經過預處理和內部關系視圖等操作也可以優化常見查詢的速度,但仍和vertica能應付更多不同查詢的高性能無法相比,尤其是vertica的的列主動壓縮(aggressive compression)。主動壓縮,簡單的說就是將一個列不同的值的一維存儲轉換為二維元組(tuple),格式為<個數,列值>,這樣的話,即使是date類型的百萬條數據,一年最多也只有365個數對,好處不言而喻,節省空間、提高查詢速度、方便聚集函數操作。另外,對應浮點數和時間這樣的連續數值,也采用了某些處理方式實現了一些排序和壓縮(具體沒看懂)。

          在讀優存儲(ROS)區域,除了排序壓縮外,還有些別的優化處理。比如數據是致密填充(dense packed)的,即占用的磁盤分頁內沒有空閑,不用考慮后來insert的數據放哪的問題,因為那是tuple mover做的事情。另一個優化是,vertica會提前取出一大塊數據用以減少多次磁盤掃描。 Vertica對于各節點上冗余存儲的列數據可采用不同排序順序存儲,這樣不但利用多拷貝實現了故障恢復,還利用多種排序順序提高了查詢速度,對于每一個給定的sql操作,vertica都會選擇一個最合適的排序順序。

          DB designer 根據數據樣本和查詢樣本將邏輯schema映射為多個物理schema,說白了就是將一個行映射拆分為多個行映射,同時保證每個查詢的from部分都只來自一個映射。 k-safety,簡單的說就是,對于數據庫中的每一列,都會在k+1個節點上存儲,這樣即使k個節點壞掉了也沒事。

          Vertica開發,支持標準SQL語句,支持JDBC和ODBC,支持perl和python編程,支持PostgreSQL等數據庫的應用代碼向其平滑移植。但是vertica對于update這樣的操作實在是笨拙。

          posted @ 2012-07-17 17:46 小馬歌 閱讀(2513) | 評論 (0)編輯 收藏
           

          在access.log中有大量400錯誤,并以每天幾百M的速度增加,占用大量空間.
          tail -f /opt/nginx/logs/access.log

              116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"
              119.97.196.7 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              119.97.196.7 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              219.243.95.197 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"
              116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"

          網上大把的文章說是HTTP頭/Cookie過大引起的,可以修改nginx.conf中兩參數來修正.

              client_header_buffer_size 16k;
                    large_client_header_buffers 4 32k;

          修改后

              client_header_buffer_size 64k;
                   large_client_header_buffers 4 64k;

          沒有效果,就算我把nginx0.7.62升到最新的0.8.54也沒能解決.
          在官方論壇中nginx作者提到空主機頭不會返回自定義的狀態碼,是返回400錯誤.
          http://forum.nginx.org/read.php?2,9695,11560

          最后修正如下
          改為原先的值

              client_header_buffer_size 16k;
                   large_client_header_buffers 4 32k;

          關閉默認主機的日志記錄就可以解決問題

              server {
              listen *:80 default;
              server_name _;
              return 444;
              access_log   off;
                   }

           

           

          本文來自:http://blog.c1gstudio.com/archives/1153

          posted @ 2012-07-17 17:45 小馬歌 閱讀(1634) | 評論 (0)編輯 收藏
           

          from:http://www.linuxidc.com/Apache/index.htm 

          BIND(Berkeley Internet Name Daemon) 
          伯克利Internet域名服務 
          官方站點:https://www.isc.org/ 
          相關軟件包 
          bind-9.3.3-7.el5.i386.rpm


          bind-utils-9.3.3-7.el5.i386.rpm 
          bind-utils,提供了對DNS服務器的測試工具程序(如nslookup、dig等) 
          bind-chroot-9.3.3-7.el5.i386.rpm 
          bind-chroot,為bind提供一個偽裝的根目錄以增強安全性(將“/var/named/chroot/”文件夾作為BIND的根目錄) 
          caching-nameserver-9.3.3-7.el5.i386.rpm,為配置BIND作為緩存域名服務器提供必要的默認配置文件

          BIND服務器端程序 
          主要執行程序:/usr/sbin/named 
          服務腳本:/etc/init.d/named 
          默認監聽端口:UDP和TCP的53 
          主配置文件: /etc/named.conf 
          保存DNS解析記錄的數據文件位于:/var/named/ 
           

          實驗環境

          兩臺虛擬機分別裝好bind,主DNS服務器為ns1,IP192.168.0.100;從DNS服務器為ns2,IP192.168.0.200。為linuxidc.com搭建主DNS服務器和從DNS服務器。

          配置主服務器
          主配置文件/etc/named.conf 

           

          1. options {   
          2. directory "/var/named";   
          3. version "None of your business.";   
          4. };//這部分是全局選項   
          5. zone "." IN {   
          6. type hint;   
          7. file "named.ca";   
          8. };//根服務器   
          9. zone "localhost" IN {   
          10. type master;   
          11. file "local.zone";   
          12. };//本地正向解析   
          13. zone "9.16.172.in-addr.arpa" IN {   
          14. type master;   
          15. file "named.local";   
          16. }; //本地逆向解析   
          17. zone "linuxidc.com" IN {   
          18. type master;//區域類別,hint表示根區域、master表示主區域、slave表示輔助區域    forward 轉發區域   
          19. file "linuxidc.com.zone";//區域文件存放的位置,這里用的是相對路徑,存放在/var/named目錄下   
          20. };//這部分就是我們要的  

          linuxidc.com.zone文件的配置

           

          1. $TTL    86400   
          2. @               IN SOA  ns1.linuxidc.com. admin.linuxidc.com. ( //SOA(Start Of Authority,起始授權記錄)記錄    用于表示一個區域的主域名服務器是誰   
          3.                                         1234567890//serial 更新序列號用于標記地址數據庫的變化,可以是10位以內的整數   
          4.                                         3H//從服務器刷新時間從域名服務器更新該地址數據庫文件的間隔時間   
          5.                                         15M//重試延時,從域名服務器更新地址數據庫失敗以后,等待多長時間再次嘗試   
          6.                                         1W//失效時間超過該時間仍無法更新地址數據庫,則不再嘗試   
          7.                                         1D )//緩存時間設置無效地址解析記錄(該數據庫中不存在的地址)的默認緩存時間   
          8.                 IN NS           ns1.linuxidc.com.   
          9.                 IN NS           ns2.linuxidc.com.   
          10.                 IN MX   10      mail.linuxidc.com.   
          11. ns1             IN A            172.168.9.222   
          12. ns2             IN A            172.168.9.111   
          13. www             IN A            172.16.9.1   
          14. ns              IN A            172.16.9.222   
          15. ns2             IN A            172.16.9.111   
          16. ftp             IN A            172.16.9.123   
          17. mail            IN A            172.16.9.1   
          18. www2            IN CNAME        www.linuxidc.com.  
          19.  
          20. //   
          21. SOA記錄                起始授權記錄   
          22. NS記錄                聲明本機的域名服務器   
          23. A記錄                主機名轉換成IP地址   
          24. PTR                    IP地址轉換成主機名   
          25. MX記錄                標識郵件服務器   
          26. CNAME                別名   
          27. NS記錄和MX記錄還需要在后面為其添加對應的A記錄  
          28.  

          OK,主DNS服務器就配置好了chkconfig檢查下時候開機啟動,到次主DNS服務器簡單的配置完成

           

          配置從DNS服務器,從DNS服務器只需要配置主配置文件就可以,區域文件會從主服務器同步過來

          1. options {   
          2. directory "/var/named";   
          3. version "None of your business.";   
          4. };//這部分是全局選項   
          5. zone "." IN {   
          6. type hint;   
          7. file "named.ca";   
          8. };//根服務器   
          9. zone "localhost" IN {   
          10. type master;   
          11. file "named.zone";   
          12. };//本地正向解析   
          13. zone "9.16.172.in-addr.arpa" IN {   
          14. type master;   
          15. file "named.local";   
          16. }; //本地逆向解析   
          17. zone "linuxidc.com" IN {   
          18. type slave;//區域類別,hint表示根區域、master表示主區域、slave表示輔助區域 forward 轉發區域   
          19. file "slaves/linuxidc.com.zone";//區域文件存放的位置,這里因為權限的原因我們放在/var/named/slaves目錄下   
          20. masters { 172.16.9.222; };//主DNS服務器的地址   
          21. };  
          22.  
          caching-nameserver-9.3.3-7.el5.i386.rpm 提供了配置文件的參考和一些默認的區域文件

          主從DNS服務器就簡單的配置完成了

          posted @ 2012-07-13 18:48 小馬歌 閱讀(1488) | 評論 (0)編輯 收藏
           

          我們的各級干部要真正領悟了妥協的藝術,學會了寬容,保持開放的心態,就會真正達到灰度的境界,就能夠在正確的道路上走得更遠,走得更扎實。
          文/任正非,華為技術有限公司總裁
          華為的核心價值觀中,很重要的一條是開放與進取,這條內容在行政管理團隊的討論中,有較長時間的爭議。華為是一個有較強創新能力的公司,開放難道有這么重要嗎?由于成功,我們現在越來越自信、自豪和自滿,其實也在越來越自閉。
          我們強調開放,更多一些向別人學習,我們才會有更新的目標,才會有真正的自我審視,才會有時代的緊迫感。
          清晰的方向來自灰度
          一個領導人重要的素質是方向、節奏。他的水平就是合適的灰度。堅定不移的正確方向來自灰度、妥協與寬容。
          一個清晰方向,是在混沌中產生的,是從灰色中脫穎而出,方向是隨時間與空間而變的,它常常又會變得不清晰。并不是非白即黑、非此即彼。合理地掌握合適的灰度,是使各種影響發展的要素,在一段時間和諧,這種和諧的過程叫妥協,這種和諧的結果叫灰度。
          妥協一詞似乎人人都懂,用不著深究,其實不然。妥協的內涵和底蘊比它的字面含義豐富得多,而懂得它與實踐更是完全不同的兩回事。我們華為的干部,大多比較年輕,血氣方剛,干勁沖天,不大懂得必要的妥協,也會產生較大的阻力。
          我們縱觀中國歷史上的變法,雖然對中國社會進步產生了不滅的影響,但大多沒有達到變革者的理想。我認為,面對它們所處的時代環境,他們的變革太激進、太僵化,沖破阻力的方法太苛刻。如果他們用較長時間來實踐,而不是太急迫、太全面,收效也許會好一些。其實就是缺少灰度。方向是堅定不移的,但并不是一條直線,也許是不斷左右搖擺的曲線,在某些時段來說,還會劃一個圈,但是我們離得遠一些或粗一些來看,它的方向仍是緊緊地指著前方。
          我們今天提出了以正現金流、正利潤流、正的人力資源效率增長,以及通過分權制衡的方式,將權力通過授權、行權、監管的方式,授給直接作戰部隊,也是一種變革。在這次變革中,也許與二十年來的決策方向是有矛盾的,也將涉及許多人的機會與前途,我想我們相互之間都要有理解與寬容。
          寬容是領導者的成功之道
          為什么要對各級主管說寬容?這同領導工作的性質有關。任何工作,無非涉及到兩個方面:一是同物打交道,二是同人打交道。
          不寬容,不影響同物打交道。一個科學家,性格怪癖,但他的工作只是一個人在實驗室里同儀器打交道,那么,不寬容無傷大雅。一個車間里的員工,只是同機器打交道,那么,即使他同所有人都合不來,也不妨礙他施展技藝制造出精美的產品。

          但是,任何管理者,都必須同人打交道。有人把管理定義為“通過別人做好工作的技能”。一旦同人打交道,寬容的重要性立即就會顯示出來。人與人的差異是客觀存在的,所謂寬容,本質就是容忍人與人之間的差異。不同性格、不同特長、不同偏好的人能否凝聚在組織目標和愿景的旗幟下,靠的就是管理者的寬容。
          寬容別人,其實就是寬容我們自己。多一點對別人的寬容,其實,我們生命中就多了一點空間。
          寬容是一種堅強,而不是軟弱。寬容所體現出來的退讓是有目的有計劃的,主動權掌握在自己的手中。無奈和迫不得已不能算寬容。
          只有勇敢的人,才懂得如何寬容,懦夫決不會寬容,這不是他的本性。寬容是一種美德。
          只有寬容才會團結大多數人與你一齊認知方向,只有妥協才會使堅定不移的正確方向減少對抗,只有如此才能達到你的正確目的。

          沒有妥協就沒有灰度
          堅持正確的方向,與妥協并不矛盾,相反妥協是對堅定不移方向的堅持。
          當然,方向是不可以妥協的,原則也是不可妥協的。但是,實現目標過程中的一切都可以妥協,只要它有利于目標的實現,為什么不能妥協一下?當目標方向清楚了,如果此路不通,我們妥協一下,繞個彎,總比原地踏步要好,干嘛要一頭撞到南墻上?
          在一些人的眼中,妥協似乎是軟弱和不堅定的表現,似乎只有毫不妥協,方能顯示出英雄本色。但是,這種非此即彼的思維方式,實際上是認定人與人之間的關系是征服與被征服的關系,沒有任何妥協的余地。
          “妥協”其實是非常務實、通權達變的叢林智慧,凡是人性叢林里的智者,都懂得恰當時機接受別人妥協,或向別人提出妥協,畢竟人要生存,靠的是理性,而不是意氣。
          “妥協”是雙方或多方在某種條件下達成的共識,在解決問題上,它不是最好的辦法,但在沒有更好的方法出現之前,它卻是最好的方法,因為它有不少的好處。
          妥協并不意味著放棄原則,一味地讓步。明智的妥協是一種適當的交換。為了達到主要的目標,可以在次要的目標上做適當的讓步。這種妥協并不是完全放棄原則,而是以退為進,通過適當的交換來確保目標的實現。相反,不明智的妥協,就是缺乏適當的權衡,或是堅持了次要目標而放棄了主要目標,或是妥協的代價過高遭受不必要的損失。
          明智的妥協是一種讓步的藝術,妥協也是一種美德,而掌握這種高超的藝術,是管理者的必備素質。
          只有妥協,才能實現“雙贏”和“多贏”,否則必然兩敗俱傷。因為妥協能夠消除沖突,拒絕妥協,必然是對抗的前奏;我們的各級干部真正領悟了妥協的藝術,學會了寬容,保持開放的心態,就會真正達到灰度的境界,就能夠在正確的道路上走得更遠,走得更扎實。
          堅決反對完美主義
          什么是職業化?就是在同一時間、同樣的條件,做同樣的事的成本更低,這就是職業化。市場競爭,對手優化了,你不優化,留給你的就是死亡。思科在創新上的能力,愛立信在內部管理上的水平,我們現在還是遠遠趕不上的。要縮短這些差距,必須持續地改良我們的管理,不縮短差距,客戶就會拋離我們。
          的確,我們要有管理改進的迫切性,但也要沉著冷靜,減少盲目性。我們不能因短期救急或短期受益,而做長期后悔的事。不能一邊救今天的火,一邊埋明天的雷。管理改革要繼續堅持從實用的目的出發,達到適用目的的原則。
          我們從一個小公司脫胎而來,小公司的習氣還殘留在我們身上。我們的員工也受二十年來公司早期的習慣勢力的影響,自己的思維與操作上還不能完全職業化。這些都是我們管理優化的阻力。由于我們從小公司走來,相比業界的西方公司,我們一直處于較低水平,運作與交付上的交叉、不銜接、重復低效、全流程不順暢現象還較為嚴重。
          在管理改進中,要繼續堅持遵循“七反對”的原則。堅決反對完美主義,堅決反對繁瑣哲學,堅決反對盲目的創新,堅決反對沒有全局效益提升的局部優化,堅決反對沒有全局觀的干部主導變革,堅決反對沒有業務實踐經驗的人參加變革,堅決反對沒有充分論證的流程進行實用。
          我們不忌諱我們的病灶,要敢于改革一切不適應及時、準確、優質、低成本實現端到端服務的東西。但更多的是從管理進步中要效益。我們從來就不主張較大幅度的變革,而主張不斷的改良,我們現在仍然要耐得住性子,謀定而后動。
          因地制宜實事求是
          西方的職業化,是從一百多年的市場變革中總結出來的,它這樣做最有效率。穿上西裝,打上領帶,并非是為了好看。我們學習它,并非是完全僵化地照搬,難道穿上中山裝就不行?
          我們二十年來,有自己成功的東西,我們要善于總結出來,我們為什么成功,以后怎樣持續成功,再將這些管理哲學的理念,用西方的方法規范,使之標準化、基線化,有利于廣為傳播與掌握并善用之,培養各級干部,適應工作。
          只有這樣我們才不是一個僵化的西方樣板,而是一個有活的靈魂的管理有效的企業。看西方在中國的企業成功的不多,就是照搬了西方的管理,而水土不服。一個企業活的靈魂,就是堅持因地制宜實事求是。這兩條要領的表現,就是不斷提升效率。
          我們從雜亂的行政管制中走過來,依靠功能組織進行管理的方法雖然在弱化,但以流程化管理的內涵,還不夠豐富。流程的上、下游還沒有有效“拉通”,基于流程化工作對象的管理體系還不很完善。組織行為還不能達到可重復、可預期、可持續化的可值得信賴的程度。人們還習慣在看官大官小的指令,來確定搬道岔。以前還出現過可笑的工號文化。

          工作組是從行政管制走向流程管制的一種過渡形式,它對打破部門墻有一定好處,但它對破壞流程化建設有更大的壞處。而我們工作組滿天飛,流程化組織變成了一個資源池,這樣下去我們能建設成現代化管理體系嗎?一般而言,工作組人數逐步減少的地方,流程化的建設與運作就比較成熟。
          我們要清醒地認識到,面對未來的風險,我們只能用規則的確定來對付結果的不確定。只有這樣我們才能隨心所欲,不逾矩,才能在發展中獲得自由。任何事物都有對立統一的兩面,管理上的灰色,是我們生命之樹。我們要深刻理解開放、妥協、灰度。
          (本文來源:商界評論 ) 

           

          posted @ 2012-07-12 09:48 小馬歌 閱讀(245) | 評論 (0)編輯 收藏
           

          存在就是被需要。騰訊產品經理的要求有哪些呢?
          以下各項指標均為5分制,括號里的分值是騰訊產品專家P4的基礎要求。
          【圖文版】-點擊圖片查看大圖
          騰訊產品經理
          【文字版】
          一、素質
          1、基本素質
          學習/提煉能力(5分)
          辦公技能(5分)
          執行力/IQ(5分)
          關聯專業知識(3分)
          溝通能力/Trade off(5分)

          二、關鍵素質
          行業融入感/Ownership(5分)
          技術理解(4分)
          AQ/EQ(心態/胸懷)(4分)

          三、能力
          1、市場能力
          對外商務溝通(BD\P3以上)(2分)

          2、產品能力
          市場/用戶的調研與分析(4分)
          行業認知(4分)
          專業設計能力(4分)
          用戶需求理解/80/20/細節(4分)
          產品規劃(版本計劃/節奏)(4分)

          3、運營能力
          運營數據分析(3分)
          營銷與推廣策略(3分)
          危機預測與控制/預見性(2分)
          渠道管理(2分)

          4、領導能力
          項目管理(4分)
          帶人的能力/知識傳遞(3分)

          擴展性閱讀《騰訊產品經理視角》
          一、產品
          1、從產品的外延來說,
          任何東西都可以被看作是產品,它的好壞取決于它被需要的程度,以及它滿足外界需要的程度。
          眾人眼中成功的人必是很好的滿足大眾需要的人,這和“好壞”無關。
          不被需要的東西,漸漸淡出歷史而消亡,或者轉化為新的被需要的方式。

          2、從產品的內涵來說
          產品/功能,就是一系列符合用戶需求的功能的組合。
          運營/營收,是指為了擴大用戶群、提高用戶活躍度,尋找合適商業模式并增加收入所采取的經營手段。(運營是有成本的,因此它要有極為明確的目標)

          3、網站提供服務的模式有
          產品貫穿,運營貫穿和相互貫穿。

          二、騰訊產品經理定義
          產品經理是產品的設計者、建造者、運營者,更是產品的第一個用戶,他需要
          1、進行市場調研,收集用戶需求;
          2、確定產品功能,制定產品規劃;
          3、負責或指導產品運營,并主持版本更新。
          附:
          運營者必須是一個冷靜務實、重實驗的科學家,無論何時何地,對運營者而言,總利潤比市場份額、效率更為重要。
          維持低成本是產品的事情,維持高售價是運營的事情。

          4、產品經理的世界觀
          任何東西,都是產品,它的價值取決于它滿足了多少外部的需求。

          5、產品Sense,是產品經理的能力/經驗的體驗,目標是讓產品用起來更爽。
          提升產品Sense的唯一途徑,是從用戶(可以初期只是有需求的你和身邊的人)的角度而不是從產品內部體系的角度,去確定用戶需求,并對需求優先級進行排序。

          6、產品經理最需要了解人的需求
          吸引力
          歸屬感
          自由自在
          掌握和駕馭感
          樂趣與興奮
          愛和被愛
          成為領導者
          擁有智慧和知識
          表現自我
          和諧
          尊重
          安全
          自我放縱
          傳統
          自我感覺良好

          7、產品規劃流程
          是對市場走勢及客戶需求進行分析,創建合理的市場細分規則,對要投資或取得領先地位的細分市場進行選擇和優先排序,從而制定可執行的業務計劃,并驅動新產品的開發。
          主要過程有
          1、用戶需求收集 交付件:產品候選概念
          2、市場分析 交付件:市場評估報告
          3、制定規劃 交付件:產品路標規劃書
          4、撰寫策劃 交付件:產品需求說明書
          5、制定業務計劃 交付件:業務計劃、進入開發階段

          8、產品功能的優先級
          產品本身的需求都是平等的,但產品在不同的階段有不同的目標和現實情況,這是判定產品功能優先級的唯一標準。而不是滿口“這是用戶新提的需求,很緊急,這個大合作就差這個功能人家就答應了”

          新產品上線
          首要目標:吸引新用戶,快速占領市場
          功能側重點:好用、方便、運營成本

          平臺期
          首要目標:留住用戶,穩定收入
          功能側重點:內容翻新,滿足細分用戶群體的需求

          產品更新換代
          首要目標:保留舊產品精髓,融入新的創意元素
          功能側重點:創新

          posted @ 2012-07-06 10:19 小馬歌 閱讀(308) | 評論 (0)編輯 收藏
           

          linux下添加,刪除,修改,查看用戶和用戶組

          1,創建組

          groupadd test

          增加一個test

          2,修改組

          groupmod -n test2 test

          test組的名子改成test2

          3,刪除組

          groupdel test2

          刪除 test2

          4,查看組

          a),查看當前登錄用戶所在的組 groups,查看apacheuser所在組groups apac

           一,組操作

          1,創建組

           

          groupadd test

           

          增加一個test

           

          2,修改組

           

          groupmod -n test2  test

           

          test組的名子改成test2

           

          3,刪除組

           

          groupdel test2

           

          刪除 test2

           

          4,查看組

           

          a),查看當前登錄用戶所在的組 groups,查看apacheuser所在組groups apacheuser

           

          b),查看所有組 cat /etc/group

           

          c),有的linux系統沒有/etc/group文件的,這個時候看下面的這個方法

           

          cat /etc/passwd |awk -F [:] ‘{print $4}’ |sort|uniq | getent group |awk -F [:] ‘{print $1}’

           

          這里用到一個命令是getent,可以通過組ID來查找組信息,如果這個命令沒有的話,那就很難查找,系統中所有的組了.

           

          二,用戶操作

           

          1,增加用戶

           

          查看復制打印?

          [root@krlcgcms01 mytest]# useradd –help

          Usage: useradd [options] LOGIN

           

          Options:

          -b, base-dir BASE_DIR       設置基本路徑作為用戶的登錄目錄

          -c, comment COMMENT         對用戶的注釋

          -d, home-dir HOME_DIR       設置用戶的登錄目錄

          -D, defaults                改變設置

          -e, expiredate EXPIRE_DATE 設置用戶的有效期

          -f, inactive INACTIVE       用戶過期后,讓密碼無效

          -g, gid GROUP               使用戶只屬于某個組

          -G, groups GROUPS           使用戶加入某個組

          -h, help                    幫助

          -k, skel SKEL_DIR           指定其他的skel目錄

          -K, key KEY=VALUE           覆蓋 /etc/login.defs 配置文件

          -m, create-home             自動創建登錄目錄

          -l,                           不把用戶加入到lastlog文件中

          -M,                           不自動創建登錄目錄

          -r,                           建立系統賬號

          -o, non-unique              允許用戶擁有相同的UID

          -p, password PASSWORD       為新用戶使用加密密碼

          -s, shell SHELL             登錄時候的shell

          -u, uid UID                 為新用戶指定一個UID

          -Z, –selinux-user SEUSER     use a specific SEUSER for the SELinux user mapping

          [root@krlcgcms01 mytest]# useradd --help

          Usage: useradd [options] LOGIN

           

          Options:

           -b, --base-dir BASE_DIR       設置基本路徑作為用戶的登錄目錄

           -c, --comment COMMENT         對用戶的注釋

           -d, --home-dir HOME_DIR       設置用戶的登錄目錄

           -D, --defaults                改變設置

           -e, --expiredate EXPIRE_DATE 設置用戶的有效期

           -f, --inactive INACTIVE       用戶過期后,讓密碼無效

           -g, --gid GROUP               使用戶只屬于某個組

           -G, --groups GROUPS           使用戶加入某個組

           -h, --help                    幫助

           -k, --skel SKEL_DIR           指定其他的skel目錄

           -K, --key KEY=VALUE           覆蓋 /etc/login.defs 配置文件

           -m, --create-home             自動創建登錄目錄

           -l,                           不把用戶加入到lastlog文件中

           -M,                           不自動創建登錄目錄

           -r,                           建立系統賬號

           -o, --non-unique              允許用戶擁有相同的UID

           -p, --password PASSWORD       為新用戶使用加密密碼

           -s, --shell SHELL             登錄時候的shell

           -u, --uid UID                 為新用戶指定一個UID

           -Z, --selinux-user SEUSER     use a specific SEUSER for the SELinux user mappinguseradd test

           

          passwd test

           

          增加用戶test,有一點要注意的,useradd增加一個用戶后,不要忘了給他設置密碼,不然不能登錄的。

           

          2,修改用戶

           

          usermod -d /home/test -G test2 test

           

          test用戶的登錄目錄改成/home/test,并加入test2組,注意這里是大G。

           

          gpasswd -a test test2 將用戶test加入到test2

          gpasswd -d test test2 將用戶testtest2組中移出

           

          3,刪除用戶

           

          userdel test

           

          test用戶刪除

           

          4,查看用戶

           

          a),查看當前登錄用戶

           

          [root@krlcgcms01 ~]# w

          [root@krlcgcms01 ~]# who

           

          b),查看自己的用戶名

           

          [root@krlcgcms01 ~]# whoami

           

          c),查看單個用戶信息

           

          [root@krlcgcms01 ~]# finger apacheuser

          [root@krlcgcms01 ~]# id apacheuser

           

          d),查看用戶登錄記錄

           

          [root@krlcgcms01 ~]# last 查看登錄成功的用戶記錄

          [root@krlcgcms01 ~]# lastb 查看登錄不成功的用戶記錄

           

          e),查看所有用戶

           

          [root@krlcgcms01 ~]# cut -d : -f 1 /etc/passwd

          [root@krlcgcms01 ~]# cat /etc/passwd |awk -F \: ‘{print $1}’

          posted @ 2012-07-05 11:12 小馬歌 閱讀(195) | 評論 (0)編輯 收藏
          僅列出標題
          共95頁: First 上一頁 34 35 36 37 38 39 40 41 42 下一頁 Last 
           
          主站蜘蛛池模板: 桦南县| 井陉县| 万全县| 介休市| 敦化市| 公安县| 大余县| 堆龙德庆县| 鸡东县| 正安县| 沧州市| 邳州市| 津市市| 同仁县| 准格尔旗| 上犹县| 什邡市| 连州市| 若尔盖县| 辽中县| 霍城县| 龙陵县| 江安县| 淮阳县| 肇源县| 措美县| 稻城县| 六安市| 大石桥市| 平凉市| 资兴市| 迁安市| 孟州市| 金湖县| 广南县| 宁晋县| 会昌县| 祁阳县| 青神县| 赫章县| 三原县|