<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-124  評論-194  文章-0  trackbacks-0
      2010年3月27日
         摘要: 做為程序員,從感性角度講評一下7年里我使用過的9款機械鍵盤,確實更有特色,這種特殊的觸聽體驗非常美妙!  閱讀全文
    posted @ 2021-03-30 15:45 我愛佳娃 閱讀(400) | 評論 (0)編輯 收藏
    搬了個家,想通過A410點播imac上下載的電影,通過系統自帶共享samba怎么都不成功。

    想到是13年買的A410,應該升級一下,可官網都沒了,最后搜索到這個16年的最新固件:
    https://drivers.softpedia.com/get/DVD-BluRay-Media-Players/Cloud-Media/Cloud-Media-Popcorn-Hour-A-410-Media-Player-Firmware-050816061625POP425802.shtml
    通過USB順利更新了一把。

    再查看mac可以開nfs,方法如下:

    sudo vi /etc/exports
    加入:

    / -sec=sys

     

    /Users /Users/popeye /Users/popeye/movies -ro -mapall=popeye:staff -alldirs

    檢查配置:

    sudo nfsd checkexports


    重啟:

    sudo nfsd restart

    這里要注意movies目錄是我重新建立的755權限,不要用系統原來的目錄,不然總是訪問不了。

    再到A410里網絡瀏覽里就能找到了。





    posted @ 2020-01-19 21:43 我愛佳娃 閱讀(704) | 評論 (0)編輯 收藏
    http://mathias-kettner.de/checkmk_livestatus.html下載并解壓最新的包:
    check_mk-1.2.1i3.tar.gz

    再解壓其中的到livestatus目錄:
    livestatus.tar.gz

    進入:livestatus/src

    再:make clean livestatus.o

    會發現一堆錯誤,根據編譯NDO的選項:
    ndoutils-1.4b7/src:
    make clean ndomod-3x.o gcc -fno-common -g -O2 -DHAVE_CONFIG_H -D BUILD_NAGIOS_3X -o ndomod-3x.o ndomod.c io.o utils.o -bundle -flat_namespace -undefined suppress -lz

    在最后的編譯選項里添上:
    -flat_namespace -undefined suppress -lz

    就可以編譯出: livestatus.o



    --------------------------
    livecheck編不過,報找不到n_short:
    ip_icmp.h:92: error: expected specifier-qualifier-list before ‘n_short’

    vi ./check_icmp.c 
    把這個調整到INCLUDE序列的最后即可:
    #include "/usr/include/netinet/ip_icmp.h"
    posted @ 2012-12-21 07:00 我愛佳娃 閱讀(1557) | 評論 (0)編輯 收藏
         摘要:

    場景

    想要用到的場景:用戶訪問WEB服務,WEB訪問非WEB服務1,服務1又再訪問2、3,合并計算后,把數據返回給WEB及前端用戶。想讓訪問鏈上的所有服務都能得到認證和鑒權,認為本次請求確實是來自用戶的。所以想到用CAS,讓用戶在一點登錄,所有服務都到此處認證和鑒權。

      閱讀全文

    posted @ 2012-12-01 10:43 我愛佳娃 閱讀(9805) | 評論 (3)編輯 收藏

    Setting Up SSL on Tomcat in 5 minutes (https://localhost:8443)

    June 30, 2011 | By 

    This tutorial will walk you through how to configure SSL (https://localhost:8443 access) on Tomcat in 5 minutes.

    apache tomcat Setting Up SSL on Tomcat in 5 minutes (https://localhost:8443)

    For this tutorial you will need:

    • Java SDK (used version 6 for this tutorial)
    • Tomcat (used version 7 for this tutorial)

    The set up consists in 3 basic steps:

    1. Create a keystore file using Java
    2. Configure Tomcat to use the keystore
    3. Test it
    4. (Bonus ) Configure your app to work with SSL (access through https://localhost:8443/yourApp)

    1 – Creating a Keystore file using Java

    Fisrt, open the terminal on your computer and type:

    Windows:

    cd %JAVA_HOME%/bin 

    Linux or Mac OS:

    cd $JAVA_HOME/bin 

    The $JAVA_HOME on Mac is located on “/System/Library/Frameworks/JavaVM.framework/Versions/{your java version}/Home/

    You will change the current directory to the directory Java is installed on your computer. Inside the Java Home directory, cd to the bin folder. Inside the bin folder there is a file named keytool. This guy is responsible for generating the keystore file for us.

    Next, type on the terminal:

    keytool -genkey -alias tomcat -keyalg RSA 

    When you type the command above, it will ask you some questions. First, it will ask you to create a password (My password is “password“):

    loiane:bin loiane$ keytool -genkey -alias tomcat -keyalg RSA Enter keystore password:  password Re-enter new password: password What is your first and last name?   [Unknown]:  Loiane Groner What is the name of your organizational unit?   [Unknown]:  home What is the name of your organization?   [Unknown]:  home What is the name of your City or Locality?   [Unknown]:  Sao Paulo What is the name of your State or Province?   [Unknown]:  SP What is the two-letter country code for this unit?   [Unknown]:  BR Is CN=Loiane Groner, OU=home, O=home, L=Sao Paulo, ST=SP, C=BR correct?   [no]:  yes  Enter key password for 	(RETURN if same as keystore password):  password Re-enter new password: password 

    It will create a .keystore file on your user home directory. On Windows, it will be on: C:\Documents and Settings\[username]; on Mac it will be on /Users/[username] and on Linux will be on /home/[username].

    2 – Configuring Tomcat for using the keystore file – SSL config

    Open your Tomcat installation directory and open the conf folder. Inside this folder, you will find the server.xml file. Open it.

    Find the following declaration:

    <!-- <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"     maxThreads="150" scheme="https" secure="true"     clientAuth="false" sslProtocol="TLS" /> --> 

    Uncomment it and modify it to look like the following:

    Connector SSLEnabled="true" acceptCount="100" clientAuth="false"     disableUploadTimeout="true" enableLookups="false" maxThreads="25"     port="8443" keystoreFile="/Users/loiane/.keystore" keystorePass="password"     protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"     secure="true" sslProtocol="TLS" /> 

    Note we add the keystoreFilekeystorePass and changed the protocol declarations.

    3 – Let’s test it!

    Start tomcat service and try to access https://localhost:8443. You will see Tomcat’s local home page.

    Note if you try to access the default 8080 port it will be working too: http://localhost:8080

    4 – BONUS - Configuring your app to work with SSL (access through https://localhost:8443/yourApp)

    To force your web application to work with SSL, you simply need to add the following code to your web.xml file (before web-app tag ends):

    <security-constraint> 	<web-resource-collection> 		<web-resource-name>securedapp</web-resource-name> 		<url-pattern>/*</url-pattern> 	</web-resource-collection> 	<user-data-constraint> 		<transport-guarantee>CONFIDENTIAL</transport-guarantee> 	</user-data-constraint> </security-constraint> 

    The url pattern is set to /* so any page/resource from your application is secure (it can be only accessed with https). The transport-guarantee tag is set to CONFIDENTIAL to make sure your app will work on SSL.

    If you want to turn off the SSL, you don’t need to delete the code above from web.xml, simply changeCONFIDENTIAL to NONE.

    Referencehttp://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html (this tutorial is a little confusing, that is why I decided to write another one my own).

    Happy Coding!

    posted @ 2012-11-12 23:17 我愛佳娃 閱讀(3181) | 評論 (0)編輯 收藏
    EXTJS和D3都很強大,不解釋了,把D3繪的圖直接放到一個EXT的TAB里,直接上圖上代碼:


    代碼中的D3例子來自:
    https://github.com/mbostock/d3/wiki/Force-Layout
    可用于繪制拓撲結構圖.
    Ext.define('EB.view.content.SingleView', {
        extend : 'Ext.panel.Panel',
        alias : 'widget.singleview',

        layout : 'fit',

        title : 'single view',

        initComponent : function() {
            this.callParent(arguments);
        },

        onRender : function() {
            var me = this;

            me.doc = Ext.getDoc();
            me.callParent(arguments);

            me.drawMap();
        },

        drawMap : function() {
            var width = 960, height = 500

            var target = d3.select("#" + this.id+"-body");

            var svg = target.append("svg").attr("width", width).attr("height",
                    height);

            var force = d3.layout.force().gravity(.05).distance(100).charge(-100)
                    .size([width, height]);

                    // get from: https://github.com/mbostock/d3/wiki/Force-Layout
                    
    // example: force-directed images and labels
            d3.json("graph.json", function(json) {
                force.nodes(json.nodes).links(json.links).start();

                var link = svg.selectAll(".link").data(json.links).enter()
                        .append("line").attr("class", "link");

                var node = svg.selectAll(".node").data(json.nodes).enter()
                        .append("g").attr("class", "node").call(force.drag);

                node.append("image").attr("xlink:href",
                        "https://github.com/favicon.ico").attr("x", -8).attr("y",
                        -8).attr("width", 16).attr("height", 16);

                node.append("text").attr("dx", 12).attr("dy", ".35em").text(
                        function(d) {
                            return d.name
                        });

                force.on("tick", function() {
                            link.attr("x1", function(d) {
                                        return d.source.x;
                                    }).attr("y1", function(d) {
                                        return d.source.y;
                                    }).attr("x2", function(d) {
                                        return d.target.x;
                                    }).attr("y2", function(d) {
                                        return d.target.y;
                                    });

                            node.attr("transform", function(d) {
                                        return "translate(" + d.x + "," + d.y + ")";
                                    });
                        });
            });
        }

    });
    posted @ 2012-09-27 07:38 我愛佳娃 閱讀(4476) | 評論 (0)編輯 收藏
    到這里下載最新PKG:
    http://www.mysql.com/downloads/

    下來后先裝:mysql-5.5.27-osx10.6-x86_64.pkg
    它是裝到/usr/local/mysql,到此目錄運行下:
    ./scripts/mysql_install_db --user mysql

    通過這個啟動:
    ./bin/mysqld_safe

    排錯:
    看下上面的LOG提示.
    Can't find file: './mysql/host.frm' :一般是沒權限,把DATA目錄刪除,再用上面命令建一次
    unknow option:把/etc/my.cnf刪除掉,里面有新版本不認識的上一版本遺留配置
    說mysql.sock找不到,這個版本是在/tmp/目錄下哦!

    再把剩下兩個包裝了,就可以通過配置面板啟動了:
    MySQL.prefPane
    MySQLStartupItem.pkg

    下次升級可能要給下/usr/local/mysql/data目錄的權限
    posted @ 2012-08-05 16:43 我愛佳娃 閱讀(2641) | 評論 (0)編輯 收藏
         摘要: 非常淺顯易懂的PERL編碼說明.
    一目了然PERL編碼,注意是轉的  閱讀全文
    posted @ 2011-10-09 08:04 我愛佳娃 閱讀(3223) | 評論 (0)編輯 收藏

    下面以MAC為例,如果是LINUX需要把DYLD發為LD


    把下面代碼加到代碼開頭,它就可以自啟動了,不需要再EXPORT或者-I


    BEGIN {

            #需要加到LOADPATH的路徑

    my $need = '/usr/local/nagios/pkg/ebase/';


    push @INC, $need;

    if ( $^O !~ /MSWin32/ ) {

    my $ld = $ENV{DYLD_LIBRARY_PATH};

    if ( !$ld ) {

    $ENV{DYLD_LIBRARY_PATH} = $need;

    }

    elsif ( $ld !~ m#(^|:)\Q$need\E(:|$)# ) {

    $ENV{DYLD_LIBRARY_PATH} .= ':' . $need;

    }

    else {

    $need = "";

    }

    if ($need) {

    exec 'env', $^X, $0, @ARGV;

    }

    }

    }

    @import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
    posted @ 2011-10-03 21:37 我愛佳娃 閱讀(1767) | 評論 (0)編輯 收藏

    限制用在自己目文件:

    建立nagiosdnld

    指向軟鏈接:/usr/local/nagios/dnld -> /Users/nagiosdnld/dnld

    編輯/etc/sshd_config


    Match User nagiosdnld

            X11Forwarding no

            AllowTcpForwarding no

            ForceCommand internal-sftp

            ChrootDirectory /Users/nagiosdnld


    下服:

    launchctl stop org.openbsd.ssh-agent

    launchctl start org.openbsd.ssh-agent


    @import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
    posted @ 2011-10-03 03:15 我愛佳娃 閱讀(1810) | 評論 (0)編輯 收藏
         摘要: iostat 輸出解析


    1. /proc/partitions

    對于kernel 2.4, iostat 的數據的主要來源是 /proc/partitions,而對于kernel 2.6, 數據主要來自/proc/diskstats或者/sys/block/[block-device-name]/stat。

    先看看 /proc/partitions 中有些什么。

    # cat /proc/partitions
    major minor #blocks name rio rmerge rsect ruse wio wmerge wsect wuse running use aveq
      閱讀全文
    posted @ 2011-09-17 11:37 我愛佳娃 閱讀(1646) | 評論 (0)編輯 收藏
    @import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); @import url(http://www.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
    編譯:
    修改Makefile.PL:
    $archname="universal64-macosx";

    去除生成的makefile中所有-arch i386 -Werror

    make all


    最后把所有可執行文件拷到同一目錄,再用
    export DYLD_LIBRARY_PATH=/tmp/test
    即可直接運行:

    eb:tmp$ ls ./test/
    Sigar.bundle cpu_info.pl
    Sigar.pm libsigar-universal64-macosx.dylib
    eb:tmp popeyecai$ perl -I./test ./test/cpu_info.pl 
    2 total CPUs..
    Vendor........Intel
    Model.........Macmini4,1
    Mhz...........2660
    Cache size....3072
    Vendor........Intel
    Model.........Macmini4,1
    Mhz...........2660
    Cache size....3072
    posted @ 2011-09-10 10:45 我愛佳娃 閱讀(852) | 評論 (0)編輯 收藏
         摘要: Stl 刪除元素注意事項      STL中的容器按存儲方式分為兩類,一類是按以數組形式存儲的容器(如:vector 、deque);另一類是以不連續的節點形式存儲的容器(如:list、set、map)。在使用erase方法來刪除元素時,需要注意一些問題。      在使用 list、set 或 m...  閱讀全文
    posted @ 2011-07-18 17:02 我愛佳娃 閱讀(1486) | 評論 (0)編輯 收藏
    目的:
    限制用戶在特定目錄(不能看到上級或者根目錄)
    只能執行scp或者sftp拷貝特別目錄下的文件
    不能SSH登陸,其它命令不能執行

    機制:
    SSH登陸成功后,scponly會接管SHELL,并CHROOT到特別目錄,讓用戶“以為”這個目錄就是根目錄
    它只會響應SFTP和SCP命令
    只影響配置SHELL為SCPONLY的用戶,其它用戶不受影響

    MAC下安裝:
    LINUX下安裝SCPONLY非常簡單,不多說,特說下MAC的
    GOOGLE一下scponly,下載解壓后編譯安裝:
    ./configure --enable-chrooted-binary --enable-rsync-compat --enable-scp-compat --enable-sftp-logging-compat --with-sftp-server=/usr/libexec/sftp-server
    make clean all
    sudo make install

    會安裝好:/usr/local/sbin/scponlyc

    用workgroup manager建立下載用戶,比方說是dnld,并配置其login shell到上述路徑

    因為CHROOT后執行的命令都以用戶目錄/Users/dnld做為根目錄,所以要把scponly用到的scp和sftp-server兩個可執行文件和信賴庫拷到其下。以ROOT用戶登錄,且CD至/Users/dnld,執行以下腳本就會把這件事做好:
    perl ./printlib.pl /usr/bin/scp
    perl ./printlib.pl /usr/libexec/sftp-server
    我寫的腳本源碼,自動搜索信賴關系,并在當前目錄建立目錄結構:
    #!/bin/perl
    %result=();
    $result{$ARGV[0]}=1;


    sub addlib{
    @a = `otool -\"$_[0]\"`;
    #print @a;
    for $i (@a){
        
    if ($i =~/\s*([a-z|A-Z|\.|0-9|\/|\+|\-]*)\s*/){
            
    #print "$1\n";
            $result{$1}=1;
        }
    }
    }

    $before  = 1;
    $after = 0;

    while ($before != $after){
    $before = scalar keys %result;

    for $i (keys %result){
        addlib(
    $i);
    }
    $after = scalar keys %result;
    print "before $before, after $after\n";
    }

    for $i (keys %result){
    #print "$i\n";
    if ($i =~ /(.*)\/([~\/]*)/){
    system ("mkdir -p \.$1");
    system ("cp $i \.$1/");

    }
    }


    調試:
    加大LOG級別:
    cat 7 /usr/local/scponly/etc/scponly/debuglevel

    從其它機器或者本機用dnld用戶來拷貝文件,看登陸LOG:
    tail -f /var/log/*

    dstruss類似strace來看進程在做什么

    直接到SCPONLY里加LOG,這個最直接了。
    posted @ 2011-07-13 02:25 我愛佳娃 閱讀(787) | 評論 (0)編輯 收藏
    brew install openssl安裝完SSL庫后,

    Update the configure file for Mac OS X compatibility
    • vim ./configure
    • on line 6673 change the text to read
      • if test -f “$dir/libssl.dylib”; then

    這個是用BREW裝的SSL,貌似MAC下是64位的,這個還用不了:
    ./configure --enable-command-args --with-ssl-inc=/usr/local/Cellar/openssl/0.9.8r/include --with-ssl-lib=/usr/local/Cellar/openssl/0.9.8r/lib

    只能用MAC自帶的成功了:
            ./configure --enable-command-args --with-ssl-inc=/Developer/SDKs/MacOSX10.6.sdk/usr/inclue/openssl --with-ssl-lib=/Developer/SDKs/MacOSX10.6.sdk/usr/lib



    posted @ 2011-06-03 21:29 我愛佳娃 閱讀(390) | 評論 (0)編輯 收藏
    創建如下文件和內容:/etc/yum.repos.d/dag.repo
    運行:yum install rrdtool
    [dag]
    name
    =Dag RPM Repository for Red Hat Enterprise Linux
    baseurl
    =http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
    gpgcheck
    =1
    gpgkey
    =http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
    enabled
    =1
    posted @ 2011-02-03 21:38 我愛佳娃 閱讀(1615) | 評論 (2)編輯 收藏

    SSH和系統兩邊都配置對才行,其實也很簡單:
    用命令:
    dpkg-reconfigure locales

    進去后只選擇zh_CN.UTF-8,并設置成默認字符集。

    再到/root/.bashrc里加上:
    export LC_ALL=zh_CN.UTF-8

    SSH客戶端使用UTF-8字符集,如SECURECRT就在SESSION OPTIONS->APPERANCE->CHARACTER ENCODING里選擇UTF-8


    posted @ 2010-05-08 09:58 我愛佳娃 閱讀(1464) | 評論 (0)編輯 收藏
    一、設置YUM源

    cd /etc/yum.repos.d/ 

    wget http://centos.ustc.edu.cn/CentOS-Base.repo.5 

    mv CentOS-Base.repo.5 CentOS-Base.repo 

    因為默認的配置文件中服務器地址用的版本號是變量$releasever,所以需要將其替換為實際的版本號,否則是無法連接到服務器的,當前CentOS 最新版是5.3,所以我們修改CentOS-Base.repo 

    vi CentOS-Base.repo 

    在vi編輯器中進行全文件替換 

    :%s/$releasever/5.3/

    二、安裝
    1:安裝apache

    yum install httpd httpd-devel


    2:安裝mysql

    yum install mysql mysql-server mysql-devel


    3:安裝php

    yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml

    4:啟動apache

       測試php

       建立以下文件/var/www/html/test.php
       編輯其內容

    // test.php
    <?php
    phpinfo();
    ?>

    5:測試
       在瀏覽器中輸入:http://IP/test.php
       看是否顯示PHP的信息

    6:設置開機啟動

    chkconfig httpd on

    posted @ 2010-04-20 09:56 我愛佳娃 閱讀(2246) | 評論 (0)編輯 收藏
    安裝SAMBA后,配置下面SHARE:
    [popeye]
    path = /
    valid users = root
    read only = no
    public = yes
    writable = yes

    發現可以瀏覽目錄,但不可寫,查了下是SELINUX在作怪,把它禁用即可:
    先實時停止它:
    setenforce 0

    改配置:
    vi /etc/sysconfig/selinux
    修改成:
    SELINUX=disabled



    posted @ 2010-04-07 14:36 我愛佳娃 閱讀(2303) | 評論 (0)編輯 收藏
         摘要: 經過一段時間知識積累后,你可能想在自己的網站建立一個WIKI。WIKI有專用的格式和標記,習慣了用M$的WORD,在它們之間轉換會相當痛苦。
    這里介紹了從各種格式文檔向WIKI轉化的辦法:點這里。  閱讀全文
    posted @ 2010-03-27 12:15 我愛佳娃 閱讀(5211) | 評論 (2)編輯 收藏
    主站蜘蛛池模板: 国产亚洲综合视频| 亚洲免费电影网站| 亚洲精品高清视频| 嫖丰满老熟妇AAAA片免费看| 亚洲久热无码av中文字幕 | 国产亚洲精品影视在线产品| 一级特黄aa毛片免费观看| 亚洲精品国产摄像头| 亚洲成在人线av| 国产精品公开免费视频| 久久国产乱子伦精品免费不卡| 亚洲人成网站色在线观看| 亚洲日韩中文无码久久| 成人免费在线视频| 久久国产精品免费专区| 精品一区二区三区免费毛片| 亚洲精品综合久久中文字幕| 亚洲欧洲久久av| 天天摸夜夜摸成人免费视频| 免费黄网站在线看| 看成年女人免费午夜视频| 亚洲高清免费在线观看| 国产亚洲精品久久久久秋霞| 成年人免费观看视频网站| 亚洲精品免费观看| 一区二区3区免费视频| 亚洲精品伦理熟女国产一区二区 | 在线观看亚洲精品福利片| 成人免费视频小说| **一级毛片免费完整视| 女人隐私秘视频黄www免费| 精品韩国亚洲av无码不卡区| 亚洲一区二区三区高清视频| 亚洲国产精品VA在线看黑人| 亚洲第一页综合图片自拍| 久久久久国色AV免费观看性色| 青青草原1769久久免费播放| 久香草视频在线观看免费| 日韩亚洲人成网站| 亚洲日本va一区二区三区 | 国产麻豆一精品一AV一免费|