自由學習的風

幽夢影 張潮 少年讀書,如隙中窺月;中年讀書,如庭中望月;老年讀書,如臺上玩月。皆以閱歷之淺深,為所得之淺深耳。

[Ubuntu] 設定 scratch2 檔案關聯

2016年12月30日 星期五



資料來源:https://scratch.mit.edu/discuss/topic/187916/


1. define .sb2 file's type

sudo vi /usr/share/mime/package/***.xml

*** is new file's name. Set is as you like. ex)scratch2

write text below in the file




<?xml version=“1.0” encoding=“UTF-8”?>

<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info“>

<mime-type type=”application/x-scratch2“>

<comment></comment>

<glob pattern=”*.sb2“/>

</mime-type>

</mime-info>




2. associate .sb2 file with scratch 2 application

Find ”edu.media.mit.scratch2editor.desktop" file under directory of /usr/share/applications/ ,

and add only one line in the last line of that desktop file.

MimeType=application/x-scratch2




3. update
sudo update-desktop-databese
sudo update-mime-database

4. change sb2 file's icon
sudo cp /opt/Scratch\ 2/share/icons/ProjectIcon48.png /usr/share/icons/gnome/scalable/mimetypes/application-x-scratch2.png

(參考:http://wiki.ubuntu.com.cn/UbuntuHelp:AddingMimeTypes)

5. 更新圖示cache
sudo gtk-update-icon-cache  /usr/share/icons/gnome/ -f

4. reboot PC




[PHP] Composer 取消 SSL/TLS 連線

2016年12月19日 星期一

Composer 把安全性提高,要求 SSL/TLS 才能更新,不然就會出現錯誤訊息並中斷。


如果沒有辦法設定 SSL/TLS 連線的話,可以執行下列的指令,變更預設值讓 composer 可以先執行。
(註:正常上線環境 **建議** 不要取消 SSL/TLS 喔)


composer config -g -- disable-tls true
composer config -g -- secure-http false

Linux 軟體套件格式 - Flatpak, Appimage And Snap – How Do They Stack?

2016年12月13日 星期二

Flatpak, Appimage And Snap – How Do They Stack?

原文網址:http://news.tecmint.com/flatpak-appimage-and-snap-how-do-they-stack/



相關網址:

CSS 選擇器

2016年12月11日 星期日


CSS 1

  • 類型: p {...}、blockqote {...}
  • 後代結合器: blockquote p { ...}
  • ID: <article id="content"> ==>  #content
  • 類別: <article class="hentry"> ==> .hentry
  • 連結擬類別:a:link {...}、a:visited {...}
  • 使用者動作擬類別: a:active {...}
  • :first-line 擬元素:p:first-line {...}
  • :first-letter 擬元素: p:first-letter {...}
CSS 2.1
  • 通用:* {...}
  • 使用者動作擬類別:a:hover {...} 和 a:focus {...}
  • :lang() 擬類別: article:lang(fr) {...}
  • 結構擬類別:p:first-child {...}
  • :before 和 :after 擬元素: blockquote:before {...}, a:after {...}
  • 子代結合器: h2 > p {...}
  • 同層相鄰結合器: h2 + p {...}
  • 屬性選擇器: input [required] {...}
  • 屬性選擇器(完全等同):input [type="checkbox"] {...}
  • 匹配次字串的屬性選擇器,連字號分隔,開頭需等同於字串: input [lang |= "en"] {...}
CSS3
  • 一般同層結合器: h1 ~ pre {...}
  • 次字串屬性選擇器,以某字串開頭:a[href^="http://"] {...}
  • 次字串屬性選擇器,以某字串結束:a[href$=".pdf"] {...}
  • 次字串屬性選擇器,包含某字串:a[href*="twitter"] {...}
  • :target()擬類別:section:target {...}
  • 結構擬類別,:nth-child:tr:nth-child(even) td {...}
  • 結構擬類別,:nth-last-child:tr:nth-last-child(-n+5) td{...}
  • 結構擬類別,:last-child:ul li:last-child {...
  • 結構擬類別,:only-child:ul li:only-child {...}
  • 結構擬類別,:first-of-type:p:first-of-type {...}
  • 結構擬類別,:last-of-type:p:last-of-type {...}
  • 結構擬類別,:nth-of-type:li:nth-of-type(3n) {...}
  • 結構擬類別,:nth-last-of-type:li:nth-last-of-type(1) {...}
  • 結構擬類別,:only-of-type: article img:only-of-type {...}
  • 結構擬類別,:empty: aside:empty {...}
  • 結構擬類別,:root: :root {...}
  • 使用者介面元素狀態擬類別,:disabled, :enabled: input:disabled {...}
  • 使用者介面元素狀態擬類別,:checked: input[type="checkbox"]:checked {...}
  • 否定擬類別::not : abbr:not([title]) {...}


HTMl5 表單屬性



  • placeholder
  • autofocus
  • autocomplete
  • required
  • pattern
    <input pattern="[0-9][A-Z]{3}" name="product" type="text" />
  • list
  • datalist
  • input type
    • search
    • email
    • url
    • tel
    • number
    • range
    • date
    • month
    • week
    • time
    • datetime
    • datetime-local
    • color

Ubuntu 移除不需要的語系

2016年12月9日 星期五

列出目前的語系

locale -a
or
localedef --list-archive

移除不需要的語系

sudo locale-gen --purge en_US.UTF-8 zh_TW.UTF-8 && echo Success



[javascript] 新增、移除物件中的元素

2016年11月28日 星期一

新增成為最後一個:
.push( obj )
移除最後一個元素:
.pop()
從 x 元素開始移除 y 個元素:
.splice( x, y )
從 x 元素新增 元素:
.splice(x, 0, obj  )

example:
var data = {[
    {readerid: '100001', name: "吳一英 ", classname: "601"},
    {readerid: '100002', name: "吳二英 ", classname: "602"},
    {readerid: '100003', name: "吳三英 ", classname: "603"},
    {readerid: '100004', name: "吳四英 ", classname: "604"}
]};
data.splice( 2, 0,
    {readerid: '100005', name: "吳小英 ", classname: "605"}
);    

結果:
var data = {[
    {readerid: '100001', name: "吳一英 ", classname: "601"},
    {readerid: '100002', name: "吳二英 ", classname: "602"},
    {readerid: '100003', name: "吳小英 ", classname: "605"},    {readerid: '100004', name: "吳三英 ", classname: "603"},
    {readerid: '100005', name: "吳四英 ", classname: "604"}
]};

若有資料可以對應物件內的資料的話,可以利用 jquery 的語法來快速移除某個元素
var elm_readerid = 'aaa';
data = $.grep( data, function(e) {
    return e.readerid != elm_readerid;
});



[轉] 13 Best File Managers for Linux Systems

2016年11月17日 星期四

原文:http://www.tecmint.com/top-best-lightweight-linux-file-managers/

「13 個 Linux 最佳的檔案管理員」這個標題很吸引我,可惜,雖然說是 13 個,不過,用得最多的還是 Nautilus,MC 也不錯,不過,它是 Console 模式,所以反而不常用。

我自己也有找過幾個 File Manager,覺得還不錯,順便提供給大家參考:
1. Double Commander(win, linux, mac, freebsd) http://doublecmd.sourceforge.net/
2. Sun Flower(linux)  http://sunflower-fm.org/
3. Free Commander(win) https://freecommander.com/en/summary/

PS: total commander 和 ab commander 也很優,不過,TC快速鍵不習慣,AB要 $$,後來就沒接觸了


DNS 部分網域無法解析

2016年11月10日 星期四

OS: Debian GNU/Linux 7.11 (wheezy)

早上出現一個 case,只有 ntpc.edu.tw 的網域名無法解析,但是其它網域都 OK,看了一下 記錄資料,發現在 「error: No valid DS」的訊息。

這是 DNSSEC 未設定好的原因,先把本機的 named.config.options 設定檔中有關 dnssec 的設定修改如下:

dnssec-enable no;
dnssec-validation no;
然後再把 dns 重新啟動,就正常囉!
持續觀察…

[MySQL] MySQL預設編碼

2016年10月31日 星期一

指令:
SET NAMES 'utf8';
SET CHARACTER SET utf8;

設定檔 my.cnf:
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8


Ubuntu 裝在 SSD 硬碟的注意事項

2016年10月30日 星期日

1. 寫入磁碟極少化 (也是最重要的一點)
在/etc/fstab 裡加入nodiratimenoatime

2. 啟用 TRIM 功能
在 /etc/cron.weekly/fstrim 裡加入 exec fstrim-all --no-model-check

[MySQL] 升級 MySQL 5.7 後,資料庫會出現錯誤訊息

2016年10月28日 星期五

錯誤訊息:

1577 - Cannot proceed because system tables used by Event Scheduler were found damaged at server start

解決辦法1. 移除 mysql 資料庫中的資料庫

  •  innodb_index_stats
  •  innodb_table_stats
  •  slave_master_info
  •  slave_relay_log_info
  •  slave_worker_info
2. 在磁碟中找到 步驟1 中相同資料表名的 *.frm 和 *.ibd 的檔案

3. 利用下列的查詢語法來建立資料表
CREATE TABLE `innodb_index_stats` (
  `database_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `table_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `index_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `stat_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `stat_value` bigint(20) unsigned NOT NULL,
  `sample_size` bigint(20) unsigned DEFAULT NULL,
  `stat_description` varchar(1024) COLLATE utf8_bin NOT NULL,
  PRIMARY KEY (`database_name`,`table_name`,`index_name`,`stat_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0;
CREATE TABLE `innodb_table_stats` (
  `database_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `table_name` varchar(64) COLLATE utf8_bin NOT NULL,
  `last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `n_rows` bigint(20) unsigned NOT NULL,
  `clustered_index_size` bigint(20) unsigned NOT NULL,
  `sum_of_other_index_sizes` bigint(20) unsigned NOT NULL,
  PRIMARY KEY (`database_name`,`table_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0;
CREATE TABLE `slave_master_info` (
  `Number_of_lines` int(10) unsigned NOT NULL COMMENT 'Number of lines in the file.',
  `Master_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT 'The name of the master binary log currently being read from the master.',
  `Master_log_pos` bigint(20) unsigned NOT NULL COMMENT 'The master log position of the last read event.',
  `Host` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT 'The host name of the master.',
  `User_name` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The user name used to connect to the master.',
  `User_password` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The password used to connect to the master.',
  `Port` int(10) unsigned NOT NULL COMMENT 'The network port used to connect to the master.',
  `Connect_retry` int(10) unsigned NOT NULL COMMENT 'The period (in seconds) that the slave will wait before trying to reconnect to the master.',
  `Enabled_ssl` tinyint(1) NOT NULL COMMENT 'Indicates whether the server supports SSL connections.',
  `Ssl_ca` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The file used for the Certificate Authority (CA) certificate.',
  `Ssl_capath` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The path to the Certificate Authority (CA) certificates.',
  `Ssl_cert` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The name of the SSL certificate file.',
  `Ssl_cipher` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The name of the cipher in use for the SSL connection.',
  `Ssl_key` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The name of the SSL key file.',
  `Ssl_verify_server_cert` tinyint(1) NOT NULL COMMENT 'Whether to verify the server certificate.',
  `Heartbeat` float NOT NULL,
  `Bind` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'Displays which interface is employed when connecting to the MySQL server',
  `Ignored_server_ids` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The number of server IDs to be ignored, followed by the actual server IDs',
  `Uuid` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The master server uuid.',
  `Retry_count` bigint(20) unsigned NOT NULL COMMENT 'Number of reconnect attempts, to the master, before giving up.',
  `Ssl_crl` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The file used for the Certificate Revocation List (CRL)',
  `Ssl_crlpath` text CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The path used for Certificate Revocation List (CRL) files',
  `Enabled_auto_position` tinyint(1) NOT NULL COMMENT 'Indicates whether GTIDs will be used to retrieve events from the master.',
  PRIMARY KEY (`Host`,`Port`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Master Information';
CREATE TABLE `slave_relay_log_info` (
  `Number_of_lines` int(10) unsigned NOT NULL COMMENT 'Number of lines in the file or rows in the table. Used to version table definitions.',
  `Relay_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT 'The name of the current relay log file.',
  `Relay_log_pos` bigint(20) unsigned NOT NULL COMMENT 'The relay log position of the last executed event.',
  `Master_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT 'The name of the master binary log file from which the events in the relay log file were read.',
  `Master_log_pos` bigint(20) unsigned NOT NULL COMMENT 'The master log position of the last executed event.',
  `Sql_delay` int(11) NOT NULL COMMENT 'The number of seconds that the slave must lag behind the master.',
  `Number_of_workers` int(10) unsigned NOT NULL,
  `Id` int(10) unsigned NOT NULL COMMENT 'Internal Id that uniquely identifies this record.',
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Relay Log Information';
CREATE TABLE `slave_worker_info` (
  `Id` int(10) unsigned NOT NULL,
  `Relay_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `Relay_log_pos` bigint(20) unsigned NOT NULL,
  `Master_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `Master_log_pos` bigint(20) unsigned NOT NULL,
  `Checkpoint_relay_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `Checkpoint_relay_log_pos` bigint(20) unsigned NOT NULL,
  `Checkpoint_master_log_name` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `Checkpoint_master_log_pos` bigint(20) unsigned NOT NULL,
  `Checkpoint_seqno` int(10) unsigned NOT NULL,
  `Checkpoint_group_size` int(10) unsigned NOT NULL,
  `Checkpoint_group_bitmap` blob NOT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Worker Information';
4. 重新啟動 mysql server

教育相關新聞、影片

2016年10月27日 星期四


  • 資訊教育成果-自由軟體 https://www.youtube.com/watch?v=ERvwEp-KUQs

JS 學習資源

學習資源

  • Angular 2 Tutorial For Beginners   https://angular-university.io/course/getting-started-with-angular2
  • Build your first Node.js website, Part 1  https://www.ibm.com/developerworks/library/wa-simplenode1-app/
  • CREATING A SIMPLE RESTFUL WEB APP WITH NODE.JS, EXPRESS, AND MONGODB  http://cwbuecheler.com/web/tutorials/2014/restful-web-app-node-express-mongodb/

CodeIgniter 可用套件

2016年10月23日 星期日

做個記錄,免得下次得重新


  • Eloquent ORM with Codeigniter 3:   "illuminate/database": "5.0.28"

CI專案搬回家裡開發時,一開始就 GG 了

2016年10月22日 星期六

原本用 CodeIgniter 3 寫的 php,搬回家後竟然出問題

看了一下,咦!?mysqli 有問題,查了一下Google,原來是自己小白,把 php5-mysqlnd 裝上,重新啟動 apache2,嘿!正常!

Windows 2012 Server Core

2016年9月28日 星期三

先簡單試了一下 Windows Server 2012 Core,果然很精簡,不過,只有一個 console,還真不知道該從何下手…

先找找資料繼續試試了…


如何在 shell 中產生 urlencode 字串

2016年9月25日 星期日

從 stack overflow 找到的技法,超讚的,一行解決。

設定
$ alias urldecode='python -c "import sys, urllib as ul; \
    print ul.unquote_plus(sys.argv[1])"'

$ alias urlencode='python -c "import sys, urllib as ul; \
    print ul.quote_plus(sys.argv[1])"'
使用
$ urlencode 'file:///media/bob/MyUSB/我的資料夾'
file%3A%2F%2F%2Fmedia%2Fbob%2FMyUSB%2F%E6%88%91%E7%9A%84%E8%B3%87%E6%96%99%E5%A4%BE

[轉].Net Framework 的歷史和主要特色

2016年7月19日 星期二

原文:http://www.kunal-chowdhury.com/2016/06/microsoft-dotnet-framework.html

.NET VersionCLR VersionIDE ReleasedRelease DateKey Features
.NET 1.01.0Visual Studio .NET13-Feb-2002- DLL libraries
- Support for object oriented web app dev
.NET 1.11.1Visual Studio .NET 200324-Apr-2003- Enhancements to ASP.NET and ADO.NET
- Support for built-in mobile ASP.NET controls
- Security enhancement for WinForm, ASP.NET
- Support for ODBC and other databases
- Support for IPV6 (Internet Protocol Version 6)
- .NET Compact Framework for small devices
.NET 2.02.0Visual Studio 200507-Nov-2005- Generics
- Generic collections
- Partial class
- Nullable types
- Anonymous methods
- Iterators
- Data tables
- Membership providers
- New controls and features for ASP.NET
- Support for 64-bit computing
- Microsoft SQL Server integration
- .NET Micro Framework for SPOT
.NET 3.02.0Visual Studio 200506-Nov-2006- WPF (Windows Presentation Foundation
- WCF (Windows Communication Foundation
- WWF (Windows Workflow Foundation)
- Windows CardSpace
.NET 3.52.0Visual Studio 200819-Nov-2007- LINQ
- Dynamic data
- AJAX support
- Multi targeting framework
.NET 4.04.0Visual Studio 201012-Apr-2010- MEF (Managed Extensibility Framework)
- DLR (Dynamic Language Runtime)
- Task parallel library
- Support for Coe Contracts
.NET 4.54.0Visual Studio 201215-Aug-2012- CLR 4.0 enhanced
- Built-in support to Async
- Support for Windows Store (Metro) app dev
- WPF, WCF, WWF enhanced
- ASP.NET support enhanced
- Native support for Zip compression
.NET 4.5.14.0Visual Studio 201317-Oct-2013- Support for automatic binding redirection
- Improvements towards performance, debugging
- Expanded support for Windows Store app dev
.NET 4.5.24.0Visual Studio 201305-May-2014- Improvements for high DPI scenarios
- Higher reliability HTTP header inspection
.NET 4.64.0Visual Studio 201520-Jul-2015- A new JIT compiler named RyuJIT, for 64-bit
- Support for code page encodings
- Open source .NET framework packages
- Event tracing improvements
- Support fo TLS 1.1 and TLS 1.2
.NET 4.6.14.0Visual Studio 2015 Update 117-Nov-2015- WPF improvements for spell check
- Enhanced support for Digital Signature algo
- Support for always ON SQL connectivity
- Distributed transactions in Azure SQL database
- Performance, stability, reliability improvements
.NET 4.6.2
(Preview)
4.0- TLS 1.1 and TLS 1.2 support for ClickOnce
- Support for additional cryptographic standards
- Soft keyboard, per monitor DPI support for WPF
and
Evolution of C# (1.0 - 6.0) - www.kunal-chowdhury.com 

kickstart 參考

2016年7月15日 星期五

Ubuntu 安裝的預設或自動安裝的相關設定…

[轉貼] PHP 錯誤開發習慣

2016年7月13日 星期三

via 網站製作學習雜記
應用程式層面
1. 在開發時將錯誤回報關閉。
2. 用 @ 號抑制錯誤。3. 在程式中沒有任何 log 記錄。4. 沒有實作任何快取。5. 忽視最佳實踐與設計模式。6. 沒有採用自動化測試。7. 沒有請同事檢視與審查你的程式。8. 程式只處理了理想狀況。9. 沒有正確使用物件導向開發原則。10. 寫完即上傳到線上環境,沒有經過版控。資料庫層面
1. 沒有讀寫分離。
2. 程式中只用一個連線操作。
3. 沒有對意外狀況來測試查詢。
4. 沒有對資料表建立索引。
5. 沒有使用交易。
6. 沒有保護敏感資訊。
架構設計層面
1. 沒有區分開發環境。
2. 沒有備援機制。
3. 沒有監看系統。
https://www.sitepoint.com/18-critical-oversights-web-devel…/

HTTP 回傳狀態碼對照表

2016年6月30日 星期四


[ESXi] ESXi 外部儲存區(iSCSI) 驚魂記

2016年6月29日 星期三

最近好像應該去買綠乖乖,這幾天又來了一次驚心動魄離魂記!
從星期一17:30 學校謝師宴,不過,17:10 機房、電腦教室突然斷電,似乎就有一點預兆…
20:30 回去學校,台電工程人員走了,可是電還是沒有來,據說換了兩、三座電塔,只能隔天再來開機檢查了
隔天(星期二)開機,就是一陣兵荒馬亂,好在之前有備份虛擬機,很快把備用機 ON 起來,問題來了,DATA 磁碟太大,上一次備份是半年前,同步備份不是沒有,但是卻放在同一台 NAS 上(唉!常叫人備份,結果自己還是漏了)。問題來了,這一台 NAS 開 iSCSI,結果 ESXi 看得到,也連得上,但是就是無法出現在儲存區,手動新增磁碟的話,倒是顯示可以加進來,但是最後會格式化呀!
我的媽呀! 2.5TB 啊…
換一台 ESXi 來連也一樣,但是進 NAS 管理介面都是正常,找了教研 ESXi 高手來看,也說沒遇到這樣的問題,問題是這個磁碟有顯示使用容量,感覺應該正常,不死心就從星期二一早忙到今天,喔!忘了說,還得加上機房冷氣機板故障,邊搶救資料,還一邊擔心會不會因為溫度過高,讓硬碟爆掉…
呼!還好總算都回來了…
嚇死寶寶了

參考資料:

Ubuntu 16.04 把網卡名稱改為舊的命名方式( eth0...)

2016年6月6日 星期一

最近測試 Ubuntu 16.04 LTS 之後才發現,網卡的命名方式改了,不過,好像從  15.10 就開始了,不過,實在不太習慣這種方式,找了一下資料,還是把它改回來。

1. 修改 /etc/default/grub
$ sudo nano /etc/default/grub
找到「GRUB_CMDLINE_LINUX=""」,加入參數「net.ifnames=0  biosdevname=0




2. 產生新的 grub.cfg 開機設定檔
$ sudo grub-mkconfig -o /boot/grub/grub.cfg

3. 如果網路是走 DHCP 的話,直接重新啟動電腦,應該網卡代號就會變回原來 eth0 的樣子.




4. 如果是走靜態 IP 的話,重新開機前還要去 /etc/network/interfaces 將原本的網卡代號改成 eth0





Arch Linux 在虛擬機中安裝 vmware tools

Arch Linux 裝在 vmware 虛擬機裡,安裝 vmware 原生的 vmware-tools 有點不順,因為 arch linux 後來走 systemd 之後,不曉得在哪一次的更新,就拿掉 rc0.d ~ rc5.d 的自動啟動機制,所以 vmware-tools 的安裝過程中,會卡在這個地方。

所以就安裝非官方的 open-vm-tools,目前運作還算正常
# pacman -S open-vm-tools
# cat /proc/version > /etc/arch-release
# systemctl  enable vmtoolsd
# systemctl  start vmtoolsd  (立即啟動 open-vm-tools) 




Arch Linux 安裝 yaourt (非官方套件管理員)

yaourt ( yet another user repository tool)

修改 /etc/pacman.conf

1. 在文件最底下加入下列資訊:
[archlinuxcn]
SigLevel = Never
Server = http://repo.archlinuxcn.org/$arch

2. 取消 [multilib] 的註解
[multilib]
Include = /etc/pacman.d/mirrorlist

3. 安裝  base-devel 套件組
# pacman -Sy base-devel

4. 利用 pacman 安裝 yaourt
# pacman -S yaourt





參考:

避免引用外部 JS framework 或 css library 被 Chrome 阻擋

2016年3月13日 星期日

格式:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' {URL} ">

如果引用 maps.googleapis.com,那就用下列的 TAG 來通知 Chrome不要阻擋
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline' ; script-src 'self' 'unsafe-inline' https://maps.googleapis.com ">


網站參考:
Content Security Policy

OData 開放資料

2016年3月2日 星期三

指定單位(代碼):
https://odata.ntpc.edu.tw/api/schools/[學校代碼]
ex:
https://odata.ntpc.edu.tw/api/schools/014610

篩選:
https://odata.ntpc.edu.tw/api/schools/?$filter=indexof(Address,'中山路') ge 0&$orderby=Alias 
https://odata.ntpc.edu.tw/api/schools/?$filter=indexof(Alias,'樹林') ge 0&$orderby=Alias 
https://odata.ntpc.edu.tw/api/schools/?$filter=indexof(District,'板橋') ge 0

回傳型態:

  • XML:預設
  • JSON:
https://odata.ntpc.edu.tw/api/schools/014613?$format=JSON
使用者:
https://odata.ntpc.edu.tw/api/users
帳號登出:

https://odata.ntpc.edu.tw/api/users/logout.aspx
影片:
 https://odata.ntpc.edu.tw/api/videos

取消 composer 出現 xdebug enbale 的訊息

今天執行 composer 時會多出一段訊息:
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
雖然還是正常執行,但是看出來有點怪,可以執行下列指令後把此段訊息取消
sudo php5dismod -s cli xdebug

透過 ssh 備份 mysql 資料庫至另一台伺服器

2016年1月20日 星期三

mysqldump -uUSERnAME -p'PASSWORD' YOUR-DATABASE-NAME | ssh user@remote.server.com "dd of=/home/backup-db/db-mysql-test-$(date +'%d-%m-%y').sql"

轉:使用Mysqldump備份與如何還原資料庫

2016年1月19日 星期二

資料來源:TAIWAN DBA Forum

使用mysqldump 指令備份資料庫,會產生一長串重建資料庫所需的SQL指令...
( 站長使用 MySQL 5 )
產生的指令前面的SET會先存下目前的字集設定,然後將字集改成Unicode(UTF8) <-- 這個方便的是 若要轉移到其他資料庫的話  比較不需要為字集煩惱
-- 備份某個資料庫
# mysqldump -u root -p db_name > backup.sql;
-- 備份資料庫中的某個資料表
# mysqldump -u root -p db_name table_name > backup.sql;
-- 備份所有資料庫
# mysqldump -u root -p --all-databases > backup.sql;
-- 復原一個資料庫 (需先建好db_name 這個資料庫, 若沒建立請先執行 mysqladmin create db_name 建立即可)
# mysql -u root -p db_name < backup.sql
-- 復原多個資料庫 ( 因為backup.sql 內已有 CREATE DATABASE指令,因此不需先建DB)
# mysql -u root -p < backup.sql
注意:
因為新版mysqldump預設會使用UTF8,所以還原較沒問題, 若為舊版的mysqldump, 則需要使用--default-character-set 指定字集
# mysql -u root -p --default-character-set=latin1 db_name < backup.sql