Archive for the 'Computer' Category

*NEVER* remove coreutils

不小心為了解決 gentoo 下的 block 問題而 remove 了 coreutils 浪費很多時間 -_-像這種東西應該要提示使用者萬萬不能 remove 的阿…倒數完了就 remove 沒啥太大作用吧 (翻桌)
所以稍微 note 一下, 別再不小心幹掉 coreutils 了 :~

NOTE: 如果不小心發生一樣的慘狀,就去 package server 撈 binary 回來救吧

  1. wget coreutil-X.XX-rN.tbz2 from http://tinderbox.dev.gentoo.org/default-linux/
  2. cp coreutil-X.XX-rN.tbz2 /usr/portage/packages/All
    (HINT: 如果沒這目錄的話應該可以用 $PKGDIR 來指定)
  3. emerge -K coreutils
  4. emerge –unmerge mktemp
  5. emerge system

UPDATE: 剛看到 *這裡* 也有一樣的討論串…

my blog is back

前一陣子發生了一件慘事,導致於損失了 *很多很多很多很多* 的資料。而且又因為一連串的歷史因素下來,導致我手邊 *完全沒有* 可以 restore 的資料。傷心欲絕了好一陣子(沒拉其實是因為太忙懶得去想說要怎樣處理),後來想想那些東西丟在那邊也不是辦法,所以還是就盡量努力搜刮 backup file。 blog 算是大部分有成功救回來了,(還好現在的 cache 都很夠力,這也相對很恐怖,寫錯一句話幾十年後還會被翻出來鞭!?)所以即使是從 2006 年的 backup 解出來,之後的資料手動從 cache 抓回來也不是太大的問題。

巧合得是,動工的那天弄完後才發現原來日期跟我的備份檔 restore 完的最後一篇是同一天,差兩年罷了。所以這裡可以看出最近寫 blog 都寫的很不認真? XD

至於其他的 site 就慢慢再說吧,也許有些就這樣讓他消逝飄零吧。

也好,就當作是一次「嚴重的教訓」,處處提醒自己「時時備份」。順便重新整理自己,重新出發。

could not listen on UDP socket: permission denied

自從家裡的老 server 爆炸,然後應爹娘要求儘速處理,於是展開移山倒海 shift 大法,把比較省電且輕巧的小白 (AM2 X2 3800+) 給帶回去暫時先把網路搶通後就沒空理他,今天上去一看發現 message 一直出現:

May 9 04:19:11 soul named[960]: could not listen on UDP socket: permission denied
May 9 04:19:11 soul named[960]: creating IPv4 interface tun0 failed; interface ignored
May 9 05:19:11 soul named[960]: could not listen on UDP socket: permission denied
May 9 05:19:11 soul named[960]: creating IPv4 interface tun0 failed; interface ignored
May 9 06:19:11 soul named[960]: could not listen on UDP socket: permission denied
May 9 06:19:11 soul named[960]: creating IPv4 interface tun0 failed; interface ignored
May 9 07:19:11 soul named[960]: could not listen on UDP socket: permission denied
May 9 07:19:11 soul named[960]: creating IPv4 interface tun0 failed; interface ignored
May 9 08:19:11 soul named[960]: could not listen on UDP socket: permission denied
May 9 08:19:11 soul named[960]: creating IPv4 interface tun0 failed; interface ignored
May 9 09:19:11 soul named[960]: could not listen on UDP socket: permission denied

詢問了 google 大神之後發現大概是 這麼一回事 ,所以就乖乖的照著 mac_portacl(4) 去把 kernel configuration 的 options MAC 加進去,然後到 /boot/loader.conf 加入 mac_portacl_load=”YES” 接著照著 handbook 的 example 依樣畫葫蘆塞進 sysctl security.mac.portacl.rules=uid:53:udp:53,uid:53:tcp:53 然後重新啟動囉。

wordpress-mu sitemap plugin

抓取「Google Sitemap Generator 3 Beta」丟到 plugin 目錄,然後作些 dirty hack:
<blockquote>
<pre style=”text-align: left”>— /home/admin/cookys/work/sitemap.php Thu Nov 16 22:26:58 2006
— /home/admin/cookys/work/sitemap.php Thu Nov 16 22:26:58 2006
+++ sitemap.php Wed Dec 6 20:37:50 2006
@@ -865,6 +865,7 @@

//the get_home_path function in our own...
$home = get_settings('home');
$home_path="";
+/*
if ( $home != '' &amp;&amp; $home != get_settings('siteurl') ) {
$home_path = parse_url($home);
$home_path = $home_path['path'];
@@ -873,8 +874,10 @@
} else {
$home_path = ABSPATH;
}
+*/
$res = $home_path;
}
+               $res =ABSPATH.UPLOADS; //str_replace('/files','',ABSPATH.UPLOADS); // cookys dirty hack for wp-mu
return $res;
}

@@ -1313,7 +1316,7 @@
if(!$forceAuto &amp;&amp; $this->GetOption("b_location_mode")=="manual") {
return $this->GetOption("b_fileurl_manual");
} else {
-                       return trailingslashit(get_bloginfo('siteurl')). $this->GetOption("b_filename");
+                       return trailingslashit(get_bloginfo('siteurl')).'files/'. $this->GetOption("b_filename");
}
}

@@ -2705,4 +2708,4 @@
#endregion
}

-?>
No newline at end of file
+?>

然後把 .htaccess 補上一條
<pre>RewriteRule ^sitemap.xml /wp-content/blogs.php?file=sitemap.xml [L]</pre>
搞定收工。

mu-wordpress 以及 virtual host 的三兩事

上一篇當 中提到剛做完轉換的動作,所以現在想到就會去對那可惡的 css 修修補補(改不好總是很討厭,雖然知道明明就是 ie 的問題)。現在目前遇到的問題跟以前一樣,如果用 ie 開的話,當你的 100% 超過 100% 的時候他並不會自動縮成 100% ,反而是直接繼續加下去(詳細情形可以比較一下用 ie/firefox 去開一下這篇 ,會發現我的 theme 只要解析度比較小的狀況下,ie 會被暴走的圖給撐大,然後把右邊的 sidebar 擠到下面去),色小外說他看到「max-width in Internet Explorer」這篇當中有提到透過 js 去算然後塞 fixed width ,可是我實在很懶惰,不想為了 IE 把事情弄的這麼複雜,以後貼圖的時候注意一下就好了,或是用 lightbox plugin 可能也是一個方法。

在 昨天晚上喀完某篇 42 pages 的 paper 之後就一整個呈現腦死狀態,幾乎完全不能思考,於是早早就去睡,沒想到才睡不到七小時就自然醒過來。本想繼續賴床,卻睡沒十分鐘就又醒了,起來東摸西摸, 沒想到竟然發現並且解決了幾個小問題。現在的 CSS 在 ie 底下應該正常不少了,不過難免還是會有意外,還是推薦大家去用 Firefox,尤其是 Firefox 2.0 RC1 真 的是快到很明顯。另外無意間跳到 screen 正在 tail -f httpd_error.log 的裝,看到不少 redirect error 的問題,才想到其實我可以透過送 301/302 的方式來暫時解決路徑不對的問題,於是去把 blog.cookys.org 的 vhost整個送 302 過來(不用 301 是因為「希望」有一天能夠再改回去)然後寫一行

RedirectMatch 301 ^/wp-content/uploads/(.*) /files/$1

暫 時把路徑作處理,才不會看到一堆叉叉。(不過我現在才發現,wordpress 在文中用上傳方式插入的圖片,竟然是直接寫死的用絕對位址,那只要搬家換名稱就一定一整個爆炸阿!應該要把他給改一下。)然後我又發現,在 httpd_access.log 的檔案中,由於我是直接設定成 wildcard virtualhost ,所以大家的 access log 都會在同一個檔案,那樣根本就看不出來是 access 哪個站阿,這樣要作 awstat 也有困難。還好 google 馬上告訴我們答案,在這邊有提到可以透過 LogFormat 來更動格式,當然 awstat 的設定也要一併修改。於是依樣畫葫蘆一下:

CustomLog /home/websites/iecs.us/wildcard.iecs.us/logs/httpd-access.log vhost_wildcard_combined
LogFormat “%{Host}i %h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” vhost_wildcard_combined

就可以看到了。

意 外發現要報告的 paper 竟然長達 42 pages ,然後意外的發現 paper 描述要解決的問題跟我們一樣但是卻用了老王說他需要的方法。意外早起的早上,意外修好了一寫小蟲,意外的在 heather 的 tutorial hour看到正妹,意外的抓阿漂去上西班牙文,意外的收到牛盃背的電腦同時發現原來他女朋友是西班牙系。充滿意外的生活,其實也挺愜意。