發表文章

Python on Ubuntu

設定環境: 在 terminal 中輸入以下指令即可將python interrupt 預設為python3 alias python = python3 alias python=/usr/bin/python3

【Python】py2exe 使用方法教學

圖片
1. 如果你有安裝 pip 的話,可以直接透過 pip install 指令安裝 py2exe 這個套件 2. 在你 要打包的檔案 的 同一個目錄 下, 新增 一個名為 setup.py 的檔案, ---------------------------------------------------------------------- from distutils.core import setup import py2exe setup(console=['?.py']) -----------------------------------------------------------------  註: 其中, ?.py 就是你要打包的檔案名稱,例如  hello.py 。 4.  完成後存檔 5.  接著 開始 -> 執行 -> cmd 6.  切換到你要打包的檔案的目錄下,EX:     在cmd裡輸入  cd /d G:\program\python\src     其中 cd 是進入資料夾的指令              /d  是可以切換到其它磁碟的參數 7.  在cmd裡再輸入  python setup.py install   8.  在cmd裡再一次輸入  python setup.py py2exe 9.  然後你可以發現有build和dist兩個資料夾在你的目錄下,其中dist的?.exe就是我們要的執行檔 註:如果要將程式移到沒有安裝Python直譯器的環境下執行,只要將dist下的所有檔案複製過去執行.exe檔即可 除 py2exe 外,還有另外一種 更簡單的方法 ,只要三步就可以打包 python 檔案喔 !

【Ubuntu 資安】 防火牆:透過 ufw 指令快速設定

圖片
ufw (UncomplicatedFirewall) 是 Ubuntu 內建用來提供給使用者快速設定防火牆的程式,不論是透過SSH連線或GUI  interface 都可以簡單快速的調用。 啟用/停用防火牆功能 指令:   sudo ufw enable 說明:開機即自動啟用防火牆, 如果沒有特別設定,啟用後預設關閉所有連入要求 ----------------------------------------------------- 指令:   sudo ufw disable 說明:關閉防火牆, 同時停止在開機後自動載入 允許與關閉全部連入連線 指令:   sudo ufw default allow 說明:允許 所有的連入要求 ----------------------------------------------------- 指令:   sudo ufw default  deny 說明:拒絕 所有的連入要求 新增防火牆規則 指令: sudo ufw allow  [服務名稱] 說明:允許[服務名稱] 的連入要求 舉例: sudo ufw allow  ftp --------------------------------------------------- 指令: sudo ufw allow in [port] 說明:允許[port] 的連入要求 舉例: sudo ufw allow  in 8080 ----------------------------------------------------- 指令: sudo ufw deny out [port] 說明:拒絕[port] 的連入要求 舉例: sudo ufw     deny out   8080 ------------------------------------------------------ 指令: sudo ufw deny out [port] / [通訊協定] 說明:拒絕使用[通訊協定] [port] 的連入要求 舉例: ...

python3.x & pyhton2.7 選擇,到底要學哪一個?

圖片
基本上在文章開始之前必須先說明: 以python2.7 為界,python2.7 之後的版本是不向下相容的,換句話說:當你使用 python3.x 版你的程式將無法透過python2 的直譯器運行。 雖說概念是相同的,但在細部語法上有著些微的不同,所以直接拿第2版的程式下去直譯是會出錯的。 以下簡略的分析兩著的優缺點以供讀者閱後做選擇: python 2.7  在ubuntu 13.04版本之後預載python3直譯器,但如openstack等伺服器大多運行舊版的本的Linux 系統,所以如果要做系統底層如 process control 等應用或考量與現行serve 的相容性,建議還是以python2.7 為優先考量。 python 3.x 已逐漸成熟,大部分會需要用到的package 都已經從2.7版轉移至3版了,都可以在python 的Library 中找到,網頁所使用的框架 Django 也從第1.5版開始支援python 3.x了,所以在大多數的狀況下已不太需要擔心不相容或找不到python package 可用的窘境。 python Library :  https://docs.python.org/2/library/ 以此紀念一位逐漸離我而去的人。

鄭捷效應 以旅俄觀點淺談設置行李檢查

圖片
【鄭捷效應 羅淑蕾提搭捷運照X光】 〔記者林良昇/台北報導〕立法院院會今處理臨時提案,鄭捷台北捷運隨機殺人案震驚社會,讓捷運治安引發外界討論,捷運警察也擴編因應,國民黨立委羅淑蕾今在立院臨時提案,要求研議以X光機加強安檢作業。 新聞連結: http://news.ltn.com.tw/news/politics/breakingnews/1503680 --------------------------------------------------------------------------------------------------------------------------------------------- 事實上在俄羅斯也是這麼做的,尤其是莫斯科;每個捷運站與火車車站在入口都必須通過爆裂物檢測,而大型車站(如中央車站)甚至必須通過行李檢測完全比照機場。 剛開始是驚訝的,但也漸漸的熟悉他們的生活模式。老實說在那段時間我所體驗到的社會氛圍,這樣的機制是維護人民安全而不是限制或恐嚇人民(前年在北京旅行同樣的事情,那種感覺又是另外一回事)。 但個人觀點是:覺得臺灣還不至於需要到這種程度啦...畢竟俄羅斯也是泱泱大國,有自己的安全考量。而臺灣似乎還沒收到這種國際上的威脅(我是指恐攻之類的事件),因為鄭捷事件而就要設X光有點太過度反應了。 無差別殺人這種問題其實都跟家庭教育有關係的,教育問題如何從家庭跟學校一起改善、改變。 如果說要解決類似的安全問題,倒不如去想想要怎麼解決校園霸凌或家庭的問題以杜絕類似的案件再度發生。

Socket Server (1) 初探

圖片
甚麼是 Socket Server                   凡是網路兩端互相連線傳送資料時的溝通介面就是socket,是一個網路系統的通訊函式庫,在任何作業系統中可以通用。主要的5大函式組成: socket()   bind()  listen()  connect()  accept()  bind()一般用於服務器端,將一個套接字與一個套接字地址結構相關聯,比如,一個指定的PORT和IP地址。 listen()是使Socket進入等待連線狀態,等待客戶端(Client) 連上線來,很顯然的呼叫此函式的主機,功能會是一台伺服器(Server)。 如果有Client想要連過來,此時可以呼叫connect()來跟Server 連線。而Server接受後會建立新的socket和Client通訊,listen socket則繼續存在等待其他Client,直到關閉為止。 ----------------------------------------------------------------------------------------------- TCP 的連線建立概論 Client端若要與Server溝通,必須透過connect建立連線,經過驗證確定連線成功後,才能進行資料傳輸。在TCP的通訊協定中存在著一種三向交握(three-way handshake)機制: Client向Server提出連線要求(connect()) .Server若接到要求,則回應Clinet接到要求 .Client接到回應,向Server表示收到回覆 (Ref: http://mis.bankshung.net/2013/12/port-nmap.html) 至此才算連線建立完成,雙方可以開始交換資料若發生錯誤,則會由轉送中繼站回傳ICMP錯誤訊息connect函式讀到後,會回報錯誤給程式。 -------------------------------------------------------------------------...

【創客】ESP8266 Wi-Fi 模組初探

圖片
在 2014 年底,市場上開始出現一種稱為 ESP8266 的 Wi-Fi 無線通訊模組, 他是一種透過 UART 轉 Wi-Fi 的 SoC ( System on Chip )模組 憑藉著極低的購置成本(新台幣 200 元以下),讓自造者可以用很低的成本為其產品加上 Wi-Fi 無線通訊能力。在這個強調物物相連的物聯網時代裡,此一廉價可靠的 Wi-Fi 通訊模組不啻為增強自造產品的優良選擇。 ----------------------------------------------------------------------------------------------------------- ESP8266 Wifi 通訊模組 – 體積小、價格便宜 ( 約 100~200 台幣 ) – 本身可連線到無線網路,也可以自己成為 AP( 無線網路基地台 ) – 支援 TCP 和 UDP 通訊協定 – 可在無線區域網路中扮演伺服器 (Server) 等待連線或扮演客戶端 (Client) 與 Server 連線。 ------------------------------------------------------------------------------------------------------------- ESP8266 接腳腳位   接腳介紹:   CH_PD :晶片致能,需要接 VCC 才能夠使用   VCC :高電位( 3.3V , 若接 5V 會燒壞 )   GND :低電位 (Ref: http://mcuoneclipse.com/) ---------------------------------------------- ------------------------------------------------------------------------