建立xdebug+eclipse的调试环境

几周了,终于让 eclipse 能够调试php代码了,期间找了许多资料,但是总不能如愿,于是记录如下。

安装xdebug

fedora 下直接安装 php-pecl-xdebug 包就算是配置好了 php 的 xdebug 扩展。

记得systemctl reload httpd.service 访问 phpinfo 页面时应该有 xdebug 的相关信息:

Screenshot from 2013-04-03 16:01:51

然后打开 display_errors ,即 php.ini 里面有 display_errors= On ,那么打开一个有异常的页面会出现彩色提示。

Screenshot from 2013-04-03 15:51:52

配置远程调试

这时可以配置远程调试。在 /etc/php.d/xdebug.ini 中写入如下几行:

1
2
3
4
5
[Xdebug]
xdebug.remote_autostart=On
xdebug.remote_enable=On
xdebug.remote_host=127.0.0.1
xdebug.remote_handler=dbgp
阅读更多

Linux 下 Eclipse 的外观修改(图标大小)

在Linux(F18+gnome3)下用Eclipse最显著的一个特点是图标特别的“大气”,菜单栏都到两行了,就是图标特别的大。给张图就明白了:

before

今天突然有改了它的冲动,百度之,曰为gtk2的风格问题。不过,百度出来的答案都没用,于是google,得之:

https://www.davidandrzejewski.com/2012/08/03/make-eclipse-less-ugly-in-linux-mint/

文中的配置有一点不妥,引用如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
style "compact"
{
GtkButton::default_border={0,0,0,0}
GtkButton::default_outside_border={0,0,0,0}
GtkButtonBox::child_min_width=0
GtkButtonBox::child_min_heigth=0
GtkButtonBox::child_internal_pad_x=0
GtkButtonBox::child_internal_pad_y=0
GtkMenu::vertical-padding=1
GtkMenuBar::internal_padding=1
GtkMenuItem::horizontal_padding=4
GtkToolbar::internal-padding=1
GtkToolbar::space-size=1
GtkOptionMenu::indicator_size=0
GtkOptionMenu::indicator_spacing=0
GtkPaned::handle_size=4
GtkRange::trough_border=0
GtkRange::stepper_spacing=0
GtkScale::value_spacing=0
GtkScrolledWindow::scrollbar_spacing=0
GtkExpander::expander_size=10
GtkExpander::expander_spacing=0
GtkTreeView::vertical-separator=0
GtkTreeView::horizontal-separator=0
GtkTreeView::expander-size=12
GtkTreeView::fixed-height-mode=TRUE
GtkWidget::focus_padding=0
font_name="Liberation Sans,Sans Regular 8"
text[SELECTED] = @selected_text_color
}
class "GtkWidget" style "compact"
style "compact2"
{
xthickness=1
ythickness=1
}

class "GtkButton" style "compact2"
class "GtkToolbar" style "compact2"
class "GtkPaned" style "compact2"

第30行使tweak丧失了对程序字体的控制权,有越俎代庖之嫌,删去。
第5行个人觉得边框太小,故改为1 。
最终解决方案:

~/gtkrc-2.0文件中添加如下语句:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
style "compact"
{
GtkButton::default_border={1,1,1,1}
GtkButton::default_outside_border={0,0,0,0}
GtkButtonBox::child_min_width=0
GtkButtonBox::child_min_heigth=0
GtkButtonBox::child_internal_pad_x=0
GtkButtonBox::child_internal_pad_y=0
GtkMenu::vertical-padding=1
GtkMenuBar::internal_padding=1
GtkMenuItem::horizontal_padding=4
GtkToolbar::internal-padding=1
GtkToolbar::space-size=1
GtkOptionMenu::indicator_size=0
GtkOptionMenu::indicator_spacing=0
GtkPaned::handle_size=4
GtkRange::trough_border=0
GtkRange::stepper_spacing=0
GtkScale::value_spacing=0
GtkScrolledWindow::scrollbar_spacing=0
GtkExpander::expander_size=10
GtkExpander::expander_spacing=0
GtkTreeView::vertical-separator=0
GtkTreeView::horizontal-separator=0
GtkTreeView::expander-size=12
GtkTreeView::fixed-height-mode=TRUE
GtkWidget::focus_padding=0
}
class "GtkWidget" style "compact"
style "compact2"
{
xthickness=1
ythickness=1
}
class "GtkButton" style "compact2"
class "GtkToolbar" style "compact2"
class "GtkPaned" style "compact2"

效果:

阅读更多

ProFTPD限制FTP模式

以前搞过ProFTPD禁止主动模式,但是这两天有这个需求的时候却忘记了,看来得写一日志记录下。

首先,环境是 fedora 17 + proftp 。

默认的配置是主动模式和被动模式都可用。

主动模式下访问记录:

1
2
3
4
Command:   
PORT 127,0,0,1,237,87
Response:    200
PORT command successful

被动模式访问记录:

1
2
Command:    PASV
Response:    227 Entering Passive Mode (127,0,0,1,157,107).

如果需要禁止主动模式访问,则只需要在/etc/proftd.conf<Global>段中添加如下三行:

1
2
3
<Limit PORT>
DenyAll
</Limit>

即禁止PORT指令,则主动模式访问记录变为:

阅读更多

Linux下管理MP3文件(乱码,临时文件)

很多MP3文件在Linux的播放器中都显示乱码,原理在此:http://www.linuxdiyf.com/viewarticle.php?id=57099

另外,Linux下有的音乐播放器会在目录下创建隐藏文件,备份时当然要删除这些文件了。

  1. 删除目录下除MP3和LRC文件以外的其他文件:
1
find ./ -type f ! -iname \*.mp3 ! -iname \*.lrc -exec rm -v \{\} \;
  1. 删除空目录:
1
find ./ -type d -empty -delete

注意:此处不能用 -exec rm ,因为删除目录时find命令仍然在这个目录,会报错。

  1. 修复MP3文件的标签:
1
find ./ -type f -iname \*.mp3 -exec mid3iconv -e gbk \{\} –remove-v1 \;

注:经测试 mid3iconv -e gbk X.mp3 –remove-v1 不会改变原来正常MP3文件的编码。

阅读更多

如何预览翻译的 Fedora 文档(使用 Publican)

首先要在 transifex.com 网站注册,并加入翻译组。(此处不赘述)

fedora的文档,至少本文的例子 Fedora System Administrator’s Guide → FTP 使用 Publican 写作,所以我们从翻译网站上拿到的仅仅是包括了文章“词条”的po文件。我们翻译的时候肯定要“预览”,所以必须拿到文档源码,本文中的文档源码在 git://git.fedorahosted.org/docs/system-administrators-guide.git

首先,获取文档源码:

1
git clone git://git.fedorahosted.org/docs/system-administrators-guide.git

切换到目录:

1
cd system-administrators-guide

测试生成文档:

1
make

提示:/bin/sh: publican: command not found 那就安装此工具:

1
yum install publican-doc publican-fedora
阅读更多