tag:blogger.com,1999:blog-60257867628339705132024-03-05T18:04:46.303+08:00Maxsolar's Linux Blog一個關於linux與java的學習筆記,當然還有作者自己的心情紀錄。maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.comBlogger196125tag:blogger.com,1999:blog-6025786762833970513.post-38225269653179827952013-09-12T17:44:00.001+08:002013-09-12T17:44:40.317+08:00Issue Solving -- cannot open display: :0I remember this error message used to happen on OpenSuSE only. For Ubuntu and Debian users, it's absolutely no problem to use "sudo gparted&" or any other commands that invoke a GUI program with other UID. However in Debian 8(Jessie), this issue occurs:
(gpartedbin:13344): Gtk-WARNING **: cannot open display: :0
I used to try sudo gksu/kdesudo to solve this issue, but still in vain, apparently maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-53028887875704650242013-08-30T00:07:00.001+08:002013-08-30T00:07:35.703+08:00change default working directory of Eclipse and NetbeansThis article is simply a handy note for myself to remember how to change working directory of netbeans and eclipse.
Eclipse
For GUI, go to File->Switch Workspace, and change another appropriate folder.
Alternatively, edit $ECLIPSE/configuration/config.ini, looking for osgi.instance.area.default=@user.home/EclipseProjects attribute and replace it with another directory.
Netbeans
No idea how tomaxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-61621681603398485252013-04-09T18:37:00.000+08:002013-04-11T09:37:03.159+08:00Foxit Reader for amd64 Linux
Foxit Reader is my favorite pdf reader when I was a Windows XP user. It has superior performance and much lighter than Adobe Reader. I wouldn't say Adobe Reader for Linux is worse, but most of the time I just want to read my pdf document without any special functions, therefore, I would definitely choose Foxit Reader on my Linux.
Foxit Reader for Linux provides three types of binries: bz2, rpm maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-65334678903697059932013-02-27T00:14:00.002+08:002013-02-27T00:15:31.800+08:00File differencing/comparison on Linux某天我為了比較RHEL6.1與6.3在我們lab裡開機訊息的不同,驚見Mars大師用了一套叫WinMerge的軟體,可以分析兩個檔案的相異之處,而且還可以分析、合併資料夾,而且是用GPL發布的喔,建議在windows底下可以用這款WinMerge來作差異辨識。
Fig1. WinMerge Logo。
Fig2. 比較的對象可以是兩個檔案,也可以是兩個資料夾。
Fig3. 如果某些檔案指出現在某個目錄,WinMerge用『僅左邊』『僅右邊』來表示,雖然我個人不習慣這樣表示,但左右兩邊的路徑表示算清楚,不至於搞混。
Fig4. RHEL6.3與RHEL6.1開機訊息的比較。WinMerge貼心的用灰色代表沒有重複過的字串,黃色區域代表有重複但是數值不同的相似區域。沒錯,開啟RHEL6.3的時候產生Call Trace,系統就開不起來了。
在Linux底下其實也有許多maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-32514458250785683912012-11-05T01:09:00.001+08:002012-11-05T01:09:20.961+08:00OXIM on OpenSuSE 12.2話說事情演變到gnome3,原本最鍾愛的oxim輸入法框架就不能繼續使用了,很是痛苦。嘗試著自己編譯,可是經常不知道我到底要修改的是Makefile本身還是source code,我完全不懂qt/gtk阿!但是很榮幸的得到黑眼珠大大的鼎力相助,現在在OpenSuSE 12.2上面我終於可以快樂的使用oxim了!
zypper ar obs://home:swyear:oxim15/openSUSE_12.2 oxim
zypper ref oxim
zypper in oxim oxim-setup oxim-filters oxim-tables-popular-zh_TW
像我使用的是amd64的OS,還要在多補一個:
ln -s /usr/lib64/oxim-setup /usr/lib/
重新登入應該就可以使用OXIM了!再次向swyear大大致敬!!maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com2tag:blogger.com,1999:blog-6025786762833970513.post-87967688474230224932012-10-31T01:54:00.001+08:002012-10-31T02:06:04.582+08:00(16) VLAN tagging -- SuSE LinuxSetting up VLAN on SuSE Linux manually
請先確定SuSE上已經安裝了vconfig套件,並且8021q模組已被啟用:
zypper install vconfig
modprobe 8021q
假設eth0的網路是192.168.10.0/24,而switch上另外有兩個VLAN,分別是VLAN5(192.168.100.0/24)/VLAN10(192.168.200.0/24),希望同時能跟這兩個VLAN的網路溝通:
ifcfg-eth0ifcfg-vlan5ifcfg-vlan10
BOOTPROTO='static'
STARTMODE='auto'
IPADDR='192.168.10.198/24'
GATEWAY='192.168.10.1'
USERCONTROL=maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-15330455366879856632012-10-31T01:51:00.001+08:002012-11-13T18:42:47.653+08:00(15) VLAN tagging -- Redhat LinuxSetting up VLAN on Redhat Linux
請先確定RHEL/Fedora上已經安裝了vconfig套件,並且8021q模組已被啟用:
yum install vconfig
modprobe 8021q
假設eth0的網路是192.168.10.0/24,而switch上另外有兩個VLAN,分別是VLAN5(192.168.100.0/24)/VLAN10(192.168.200.0/24),希望同時能跟這兩個VLAN的網路溝通:
ifcfg-eth0ifcfg-eth0.5ifcfg-eth0.10
DEVICE=eth0
IPADDR=192.168.10.198
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
ONBOOT=yes
USERCTL=no
maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-76542209333047899422012-10-31T01:46:00.002+08:002012-10-31T02:01:12.625+08:00(14) VLAN tagging-- Debian GNU/LinuxSetting up VLAN on Debian GNU/linux
請先確定Debian/Ubuntu上已經安裝了vlan套件,並且8021q模組已被啟用:
aptitude install vlan
modprobe 8021q
假設eth0的網路是192.168.10.0/24,而switch上另外有兩個VLAN,分別是VLAN5(192.168.100.0/24)/VLAN10(192.168.200.0/24),希望同時能跟這兩個VLAN的網路溝通:
auto eth0
iface eth0 inet static
address 192.168.10.198
netmask 255.255.255.0
gateway 192.168.10.1
auto eth0.5
iface eth0.5 inet static
maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-88569621910245216732012-10-31T01:41:00.001+08:002012-10-31T02:01:12.630+08:00(12) NIC bridging -- SuSE LinuxSetting up Bridge on SuSE Linux manually
SuSE Linux裡想要啟用bridge(IEEE 802.1d)功能,必須要先安裝bridge-utils套件;如果系統裡可以執行brctl這個指令,那麼你的系統已經可以建立bridge了。
假設現在要把eth0設定成bridge分享給VM作為與外部溝通的管道:
ifcfg-eth0ifcfg-br0
BOOTPROTO='static'
STARTMODE='auto'
IPADDR='0.0.0.0/32'
USERCONTROL='no'
BOOTPROTO='static'
BRIDGE='yes'
BRIDGE_FORWARDDELAY='0'
BRIDGE_PORTS='eth0'
IPADDR='192.168.10.22/24'maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-41842419716301913382012-10-31T01:39:00.002+08:002012-11-06T11:40:00.492+08:00(11) NIC bridging -- Redaht LinuxBridging on Redhat Linux
Redhat Linux裡想要啟用bridge(IEEE 802.1d)功能,必須要先安裝bridge-utils套件;如果系統裡可以執行brctl這個指令,那麼你的系統已經可以建立bridge了。
假設現在要把eth0設定成bridge分享給VM作為與外部溝通的管道:
ifcfg-eth0ifcfg-br0
DEVICE=eth0
BRIDGE=br0
BOOTPROTO=static
ONBOOT=yes
USERCTL=no
NM_CONTROLLED=no
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.10.22
NETMASK=255.255.255.0
GATEWAY=maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-64675501960713951812012-10-31T01:37:00.002+08:002012-11-03T23:42:46.591+08:00(10) NIC bridging -- Debian GNU/LinuxBridging on Debian GNU/Linux
在Debian/Ubuntu裡想要啟用bridge(IEEE 802.1d)功能,必須要先安裝bridge-utils套件;假設你已經安裝了KVM/XEN,那麼bridge-utils則早就安裝完畢。
假設現在要把eth0設定成bridge,作為VM與外部溝通的管道:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.10.198
netmask 255.255.255.0
gateway 192.168.10.1
up sleep 3; ethtool -s br0 autoneg off speed 1000 duplex maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-38435418987044200732012-10-31T01:35:00.001+08:002012-11-16T11:46:31.359+08:00(9) NIC bridging conceptsWhat is a bridge?
不管是鄉間優美的Richmond古橋,或是雪梨南北的重要命脈Hobour Bridge,或者是通往祖靈的彩虹橋,他們最重要的特點就是"溝通兩端的交通"。作為一個溝通管道,他不在乎上面要載運什麼樣的交通工具,也不在乎要實行何種交通規則--他就只是橋樑。
我們延續這樣的觀念:一個bridge裝置就是能連接兩個(或以上)網路的設備。這個裝置不需要非常有智慧,他只要能傳送封包就好(layer 2);他就像是一個port數有限的switch,負責作為多個網路裝置的通道;而事實上,他就是switch的前身。從現在開始把bridge在腦海中替換成switch邏輯上幾乎是安全的。
首先,switch只負責利用廣播以及ARP table來負責封包傳輸,因此bridge(就是switch)是不懂得maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com3tag:blogger.com,1999:blog-6025786762833970513.post-82083854527664803362012-10-31T01:33:00.001+08:002012-10-31T02:01:12.626+08:00(8) NIC bonding -- SuSE Linux就suse的設定而言,預設會是以傳統Network來管理網路設定。本文專注在使用手動設定TCP/IP網路設定。
Bonding on SLES/OpenSuSE
本文預設使用mode=6(也可以寫作mode=balance-alb)來作為範例,請先記得備份:
cp /etc/sysconfig/network/ifcfg-eth{0,1} ~/Desktop
就可以開始進行bonding實驗。
安裝必要的套件
zypper in iputils
iputils套件包含了重要的ifenslave指令,他是RHEL預設就會安裝的套件。
修改/etc/modprobe.d/aliases.conf
很maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-59672892547259479382012-10-31T01:31:00.002+08:002012-10-31T14:16:50.914+08:00(7) NIC bonding -- Redhat Linux就Redhat的設定而言,如果安裝了X window則預設會是以Network Manager來管理網路設定。本文專注在使用手動設定TCP/IP網路設定。
Bonding on RHEL/Fedora
本文預設使用mode=6(也可以寫作mode=balance-alb)來作為範例,請先記得備份:
cp /etc/sysconfig/network-scripts/ifcfg-eth{0,1} ~/Desktop
就可以開始進行bonding實驗。
安裝必要的套件
yum install iputils
iputils套件包含了重要的ifenslave指令,他是RHEL預設就會安裝的套件。
修改/etc/modprobe.d/maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-83472902223384905922012-10-31T01:29:00.003+08:002012-10-31T02:01:12.627+08:00(6) NIC bonding -- Debain GNU/LinuxBonding on Debian
就Debian的設定而言,如果安裝了X window則預設會是以Network Manager來管理網路設定。本文專注在使用手動設定TCP/IP網路設定。
Bonding on Debian/Ubuntu
本文預設使用mode=6(也可以寫作mode=balance-alb)來作為範例,假設你要bond eth0, eth1兩張NIC到192.168.10.198/24:
安裝bonding介面卡管理程式:ifenslave
aptitude install ifenslave-2.6 chkconfig -y
ifenslave是製作bonding所必須的工具,因此務必確定他有被正確的安裝。
修改/etc/modprobe.d/aliases.conf
maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-56291111875780624392012-10-31T01:25:00.001+08:002012-10-31T02:01:12.619+08:00(5) NIC Bonding ConceptsIntro of NIC bonding
NIC bonding就是把兩個(或以上)的ports組合成同一個IP,與上面的IP aliasing剛好相反。在Windows的世界常聽見的是teaming,而在Cisco的世界比較常見trunking這個說法。幸運的是只要你安裝的是本世紀才發行的Linux,kernel都會包含bonding的核心模組,你唯一需要注意的是系統裡是否有ifenslave這隻工具,在使用bonding前系統必須擁有他才能成功bond。
NIC bonding所期望達成的目標就是頻寬合併(Aggregation),根據不同模式分別提供不同的狀態:負載平衡(load balance)、即時備援(hot redundancy),以及一個簡單監控bonding狀態的工具。
觀念上,每張NIC在bonding之後都稱之為slave,組合後的bondmaxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-66498638747683172052012-10-31T01:17:00.001+08:002012-10-31T02:01:12.622+08:00(3) SuSE Linux Network Setting大部分的Linux distributions都會設計兩種設定網路方式:Network Manager的動態設定以及手動設定。傳統的network服務在SuSE系列的作業系統是預設,但是由於Yast的功能非常強大,使用者透過Yast無論使用的是Network Manager還是傳統的Network服務,經驗上都沒有太大的差別。本文所提供的網路設定則專為簡單紀錄TCP/IP網路設定。
了解Linux network devices的命名方式
使用ip指令來觀察我們的網路裝置:
maxsolar@SLES11:~> ip a
1: lo: mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-72589843724625154232012-10-31T01:14:00.003+08:002012-10-31T02:01:12.623+08:00(2) Redhat Linux Network Setting大部分的Linux distributions都會設計兩種設定網路方式:Network Manager的動態設定以及手動設定。Network Manager在Redhat系列的作業系統是預設,如果使用者只是為了設定最基本的網路設定,那麼使用圖形界面的Network Manager就可以了,laptops的環境因為位置可能經常變動,使用Network Manager是最方便的方法。然而進階的網路設定反而撰寫設定檔更為一目了然,本文的目的便是簡單紀錄TCP/IP網路設定。
了解Linux network devices的命名方式
使用ip指令來觀察我們的網路裝置:
[maxsolar@RHEL58 ~]$ ip a
1: lo: mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-13696739967183577092012-10-31T01:08:00.002+08:002018-03-05T12:35:03.431+08:00(1) Debian/GNU Network Setting(1) Debian/GNU Network Setting
<!--Linux的TCP/IP網路設定有下列章節:
01Debian GNU/Linux Network Setting
02Redhat Linux Network Setting
03SuSE Linux Network Setting
04Configure Network manually
05NIC bonding
06NIC bonding -- Debain GNU/Linux
07NIC bonding -- Redhat Linux
08NIC bonding -- SuSE Linux
09NIC bridging
10NIC bridging -- Debian GNU/Linux
11NIC bridging -- Redhatmaxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-91419770324459105312012-09-07T21:28:00.000+08:002014-03-12T22:57:51.114+08:00Debian Gnome3桌面筆記多年以前寫的圖解Debian桌面安裝筆記,如今看來這些資訊過時的速度令人咋舌。Gnome3的桌面我曾經抗拒了好一段時間,畢竟好不容易熟悉的環境以及設定檔,甚至是legacy grub都變成了grub2,原本最喜歡的輸入法框架oxim也已經完全無法在Gnome3安裝使用了。看來唯一的方法就是面對他...或是龜縮在stable的Debian或是Ubuntu 10.04的美好時代。
可能是我已經過了追求美麗桌面的年紀,這篇筆記文純粹作為自己筆記用,可能甚至不具任何參考價值;如果各位覺得有用就笑納,覺得廢文一篇也不妨嘲諷幾句~
Install Debian Wheezy
現在的Debian安裝過程已經比從前那個年代要容易多了。在我寫這篇文章的時候,wheezy還是testing;但我相信未來的stable版本也會納入gnome3,所以請至少安裝wheezy以上的maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-53385082658854978072012-06-27T23:54:00.000+08:002012-08-28T01:13:37.556+08:00zypper筆記zypper簡史
zypper是在SUSE Linux下的套件管理程式引擎(ZYpp library, 或是libzypp)最重要的指令。也是PackageKit的後端程式(Back-ends),目的是提供一個高階的套件管理程式,協助使用者解決套件相依性的問題、提供解決方案並且自動化設定。
也就是說,使用指令zypper來控制套件跟使用YaST管理套件是相同的行為。
zypper提供的功能主要有:
自動化安裝、升級以及移除套件
能夠管理多個套件庫來源URI(Universal Resource Identifier, 可以是localdir, local ISO, NFS, http, ftp, samba, etc.)
提供比rpm更彈性的管理、查詢功能。
Repositories
一個SuSE Linux標準的maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-49929344603894628262012-03-21T01:29:00.000+08:002012-03-21T01:29:49.798+08:00台北生活日記01作夢的時候才會快樂,才發現以前不用作夢就能感受快樂。
小小的人類,一雙鞋,一個背包,竟有踏遍整個地球的夢想。
我背著陪伴我一年的背包,才真正了解背包『是我肩膀上的指環』的真實意義。
在我什麼都沒有的時候,我其實得到了所有。
工作、生活、技能都有了,我卻好像失去了一切。
金錢買不到快樂,真的,我是說真的。
台北的生活與環境,不諱言的真的讓我從天堂掉到地獄。
工程挖挖挖,
汽車叭叭叭;
下雨涮涮涮;
皮膚抓抓抓...
路上打招呼被人當神經病,我這外地人好心報路被人當詐騙集團,
90秒起跳的紅綠燈誰不想綠燈之後加速狂奔,
侷促的土地上蓋更多更高的大樓說是繁榮進步,過度擁擠的後果有誰關心?
台北市許多地方的機車停車格,白色的停車格線被塗掉了。在人口日益增加的時候,竟然在不妨礙交通的地方塗掉停車格,理由再明白不過了:減少的停車格代表更多的市政收入來源。
所以蓋了更多高架道路來疏通交通流量maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-18316854541390135882012-03-10T14:28:00.001+08:002012-03-10T14:28:21.107+08:00你們這些人可不可以閉嘴我最痛恨那種『偽Linux使用者』。
喜歡問問題,不喜歡google,然後最喜歡別人幫他google。
(答) STFG!! RTFM!! JFGI!!!
基本常識沒有,要他打指令就痛苦得跟要切除腎臟一樣,還會問如何刪除終端機程式。
(答) 無言以對...你去切腎臟,我來打指令吧...
喜歡高談闊論說未來就是GUI,跟他說Windows現在也出Powershell不然會被Unix幹假的,他說哦那是Server。
(答) 我覺得你只是在找個不會中毒不用錢的Windows罷了...
他說他在MaxOS也玩過指令(弱的人都會強調"我也玩過指令!"),可是跟他說Automator也是要搭配,他就直接略過不談。
(答) 我猜想他不知道我也玩過MAC,而且比他還熟。
喜歡批評程式太多BUG,然後只在自己的BLOG抱怨說有BUG的程式跟病毒沒兩樣,完全不知道有BUGZILLA可以回報以及maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com2tag:blogger.com,1999:blog-6025786762833970513.post-6087100445633960572012-01-19T04:15:00.003+08:002012-01-19T04:17:54.297+08:00建立flashplayer的deb檔最近發現許多瀏覽器上的flash都被宣告為過期的版本而無法使用,想要玩線上遊戲或是看YouTube總是很困擾。Adobe的官方網頁上雖然好像有apt的版本,不過不曉得該用什麼應用程式來開啟或安裝他。於是想到把下載來的tar.gz檔自己作成deb來安裝吧!
1. 下載新版的flash player:
至Adobe官方網站下載適合自己平台的rpm及tar.gz檔。下載這個rpm檔純粹是為了要得知版本號,沒有真正其他用途。
利用rpm指令檢查一下他的版本(ubuntu預設沒有安裝rpm,需手動安裝)
rpm -qpi flash-plugin-11.1.102.55-release.x86_64.rpm發現訊息如下:
Name : flash-plugin Relocations: (not relocatable)
maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0tag:blogger.com,1999:blog-6025786762833970513.post-90122845661765349612011-10-24T22:03:00.002+08:002014-05-01T20:41:21.958+08:00JDK7 on non-RPM based Linux JDK 7出來已經有一段時日了,官方網頁也貼心的提供了rpm的套件可以直接安裝,只可惜沒有deb可以下載。雖然如此,我們還是可以省略掉一些手法來同時使用系統提供的jdk6以及網路下載的jdk7--利用update-alternatives工具來達成。但是為了方便作說明,還是先安裝系統套件庫所提供的jdk6吧:
aptitude install sun-java6-jdk
下載適合自己的版本 x86或是x86_64之後,查看自己的java版本以及安裝在何處:
ls -l `which java`發現原來是連結到/etc/alternatives裡:
lrwxrwxrwx 1 root root 22 2011-10-24 21:39 /usr/bin/java -> /etc/alternatives/java
利用update-alternatives來幫助我們作maxsolarhttp://www.blogger.com/profile/13308473146640856226noreply@blogger.com0