python 2.7.5 auto login

No Comments

PyDev.nic.twbbs.org

Installed CentOS 7 (64bit) mini-install

log:

yum update -y ; yum upgpgrade -y
yum install vim

REF:https://www.liquidweb.com/kb/how-to-install-pip-on-centos-7/
Step #1: Add the EPEL Repository

yum install epel-release
yum -y update ; yum -y install python-pip
pip install mechanize
pip install --upgrade pip

建立一個以python自動登入的小程式
REF: https://blog.ephrain.net/webpython-%E4%BD%BF%E7%94%A8-mechanize-%E8%87%AA%E5%8B%95%E7%99%BB%E5%85%A5%E7%B6%B2%E7%AB%99-/

# codning: UTF-8
import mechanize
br = mechanize.Browser()
br.set_handle_robots(False)
br.set_debug_http(True)
br.set_debug_responses(True)
br.set_debug_redirects(True)

# Add
br.addheaders = [("Accept-Language", "zh-TW,zh;q=0.8")]

# Add User-Agent
br.addheaders = [("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.11                         5 Safari/537.36")]

# Browse to login page
#br.open('https://login.yahoo.com/config/login')
#br.open('https://nm.udn.twbbs.org/cacti/')
#br.open('https://member.pixnet.cc/login/verify')
br.open('https://shopping.udn.com/mall/cus/meb/Cc1m02.inw?dc_btn_0=Func_Logon_QuickView')

# Select login form
#br.select_form(nr=0)
br.select_form(nr=0)


# Fill in username and password, submit
br["dc_email_0"] = "joe.chc@udngroup.com"
br["dc_pswd_0"] = "uIM106Joe"
br.submit()
print("#####################################################")
links = br.links()
print(links)
member_center = [l for l in br.links() if l.url.startswith("https://shopping.udn.com/mall/cus/meb/Cc1m05")][0]

# Browse to memberpage
br.follow_link(member_center)
webcontent = br.response().get_data()
print(webcontent)
#webcontent = br.response().get_data()
#print(webcontent)


## Find out the link to mail
#link_mail = [l for l in br.links() if l.url.startswith("http://mail.yahoo.com")][0]
## Browse to mail page
#br.follow_link(link_mail)
#with open("output.htm", "w") as f:
#f.write(br.response().get_data())

[shell] 利用 ssh 對遠端主機執行命令

No Comments

首要條件是, 遠端主機能接受ssh免密碼登入

#!/bin/bash

if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ] || [ -z "$4" ] ; then
        echo "No setting(s)"
        echo "Example: $0 131 138 \"lscpu | grep \\\"Model\|CPU(s):\\\"\" {username for login}"
        exit 0
else
        network="10.20.51"
        echo "################################################################################"
        echo "###################   Network to check: \"$network/24\"    #######################"
        echo "################################################################################"

        for ipnum in $(seq "$1" "$2")
        do
                echo "================================================================================"
                echo "Now checking $network.$ipnum"
                ssh $4@$network.$ipnum "$3"
        done
        echo "################################################################################"
fi

[tshark] remote capture by compliming

No Comments

REF: http://wsunccake.pixnet.net/blog/post/110857051

# yum install flex glib2-devel gtk3-devel c-ares-devel libsmi-devel GeoIP-devel libssh2-devel lua-devel libssh-devel gnutls-devel libgcrypt-devel openssl-devel portaudio-devel libnl-devel

exsample
./configure –with-pcap –with-pcap-remote –without-lua –disable-wireshark –disable-packet-editor –disable-androiddump –disable-ipv6 –with-qt=no –with-gtk2=no –with-gtk3=no –enable-shared

編譯過程可能會出現失敗, 需要 remote-ext.h
可複製一分過去
cp /root/winpcap/wpcap/libpcap/remote-ext.h /usr/local/include/remote-ext.h

[python] 學習網站

No Comments

菜鳥教程

廖雪峰的python教程

[python][lession 1]

No Comments

# encoding: utf-8

import os

# 定義 main 這個 function
def main():
    # 次一級要空兩格
#    print 'Hello, Joe.'    # 只有 py2 可用
    print('Hello, Joe.')    # py2, py3 通用


    # 利用 import 進來的函式, 做為變數
#    print 'Running path: '+os.getcwd()
    print('Running path: '+os.getcwd())

    # 把 value 賦予某個變數 counter
    counter = 0
    counter += 1
    # 字串相加, 數值相加
    #print str(counter)+"1"
    #print counter+1
    print(str(counter)+"1")
    print(counter+1)

    # 列印分隔, 並重複10次列印內容
    #print "==" * 10
    print("==" * 10)
    # count to 10
    for i in range(9):
        #print i
        print(i)

    # 列印分隔, 並重複10次列印內容
    #print "==" * 10
    print("==" * 10)

    # 建立一個名為 fruit 的陣列名稱, 並填入陣列的內容
    fruit = ['apple','梨子']
    for i in fruit:
        #print i
        print(i)

# 執行 main 這個 function
main()

[zabbix][R] zabbix_sender sends multi-line value

No Comments

https://support.zabbix.com/browse/ZBXNEXT-2158

 

[root@zbxsrv tmp]# zabbix_sender -s zbxsrv -z zbxsrv -k ‘test[1 2 3]’ -o $‘line 1\nline 2′ -v
info from server: “processed: 1; failed: 0; total: 1; seconds spent: 0.000076″
sent: 1; skipped: 0; total: 1

[vmware][vcb][backup] 利用 ghettoVCB 進行 vmware Esxi 6.5 的guest os備分及還原

No Comments

參考來源:
備分: https://sc8log.blogspot.tw/2016/12/ghettovcb-esxi-guest-os_16.html
還原: https://sc8log.blogspot.tw/2016/12/ghettovcb-esxi-guest-os.html

備分

指令範例

cd /vmfs/volumes/datastore1/ghettoVCB_sh
./bin/ghettoVCB.sh -g ./backup-IMKM.conf -m imkm.udngroup.com

還原

範例指令

/vmfs/volumes/datastore1/ghettoVCB_sh/bin/ghettoVCB-restore.sh -c /vmfs/volumes/datastore1/ghettoVCB_sh/restore-IMKM.conf

設定檔 /vmfs/volumes/datastore1/ghettoVCB_sh/restore-IMKM.conf

# DISK_FORMATS
# 1 = zeroedthick  (一次給足全部的硬碟大小,需要時才初使化未使用的空間)
# 2 = 2gbsparse  (將硬碟分割成多個 2G 的硬碟)
# 3 = thin  (隨著使用量而增加硬碟大小,達到設定上限時就不會在增加)
# 4 = eagerzeroedthick  (一次給足全部的硬碟大小(刪除所有的資料),已初始化可直接使用)
#"/vmfs/volumes/vm-bak/pentaho/pentaho-2017-06-06_03-41-17;/vmfs/volumes/datastore1/restored;3"
#"/vmfs/volumes/vm-bak/imkm.udngroup.com/imkm.udngroup.com-2017-06-07_04-05-32;/vmfs/volumes/datastore1/restored;3"
"/vmfs/volumes/vm-bak/imkm.udngroup.com/imkm.udngroup.com-2017-06-09_07-40-57;/vmfs/volumes/datastore1/restored;3"

每日自動執行
因為 Esxi 沒有內建 crontab 程式, 目前以外部 linux 的 crontab 登入執行
參考了 http://blog.faq-book.com/?p=6180 (幫助不大)

在 host A 編寫

#!/usr/bin/expect
spawn ssh "root@esxihost"
expect "*assword: "
send -- "yourpassword\n"
expect "\[root@esxihost:~\] "
#send -- "hostname\n"
send -- "/bin/sh /vmfs/volumes/datastore1/ghettoVCB/bin/ghettoVCB.sh -g /vmfs/volumes/datastore1/ghettoVCB/backup-IMKM.conf -m imkm.udngroup.com\n"
expect eof

為便於檢查目前已備分的 guest OS, 另外在備分完的時候, 同時檢查目前佔用的容量

#!/usr/bin/expect
spawn ssh "root@esxihost"
expect "*assword: "
send -- "yourpassword\n"
expect "\[root@esxihost:*"
send -- "/bin/du -sh /vmfs/volumes/vm-bak/imkm.udngroup.com/* > /vmfs/volumes/vm-bak/\`date +%Y%m%d-%H%M%S%Z\`-space.log\n"
expect "\[root@esxihost:*"
send -- "exit\n"
expect eof

然後在 host-A 增加一組 crontab 設定
0 23 * * * (/home/userA/scripts/ssh-esxi.sh; /home/userA/scripts/ssh-esxi-log.sh)

Older Entries