笔记(转载) - jues

gentoo下解决Mplayer无法播放中文文件的问题

在Gentoo下,最近发现Gmplayer无法播放中文文件的MP3等其他本身应该可以播放的文件.后来寻找了一下,发现可以进行修改.这样就能够让Gmplayer播放中文文件名的文件了。

修改方法:
打开Mplayer的属性

Gnome菜单->鼠标右键->编辑菜单->影音->MPlayer->鼠标右键->属性

将:gmplayer %U 改为 gmplayer %f

即可

然后,在找到带有中文文件名的文件->鼠标右键->打开方式->使用其他程序打开->mplayer->打开

如果没有问题了,那么以后就直接点击文件就可以了。

 

摘于: http://www.linuxdiyf.com/bbs/thread-77884-1-1.html

linux下有哪些音乐播放器

常见终端环境播放器:moc(支持后台播放,占资源少),cmus(带媒体库功能的终端播放器,可惜不能后台播放)
另外的桌面环境下:
Amarok(KDE桌面下的播放器,功能全面,界面很好看),
RhythmBox(Gnome桌面下播放器),
audacious(一款类似千千静听的播放器),
deadbeef(比较小巧的播放器),
Exaile(GTK界面的播放器,中文支持比较好,有个补丁可以不乱码)

摘于: http://zhidao.baidu.com/question/380373089.html

关闭笔记本的触摸板

硬件:联想e290m
软件:xubuntu 7.04  xfce4桌面环境

症状原因:系统安装好后,触摸板可以正常使用,但快捷键(Fn+F2)失灵,修改快捷键不成功。

解决办法:    手动关闭

解决步骤:
1、 安装Synaptics TouchPad driver for X.Org server

    $sudo apt-get install xserver-xorg-input-synaptics

2、 修改/etc/X11/xorg.conf


    ......
    Section "InputDevice"
        Identifier      "Synaptics Touchpad"
        Driver          "synaptics"
        Option          "SendCoreEvents"        "true"
        Option          "Device"                "/dev/psaux"
        Option          "Protocol"              "auto-dev"
        Option          "HorizScrollDelta"      "0"

#打开内存共享
        Option          "SHMConfig"             "on"
 #默认关闭Touchpad
        Option          "TouchpadOff"   "1"
EndSection
    ......

3、 重启X


    $synclient touchpadoff=0    #可以重新打开Touchpad
    $synclient touchpadoff=1     #可以重新关闭Touchpad


4、在.bashrc中添加alias,简化命令
    alias synon='synclient Touchpadoff=0'
    alias synoff='synclient Touchpadoff=1'


以后可以通过synon、synoff来控制Touchpad的开、闭了。

 

 

摘于 : http://blog.163.com/justin_hjg/blog/static/2610372520076238301400/

xfce实现桌面图标背景透明

用了xfce后很喜欢它的简洁跟速度
默认的xfce桌面图标是有一个阴影的,我觉得不好看
通过简单的修改就可以去掉图标背景阴影,下面开始:
1.在你的home下创建文件".gtkrc-2.0"(注意前面有个点),你也可以创建到当前主题的gtk-2.0文件夹中(usr/share/themes/xxxx/gtk-2.0)
2.打开.gtkrc,把下面的内容复制进去,保存,注销
style "xfdesktop-icon-view" {
font_name = "sans Bold" #字体名称设置
XfdesktopIconView::label-alpha = 0 #透明度设置
base[NORMAL] = "#000000" #背景颜色(下同)
base[SELECTED] = "#71B9FF"
base[ACTIVE] = "#71FFAD"
fg[NORMAL] = "#ffffff" #文字颜色(下同)
fg[SELECTED] = "#71B9FF"
fg[ACTIVE] = "#71FFAD" }
widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
3.注销后可以看到图标背景透明了
PS:xfce很好用,更多的美化设置可以参考
https://wiki.archlinux.org/index.php/Xfce_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

 

摘于:http://tieba.baidu.com/p/2048897099

使用network manager接管网络连接

以下内容来自arch wiki仅仅是为了记录,防止下次需要使用的时候找不到

http://wiki.archlinux.org/index.php/NetworkManager_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29

简介

网络管理器(NetworkManager)是一个先进的网络连接工具。它试图使网络连接对最终用户透明化,比如当你进入一个你以前曾经到过的区域时,网络管理器会自动帮你连接到上一次连接过的网络。

提示

简体中文版的内容已经过时,如果按照本页内容设置不成功请移步英文wiki相应页面。

安装

请确定你已经安装了wireless_tools 这个软件包,否则网络管理器不会工作。

同时确保HAL 也已经安装了,并且作为一个守护进程启动(写在了rc.conf的DAEMONS里)。

Gnome环境

# pacman -S gnome-network-manager



KDE环境

# pacman -S knetworkmanager



目前kde4的knetworkmanager仍未完成,只能使用kde3的作为临时替代

Xfce环境

Xfce环境下同样使用GNOME的软件包,但是需要xfapplet插件,其作用是允许GNOME里的的那些小程序显示在xfce4面板上:

# pacman -S gnome-network-manager xfce4-xfapplet-plugin



Fluxbox以及其它窗口管理器

你需要高色彩的主题来运行nm-applet:

# pacman -S gnome-network-manager hicolor-icon-theme



调整好系统后,通过打开“设置”-->“自动运行程序”,并添加"nm-applet --sm-disable",使网络管理器在启动时被自动加载。其中"--sm-disable option"选项用于防止多个nm-applet同时运行。

配置

如果你想让网络管理器(图形界面)来管理网络设备,必须先停止原来由network来管理的网络和相关配置,可以通过在/etc/rc.conf中的设备名称前加上一个'!'来禁用 它, 1、禁止相关网络配置,例如:

INTERFACES=(lo !eth0 !ath0)



网络管理器会分析你的/etc/rc.conf,以确定你在设备上使用了静态还是动态IP,故需要先将自己的偏好配置写进去。

静态IP示例:

 eth0="eth0 172.19.3.18 netmask 255.255.255.0 broadcast 172.19.3.255"



动态IP示例:

 eth0="dhcp"



2、"禁用"你的 network 守护进程,然后将 dhcdbdnetworkmanager 守护进程以如下的顺序 添加进去:

DAEMONS=( ... !network dhcdbd networkmanager


 ... )



注意: 如果你以前在上述启动列表中添加了 fam守护进程,它 必须写在networkmanager 之后。此方法同样适用于 portmap(如果你有的话)

最后,将你自己加入network用户组。如下所示(将USERNAME替换成你的用户名):

# gpasswd -a USERNAME network









上述内容未经验证,仅是事后找到的,如不成功,参考下边这个链接,本人实测成功

http://wiki.archlinux.org/index.php/NetworkManager

 

摘于: http://blog.csdn.net/zjy3186511/article/details/5804092

Xfce4桌面环境及中文化

       在安装了Moblin V2 For NETBOOK后,突然惊奇的发现桌面环境换成了Xfce4。整个桌面看起来简洁清新,桌面启动的速度异常迅捷,大约10秒以内就能被完全载入。

      Intel公司对Moblin V2的核心堆栈描述内,并没有关于Xfce4的介绍,只是上面提及保留与V1使用的HILDON桌面环境的兼容性。揣测Intel开发人员的心 思,Xfce4或许是"启动时间"特性的一种实现方法。目前Moblin V2处于alpha阶段,所以可能有一些技术的应用并没有完全确定下来,那么究竟会不会在final阶段使用Xfce4或许还是未知数。

      Xfce4桌面环境是基于GDK的轻量级实现,适用各种移动设备。对于开发者来说,它是一个完全开源的GPL项目,毋庸考虑版权问题。因为与Hildon 和GNOME桌面环境同样采用GTK+库开发,所以三者之间不存在过于复杂的兼容性为题,这大概是Intel所谓"Hildon兼容"的策略之一。 Xfce4严格遵循着模块化构建,因此开发者可以挑选出其中适用于移动设备的组件构建桌面。将移动设备不需的那些应用省去后,节省了大量的可用资源,从而 也提高了启动速度。

Xfce4桌面环境支持中文显示,只可惜在界面中没有相关选项可调整。设置中文显示的方法为:

(1)对当前用户有效。修改用户主目录下(通常是/home/moblin)的".bash_profile"文件,在末尾加入如下语句:

export LANG=zh_CN.UTF-8

export LANGUAGE=zh_CN.UTF-8

export LC_ALL=zh_CN.UTF-8

(2)对所有用户有效。修改/etc/sysconfig目录下的".i18n"文件,将LANG选项设置为:

LANG="zh_CN.UTF-8"

注意:需要root权限,密码为"moblin"。

还有另一种方法在生成Moblin V2映像时显示中文,安装MIC2后从/usr/share/mic2目录中复制kickstart配置文件"netbook-core.ks." 或"netbook-core-developer.ks"到用户主目录以外的任何位置,然后将第1行改为:

lang zh_CN.UTF-8

这样,创建的映像默认就是中文,如下图所示:

 Moblin V2的Xfce4桌面

如果需要在Xfce4中安装SCIM输入法,可用打开/etc/xdg/xfce4目录下的xinitrc文件,然后执行下列命令:

yum install xfce-mcs-plugins-extra

若提示版本冲突,可选择【主菜单】|【系统】|【Update System】命令对系统进行升级。现在,MIC2暂时不能创建MID上运行的映像,Xfce4桌面环境是否能够成为MID的桌面还得拭目以待。

 

 

摘于: doc.chinaunix.net/moblin/200903/230827.shtml

gentoo ATI

gentoo ATI

有两个选择:一是用 ATI 自己提供的驱动(参考链接);二是利用开源驱动(参考链接)。他们的配置方式有些不同,安装的包自然是不一样的。

我首先采用的是 开源驱动 来安装的,当时有些问题没有处理好以失败告终,后来利用 ATI 的驱动时才有所体会。开源驱动肯定是可以用的。但本文还是以 ATI 提供的驱动做实例。基本上是按照 how to 来说明的。

1. 内核配置 (针对 2.6, 我采用的版本是 2.6.17-gentoo-r8)

# cd /usr/src/linux

# make menuconfig

按照 how to 来作就好了。
 

General setup --->

() Local version - append to kernel release (Currently, ati-drivers won't fully compile if you append anything to your version)

Loadable Module Support --->

[*] Enable loadable module support

[*] Module unloading

Processor type and features --->

[*] MTRR (Memory Type Range Register) support

Device Drivers --->

Character Devices --->

<M> /dev/agpgart (AGP Support)

<M> Your_AGP_Chipset_Here

< > Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)

Graphics support --->

[ ] Support for framebuffer devices

Kernel Hacking --->

[ ] Kernel debugging


但这里有一点要指出的是,也是很容易搞错的地方。在选项
<M> /dev/agpgart (AGP Support) 的子项中不要想当然地认为自己显卡是 ATI 的就选了
<M>   ATI chipset support
我开始就是犯了这个错误。(我想,这里应该是指主板的芯片类型支持)你可以这样来确定:

# lspci | grep AGP


比如我的机器是:
00:01.0 PCI bridge: Intel Corporation 82845G/GL[Brookdale-G]/GE/PE Host-to-AGP Bridge (rev 03)
所以我这里应该是:
 

<M> /dev/agpgart (AGP Support)

< > ATI chipset support

<M> Intel 440LX/BX/GX, I8xx and E7x05 chipset support


注意:别忘了编译、安装新内核,并以新的内核来引导系统。
 

# make && make modules_install

# cp arch/i386/boot/bzImage /boot/kernel-2.6.17-gentoo-r8


在启动引导菜单中加入新的引导选项,我的机器采用 grub,
/boot 分区在 /dev/hda8, / 分区在/dev/hda10,所以:
 

# vim /boot/grub/grub.conf

title Gentoo Linux 2.6.17-r8 (ATI Radeon 9000 driver)

    root (hd0,7)

    kernel /kenerl-2.6.17-gentoo-r8 root=/dev/hda10

# reboot


2. 安装驱动
你用新的内核启动后,通常没法进入登录窗口,因为新的显卡驱动还没有安装,你的 X 配置没有更改。。。
你可以在 reboot 前将默认启动登录窗口禁止。


# rc-update del xdm default

或者 在无法启动登录界面时,按 CTRL-ALT-F1 然后在文字终端登录,并且运行

# /etc/init.d/xdm stop


现在安装驱动了。
howto 上讲了一下关于去掉 dlloader 的选择的问题,如果你的 xorg-x11 安装时用了这个选项的话,那你要重新编译 xorg-x11 了。
你大概也不用做那些 umask 的设置了,默认选项里面是直接可以安装的。
 

# emerge -av x11-drivers/ati-drivers x11-apps/ati-drivers-extra

# env-update && source /etc/profile

# modprobe fglrx

# eselect opengl set ati


你需要 copy 一些文件到指定的目录
# find /usr -iname fglrx_dri.so
通常在 /usr/lib/dri/ 目录下
# ls /usr/lib/dri
atiogl_a_dri.so  fglrx_dri.so  r200_dri.so  r300_dri.so  radeon_dri.so
HowTo 里面说只用 copy fglrx_dri.so 就行了,但后来发现 atiogl_a_dri.so 这个文件也要用的,就都 cp 过去好了。
HowTo 里面描述的目标目录是 /usr/X11R6/lib/modules/dri/ 也就是 /usr/lib/modules/dri/ 但后来发现链接库找的目录是 /usr/lib/dri, 所以你要是防止出现问题的话不妨多做几个链接,或者根据错误信息来定位目录。
# cp /usr/lib/dri/* /usr/X11R6/lib/modules/dri/
别忘了做这一步,在别的系统上应该是 ldconfig, 但在gentoo 上做ldconfig 是不够的。
# env-update

3. 配置 X
# /opt/ati/bin/aticonfig --initial --input=/etc/X11/xorg.conf
不过,我觉得在链接里面的描述来配置更好。

我单个屏幕的设置是 1024x768,做水平扩展后的就是 2048x768 了。
 

# export PATH=/opt/ati/bin:$PATH

# aticonfig --initial=dual-head --screen-layout=right

# aticonfig --dtop=horizontal --overlay-on=1

# aticonfig --resolution=0,2048x768,1024x768

现在去你的 X 配置文件看看,里面有一些选项已经添加或者更改了。
# vim /etc/X11/xorg.conf
如果你启动 X 后,发现了错误,你可能要修改里面的配置了。

可以启动 X 了。
# startx
不过我大都选用登录窗口来启动新的会话

# /etc/init.d/xdm start


看看启动后桌面有什么不同吗?如果你的 gdm 登录窗口没有象预期的那样扩展到两个显示器上面,或者你的桌面没有扩展,我只能说你很幸运,因为你可以在解决这些问题的同时来提升自己对系统的了解。;-)

我碰到的一些问题。
1) $ /opt/ati/bin/fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.2.1)
我被这个问题磨练了好久,正确的显示结果应该是
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY/RADEON 9000 DDR Generic
OpenGL version string: 1.3.1091 (X4.3.0-8.27.6)
你首先应该做这些:
(1)确认你的驱动模块已经启动
# lsmod
fglrx                 392300  8
intel_agp              23708  1
agpgart                35532  2 fglrx,intel_agp
如果没有,用 modprobe 来加载模块
并编辑自动模块加载文件,例如我的机器:
# vim /etc/modules.autoload.d/kernel-2.6.17-gentoo-r8
fglx
intel_agp
agpgart
以让下次启动时这些模块自动加载。
# modules-update

(2) 编辑 /etc/X11/xorg.conf 文件确认

Section "Extensions"
        Option      "Composite" "false"
EndSection

(3) 如果你上面都确认了,你这时重启系统比较好。

(4) 如果你还要往下看的话。这里有一些建议:如果你开始也像我一样尝试了 开源驱动 的话,并且按照开源驱动做了相应的配置了,你要尝试一下去卸载那些包或者更改那些相关配置文件。如果你采用手动删除那些包的话(并不推荐),别忘了做 env-update 。

2) 每个人的机器可能配置不一样,所以解决方法可能有区别。但有一种解决方式是一致的,那就是 google your problems 了,有做广告的嫌疑了 ;-)

3) 消除日志文件 /var/log/Xorg.0.log 用(EE)标识的每一个错误后,通常你就成功了。本文最后列出我的 /etc/X11/xorg.conf 文件内容,我觉得这个参考价值比较大一些。

4. 最后的提醒 (你一定要看的,我在这上面浪费了不少时间,绝对是浪费)

如果你的以前系统屏幕的分辨率是 1024x768(我想这种情况的比较多), 并且你平时都是用普通用户登录的(不推荐用root来登录系统),那么咱俩的情形就相同了。
我 的情况:gdm 登录屏幕是扩展的,但登录后,桌面是那种 clone 模式,也就是两个桌面显示相同的内容,但明明在 /etc/X11/xorg.conf 里面设置的是水平扩展,于是我就比较郁闷了,在用 root 登录看看,发现桌面是按照预期扩展的,我就纳闷了,难道是用户的问题?但我确认了自己的用户在 video 组里面,并且在xorg.conf文件里也有对应的设置。我非常困惑了。又 google 了好久,不抖包袱了,但确实是里面的某一文章说到了一下分辨率的问题,我被触动了,一看分辨率,当前的还是 1024x768,于是我改了一下,选用 2048x768,大功告成!!

5. 一些应用程序相关的问题
目前只发现 acroread 有些问题
(1) 关于 Adobe Reader (7.0.8 chs) 的字体变得超宽,可读性极差。几经试探,发现可以这样解决:

菜单==>>编辑==>>首选项==>>分辨率
 

( )使用系统分辨率 当前显示: 158 像素/英寸

(*)自定义分辨率: 158 像素/英寸


很奇怪,这样设置就 Ok 了。有些晕。不管它了。


后记
双显示器的好处还是显而易见的,你一边写代码一看文档,不用来回使 Atl+tab Ctrl+c Ctrl+v 了;你可以对照两篇文章来看,等等。一句话,好不好,用了才知道。

/etc/X11/xorg.conf
#########################################################
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "aticonfig-Screen[0]" 0 0
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"

    # FontPath     "/usr/share/fonts/CID/"
    RgbPath      "/usr/share/X11/rgb"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/misc/"
    FontPath     "/usr/share/fonts/TTF/"
    FontPath     "/usr/share/fonts/OTF"
    FontPath     "/usr/share/fonts/Type1/"
    FontPath     "/usr/share/fonts/100dpi/"
    FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
    Load  "glx"
    Load  "extmod"
    Load  "vnc"
    Load  "xtrap"
    Load  "record"
    Load  "dbe"
    Load  "dri"
    Load  "drm"
    Load  "freetype"
    Load  "type1"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "IMPS/2"
    Option        "ZAxisMapping" "4 5"
    Option        "Device" "/dev/input/mice"
    Option        "Name" "USB Mouse"
EndSection

Section "Monitor"
    Identifier   "aticonfig-Monitor[0]"
    Option        "VendorName" "ATI Proprietary Driver"
    Option        "ModelName" "Generic Autodetecting Monitor"
    Option        "DPMS" "true"
EndSection

Section "Monitor"
    Identifier   "aticonfig-Monitor[1]"
    Option        "VendorName" "ATI Proprietary Driver"
    Option        "ModelName" "Generic Autodetecting Monitor"
    Option        "DPMS" "true"
EndSection

Section "Device"
    Identifier  "aticonfig-Device[0]"
    Driver      "fglrx"
    Option        "UseInternalAGPGART" "no"
    Option        "DesktopSetup" "horizontal"
    Option        "VideoOverlay" "on"
    Option        "UseFastTLS" "2"
    Option         "EnablePrivateBackZ" "on"
    Option        "OverlayOnCRTC2" "1"
    BusID       "PCI:1:0:0"
EndSection

Section "Device"
    Identifier  "aticonfig-Device[1]"
    Driver      "fglrx"
    BusID       "PCI:1:0:0"
    Screen      1
EndSection

Section "Monitor"

    #DisplaySize      300   230    # mm
 ### Comment all HorizSync and VertSync values to use DDC:
        # These are the DDC-probed settings reported by your monitor.
        # 1280x1024, 75.0Hz; hfreq=79.98, vfreq=75.03
    Identifier   "Default_Monitor"
    VendorName   "GSM"
    ModelName    "S"
    HorizSync    30.0 - 63.0
    VertRefresh  56.0 - 75.0
    ModeLine     "1280x1024" 135.0 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync
    ModeLine     "1024x768" 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
    ModeLine     "1024x768" 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
    ModeLine     "1024x768" 75.0 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
    ModeLine     "800x600" 49.5 800 816 896 1056 600 601 604 625 +hsync +vsync
    ModeLine     "800x600" 49.5 800 816 896 1056 600 601 604 625 +hsync +vsync
    ModeLine     "800x600" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
    Option        "DPMS"
EndSection

Section "Screen"
    Identifier "aticonfig-Screen[0]"
    Device     "aticonfig-Device[0]"
    Monitor    "aticonfig-Monitor[0]"
    DefaultDepth     24
    SubSection "Display"
        Viewport   0 0
        Depth     24
        Modes    "2048x768" "1024x768"
    EndSubSection
EndSection

Section "Screen"
    Identifier "aticonfig-Screen[1]"
    Device     "aticonfig-Device[1]"
    Monitor    "aticonfig-Monitor[1]"
    DefaultDepth     24
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "DRI"
    Group        "video"
    Mode         0666
EndSection

Section "Extensions"
    Option        "Composite" "false" # "Enable"
    Option        "XVideo" "Enable"
EndSection

Section "ServerFlags"
    Option        "AIGLX" "off"
EndSection
 

 

 

 

 

url: http://blog.chinaunix.net/uid-10674382-id-2936675.html

Gentoo kernel配置

这两天自己瞎配内核,终于系统启动不了了,鼓捣了两天不停的尝试配置,重启终于搞定了。经过这两天的折腾也掌握了一些方法,配置内核这个东西还真不 是瞎来乱试的,推荐一个比较好的关于内核配置的一个网站http://www.kernel-seeds.org/和一个中文的内核讲解网址http: //lamp.linux.gov.cn/Linux/kernel_options.html

 

大家在配置内核是处理到硬件的时候可以把lspci -n命令(超级用户)的输出帖到这个网站http://kmuto.jp/debian/hcl/会自动帮你分析出你的硬件以及相应的内核驱动,这个时候 一定要把自己的具体硬件是什么以及在内核中如何对应那些选项一定要拿准了,蒙的猜测的很有可能造成两个后果,一是自己硬件驱动不了,二是无谓的勾选了过多 的选项白白扩大了内核体积。实在拿不准就Goole之,还是比较高效的。

 

摘于: http://blog.csdn.net/luoleicn/article/details/5307780

 

关于perl遍历目录查找特定文件的事情

早在99年的时候我就做过这个事情了,之后又遇到好多次这样的事情,但每次都是临时去写,没有做过记录,然后要测试,现在做个记录,下次就不必让别人重新写过了,权当做贡献吧:

如下程序遍历特定的目录下所有的文件(包括子目录),并找出以html,htm,shtml结尾的文件名称
 

#!/usr/bin/perl
&find_fileindir("/usr/local/apache/htdocs");
sub find_fileindir(){
  local($dir) = @_;
  opendir(DIR,"$dir"|| die "can't open this $dir");
  local @files =readdir(DIR);
  closedir(DIR);
  for $file (@files){
    next if($file=~m/\.$/ || $file =~m/\.\.$/);
    if ($file =~/\.(html|htm|shtml)$/i){
        print "$dir\/$file \n";
    }
    elsif(-d "$dir/$file"){
            find_fileindir("$dir/$file" );
    }
  }
}

 

摘于: http://blog.sina.com.cn/s/blog_4ce8808d01000911.html

Gentoo的emerge命令参数用法详解

Gentoo的包管理工具称为portage。emerge是这个portage的字符界面管理工具,图形界面工具还有portato,porthole,kuroo,himerge等。

ebuild

ebuild是Portage包管理程序的根本。它是一个纯文本文件,而每一个ebuild都会对应一个包(软件包)。ebuild会告诉 portage要下载的文件、该包可运行的平台、如何编译它、它所依赖的ebuild和一些修补代码的patch。Portage内有一个ebuild大 集合,称为Portage tree,是gentoo网站所提供的ebuild。它包含了大部份常用的包,并会不时更新。如果要使用的包不在其内,也可以手动加入。

USE标志

USE标志的设置位于Gentoo系统的/etc/make.conf文档中,作用是使得Emerge在处理依赖关系的时候可以做到不安装不需要的软件包(例如安装Gnome的用户没有必要因为一个软件包的依赖关系而安装KDE与Qt),而安装指定的软件包(同样以Gnome举例,Gnome的用户基本上都会安装GTK+),把系统的设置专注化。

Gentoo的emerge命令参数用法详解

查找名称包含mozilla的包

emerge -s mozilla
emerge search mozilla


查找描述包含mozilla

emerge -S mozilla
emerge --searchdesc mozilla


使用本地编好的包,没有就下源码(尽量避免编译)

emerge -k mozilla
emerge --usepkg mozilla


只使用本地编好的,否则不安装(绝对不编译,所有依赖的包都有binary才装)

emerge -K mozilla
emerge --usepkgonly mozilla


卸载

emerge -C mozilla
emerge unmerge mozilla


升级portage树

emerge --sync

下载snapshot包来完成sync

emerge-webrsync

查看已安装包的changelog

emerge -pl mozilla
emerge --pretend --changelog mozilla


查看依赖关系(这个包还没装)
(–pretend保证这一次操作实际上不做任何事情,可以跟任何options组合)

emerge -p mozilla
emerge --pretend mozilla


只下载某个软件的源码(以及它所依赖的)

emerge -f mozilla
emerge --fetchonly mozilla


查看从哪下的源码

emerge -fp mozilla

安装指定版本号的

emerge "..........."

emerge -k "

从网上下binary包来装

emerge -g mozilla
emerge --getbinpkg mozilla


(注意,实际上没有任何binary包存在于官方的mirror中
所以这个基本上是无用,在manpage也没有出现。除非自
己用livecdsetup一个这样的站点。不知道以后会不会
出现这样的mirror。gentoo.org论坛上似乎也有讨论这个。)

查看binary包依赖

emerge -gp mozilla
emrege --getbinpkg --pretend mozilla


查看依赖关系(这个包已经装了)

emerge -ep opera
emerge --emptytree --pretend opera


(不用pretend会重新编译这所有依赖的包,glibc因为安全关系没有列出)

不使用依赖关系安装软件

emerge -O opera
emerge --nodeps opera


只安装其依赖的软件

emerge -o opera
emerge --onlydeps opera


升级软件

emerge -u opera
emerge --update opera


升级系统软件

emerge -u system

升级整个系统

emerge -u world

避免升级覆盖掉版本更高的软件

emerge -uU world
emerge --update --upgradeonly world


查看可用的USE参数
emerge -pv opera

参考文档:http://www.gentoo.org/doc/zh_cn/index.xml

: http://www.ha97.com/3192.html

 

 

摘于 : http://www.ha97.com/3192.html