载入中
自定义HTML载入中... loading
Linux 170个常见问题的详细解答(二) [转贴 2008-05-11 20:36:52]  删除... 
字体变小 字体变大
  0001让apache的默认字符集变为中文如果是1.*,vi httpd.conf找到 AddDefaultCharset ISO8859-1 一行,改为AddDefaultCharset GB2312如果是2.*的话,需要改动一个地方,vi httpd.conf AddDefaultCharset ISO-8859-1 改为 AddDefaultCharset off

    0002永久更改ip ifconfig eth0 新ip然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip

    0003从Linux上远程显示Windows桌面(lnx3000)

    安装rdesktop包

    0004手动添加默认网关以root用户,执行: route add default gw 网关的IP想更改网关1 vi /etc/sysconfig/network-scripts/ifcfg-eth0更改GATEWAY 2 /etc/init.d/network restart

    0005 redhat 8.0上msn和qq下载Gaim 0.58版:
www.linuxsir.org/gaim/gaim-0.58-2.i386.rpm下载QQ插件 for gcc2.9版:www.linuxsir.org/gaim/libqq-0.0.3-ft-0.58-gcc296.so.gz将下载的文件放入/temp目录,然后将系统中已有的Gaim删除,即在终端仿真器中键入命令:rpm -e gaim.开始安装打开终端仿真器,继续执行下列命令安装Gaim 0.58版,即:cd /temp         (进入temp目录)

    rpm -ivh gaim-0.58-2.i386.rpm (安装软件)

    当安装成功后,你就可以在GNOME或KDE桌面建立Gaim图标了。

    继续安装QQ插件,即键入命令:gunzip libqq-0.0.3-ft-0.58-gcc296.so.gz (解压缩文件)

    cp libqq-0.0.3-ft-0.58-gcc296.so /usr/lib/gaim (复制插件到gaim库目录中)

    软件设置首次启动Gaim 0.85版时,会出现的登录界面。先选择“插件”,在插件对话框中点击“加载”,分别将libmsn.so和libqq-0.0.3-ft-0.58-gcc296.so文件装入,确认后关闭。然后再选择“所有帐号”,在出现的帐号编辑器中继续点击“增加”,当出现的修改帐号页面时,我们就可以输入自己的QQ或MSN号了,登录名填写QQ号码或MSN邮箱,密码填写对应的QQ或MSN密码,Alias填写自己的昵称,协议选择相应的QQ或MSN,其他的设置按默认的即可。当全部设置完成后就可以登录使用了。

    0006查出22端口现在运行什么程序lsof -i :22

    0007查看本机的IP,gateway, dns IP:以root用户登录,执行ifconfig.其中eth0是第一块网卡,lo是默认的设备Gateway:以root用户登录,执行netstat -rn,以0.0.0.0开头的一行的Gateway即为默认网关也可以查看/etc/sysconfig/network文件,里面有指定的地址!

    DNS:more /etc/reslov.conf,内容指定如下:nameserver 202.96.69.38 nameserver 202.96.64.38

    0008 RH8.0命令行下轻松改变ping 的TTL值(cgweb)

    #sysctl -w net.ipv4.ip_default_ttl=N(N=0~255),若N>255,则ttl=0

    0009 RH8.0命令行下轻松改变系统配置默认值(houaq)

    编辑/etc/sysctl.conf, 例如,将net.ipv4.ip_forward = 0变为net.ipv4.ip_forward = 1重启后生效,用sysctl -a查看可知

    0010 mount局域网上其他windows机器共享出的目录mount -t smbfs -o username=guest,password=guest //machine/path /mnt/cdrom

    0011允许|禁止root通过SSH登陆(Fun-FreeBSD)

    修改sshd_configermitRootLogin no|yes

    0012让root直接telnet登陆编辑/etc/pam.d/login,去掉auth required /lib/security/pam_securetty.so 这句话

    0013在linux接adsl设备需要一个运转正常的Linux + 至少一块网卡 + 宽带设备已经申请完毕,同时已经开通前市场上大概有几种ADSL设备,他们工作的方式有一些细微的差别。

    就是通过虚拟拨号来完成上网的这一过程,也就是利用pppoe设备来进行虚拟拨号的叫作全向猫,就是一种加电后自动的进行拨号的工作,然后留给我们的接口是RJ45,大连地区一般留给我们的网关都是10.0.0.2,这种设备最容易对付,最后是直接分配给用户一个固定的IP,相对大家来说也比较容易对付1.第一种需要进行拨号:这几种设备都是通过eth接口与计算机进行通讯的,所以先将硬件设备的连接作好,尤其是宽带猫的,一定要确认无误(否则一会儿要不去可不算我的事情)

    然后启动系统,确认系统上是否安装rp-pppoe这个软件(通过rpm -qa|grep pppoe来查找),如没有安装的用户,在光盘里或是到网上去down一个来,安装上后,以root用户执行adsl-setup,这样就进入了adsl的资料的设定状态,要求输入申请宽带的用户名以及其他一些信息,确认没有问题,接受直至最后(里面都是E文,但是一看即能懂,比较简单,有关一个防火墙的设置,我一般都不用,选0,大家可以具体考虑)。

    配置完成后,以root用户执行adsl-start,这样将进行adsl的拨号工作,正常就会一下上线,如有什么具体问题,去看一下日志(/var/log/messages)里面告诉你什么了。

    停掉adsl,执行adsl-stop就可以了(很简单的)

    2.另外两种比较容易对付:全向猫:只要将你的网卡的IP设置成一个10网段的IP,然后网关指到全向猫的IP上(10.0.0.2),基本上不有太大的问题固定IP:就像配置本地儿的网卡一样,将IP,网关,DNS都按申请来的填写上就可以搞定了

    0014让linux自动同步时间(shunz)

    vi /etc/crontab加上一句:00 0 1 * * root rdate -s time.nist.gov

    0015 linux的网上资源有哪些国外
http://lwn.net/ http://www.tldp.org/ http://www.yolinux.com/(flying-dance big big pig)

   
http://www.justlinux.com/ http://www.linuxtoday.com/ http://www.linuxquestions.org/ http://www.fokus.gmd.de/linux/ http://www.linux-tutorial.info/ http://public.www.planetmirror.com/ http://www.freebsdforums.org/forums/ http://www.netfilter.org/documentation/ http://www-106.ibm.com/developerworks/linux/

    国内http://www.fanqiang.com/ http://www.linuxsir.com/ http://www.chinaunix.net/ http://www.linuxfans.org/(deadcat)

   
http://www.linuxeden.com/ http://www.linuxforum.net/ http://www.linuxaid.com.cn/ http://freesoft.online.sh.cn/ http://www-900.ibm.com/developerWor……nux/index.shtml http://www.neweasier.com/software.html

    0016北京的培训点http://www.milkyway.com.cn/

    0017改变telnet的端口/etc/services这个文件里你可修改想要的端口号。重启守护进程

    0018终端模式有问题(sakulagi)

    export TERM=vt100

    0019模仿超级终端,LINUX里什么程序连接路由器和交换机(alstone)

    minicom

    0020 ssh上来能不能不自动断线(wind521)

    那是timetou的设置,修改TMOUT变量值

    0021用什么工具做入侵检测snort

    0022 Linux下检测程序内存泄漏的工具cchecker或是efence库都可以

    0023 linux下如何监视所有通过本机网卡的数据tcpdump iptraf

    0024为什么root执行好多命令都说command not found你一定是telnet上来d,然后su成root的吧,改改你的su命令格式,应该是su - root

    0025关闭用户的POP3权限(tiansgx)

    把POP3的端口关了就可以了。 在文件/etc/services中找到这一行 pop-3 110/tcp 把这一行前加个#,把它注释掉就可以了。

    0026 linux下播放flash动画(myxfc)

    linux下播放flash动画用这个东西,不会造成浏览器的关闭(其他的插件不好用)

    首先下载flash播放动画在linux的插件
http://www.collaborium.org/onsite/j……sh_linux.tar.gz tar zxvf flash_linux.tar.gz打开包之后,会看到Linux文件夹在linux文件颊里有两个文件libflashplayer.so 和shockwaveflash.class,把这两个文件拷贝到你的浏览器里的插件里(浏览器不一样,插件的位置可能也不一样)

    /usr/lib/mozilla-1.0.1/plugins,就可以了

    0027锁定wu-ftp用户目录(wangla)

    编辑ftpaccess文件restricted-uid *这一句很重要,限制了ftp用户在自己的目录里。

    0028服务器怎么不让telnet(知秋一叶)

    服务器上必须启动telnet服务 && 服务器的防火墙优先级应该设为低

    0029防止任何人使用su命令成为root(xiaohu0)

    1.vi /etc/pam.d/su auth sufficient /lib/security/pam_rootok.so debug auth required /lib/security/pam_wheel.so group=wheel 2.在/etc/pam. d/su配置文件中定义了wheel组。

----------------------------程序开发篇--------------------------

    0001 linux下调试core文件gdb :出错产生core dump的可执行程序。

    : core dump的文件名,缺省是“core”

    0002 gcc abc.c得到的a.out不能运行。/a.out

    0003 c++ 编译时为什么出错信息说cout没定义include头文件完后加入 using namespace std;

    0004新编译生成的gcc ,使用的标准连接库都在/usr/local/lib 下了,但使用的缺省的连接路径是 /usr/lib 怎样添加?(除了在每次编译时 增加 -L /usr/local/lib 以外)(sakulagi, hutuworm)

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib写到~/.bash_profile里面。

    增加一种简便办法:将/usr/local/lib加入/etc/ld.so.conf,然后运行一次ldconfig

----------------------------经典图书篇--------------------------

    0001 GNU/Linux高级网络应用服务指南linuxaid网站机械工业出版社优点:又全又精,全都是实战之作缺点:针对版本较低:redhat 6.2

    0002 Linux Apache Web Server管理指南Charles Aulds机械工业出版社优点:目前我还没有发现哪个关于apache的问题这本书没有讲过缺点:针对1.3.x,最新的针对2.0.*的中文版待出

    0003 Linux内核情景分析浙江大学出版社优点:太透彻了,没法不懂缺点:还是版本问题,呵呵,内核更新太快了,不过还是必读

    0004 Unix环境高级编程Richard Stevens机械工业出版社优点:博大精深缺点:初学者是很难理解的,否则怎么叫《高级编程》呢?

    0005编程精粹——Microsoft编写优质无错c程序秘诀Steve Maguire电子工业出版社优点:不说了,作者是VC开发组的组长缺点:很难找了,1994年出的

    0006 understanding the linux kernel第二版

    0007 UNIX操作系统教程(英文版)(弱智)

    by Syed Mansoor Sarwar ……

    机械工业出版社特点:浅显易懂,着重unix基础概念和整体理解,顺便复习英语。

    缺点:目前没有中文版

    0008 UNIX编程环境(弱智)

    by Brian W.Kernighan, Rob Pike陈向群 等译机械工业出版社特点:浅显,深入浅出讲解如何使用UNIX及各种工具,简单介绍Unix的编程环境;对比“UNIX环境高级编程”,此书适合新手入门。

    缺点:目前没有英文版

    0009 The Art of UNIX Programming(hutuworm)

    作者: Eric Steven Raymond网址: http://catb.org/~esr/writings/taoup/html/优点: E.S. Raymond经典著作的优点就不用说了缺点: 一直更新,目前版本0.73,看完了又给你出一新版,感觉很不爽

    0010 unix网络编程——卷一《套接口API和X/Open传输接口API》(slg1972)

    清华W.Richard Stevens著(已故)

    详细地讲解了unix网络的编程非入门级的东西

    0011 unix网络编程——卷二《进程间通讯》(slg1972)

    清华W.Richard Stevens著(已故)

    详细讲解了unix之间的进程,线程之间的关系,以及各种不同标准的进程编程的异同。

    非入门级的东西

    0012 unix网络编程——卷三《应用程序》(slg1972)

    我至今也没有买到,应该也不错。

    0013《基于C++ CORBA高级编程》(slg1972)

    清大Michi Henning,Steve Vinoski著中间界的好书,通向corba应用的必备资料。

    非入门级的东东。

----------------------------其他--------------------------

    1、问:安装Linux时,Swap区要设置为多大才合适?

    答:一般来说(非大负荷服务器),如果内存在256MB以下,Swap区以设为内存的两倍为宜;内存在256MB及其以上,Swap区设为128MB即可。

    2、问:Linux下如何访问Windows分区(FAT32格式)内容?

    答:在Linux下访问硬盘分区的内容,必须先用mount命令将分区加载到Linux的某个目录下才能访问。

    先用“fdisk -l”命令(某些版本可能需要用“fdisk -l 硬盘设备名”)查看硬盘分区情况,操作如下:

    $ fdisk -l

    Disk /dev/hda: 255 heads, 63 sectors, 4865 cylinders Units = cylinders of 16065 * 512 bytes

    Device Boot Start End Blocks Id System /dev/hda1 1 386 3100513+ b Win95 FAT32 /dev/hda2 * 387 388 16065 83 Linux /dev/hda3 389 4865 35961502+ f Win95 Extd (LBA)

    /dev/hda5 389 399 88326 82 Linux swap /dev/hda6 400 1445 8401963+ b Win95 FAT32 /dev/hda7 1446 1963 4160803+ b Win95 FAT32 /dev/hda8 1964 2491 4241128+ 83 Linux /dev/hda9 2492 3537 8401963+ b Win95 FAT32 /dev/hda10 3538 4347 6506293+ b Win95 FAT32 /dev/hda11 4348 4865 4160803+ 83 Linux

    可以看到,硬盘上有5个Windows分区,分别是/dev/hda1、/dev/hda6、/dev/hda7、/dev/hda9、/dev/hda10.

    mount命令的一般使用方法如下:

    mount -t 分区格式 分区位置 加载位置

    要访问/dev/hda1的内容,可以用以下代码进行加载:

    $ mount -t vfat /dev/hda1 /mnt/c

    -t vfat表示类型是vfat(Windows 95 FAT32)分区格式;/dev/hda1是被加载的分区位置;/mnt/c代表Linux里/mnt目录下的名字为c的目录,如果不存在,则先用mkdir命令建立这个目录。如果要求对分区进行写操作,则用以下命令:

    $ mount -rw -t vfat /dev/hda1 /mnt/c

    其中的-rw参数表示Read和Write.

    3、问:如何使Windows分区里面的中文文件名(目录名)正确显示?

    答:用mount命令加载Windows分区后,中文常显示为“?”号。这是因为发行版自带的内核默认用ISO-8859编码来处理加载上的Windows分区文件(目录)名,只能处理单字节的英文字体而无法显示双字节的中文字体。要正确显示,可以用下面的代码加载Windows分区:

    $ mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/c

    这个命令能让内核以cp936编码处理Windows分区的文件(目录)名,从而正确显示中文文件(目录)名。

    还有一个“一劳永逸”的方法,即重新配置内核,在“File systems”-“Native Language Support”-“Default NLS Option”里填入cp936.重新编译内核后,无需加上-o iocharset=cp936参数也能正确显示。

    4、问:为何使用-rw参数加载Windows分区后,只有root用户能够读写,普通用户还是只能读、不能写?

    答:直接用mount -rw加载的Windows分区,所有文件对普通用户都只有读权限而没有写权限(但root用户有写权限)。要想让普通用户也能读写,可在mount命令中加上umask=000参数,代码如下:

    $ mount -rw -t vfat -o umask=000,iocharset=cp936 /dev/hda1 /mnt/c

    5、问:如何让Linux启动时自动进入图形化界面?

    答:编辑/etc/inittab文件,找到下面这行代码:

    id:3:initdefault:

    它定义Linux进入系统后执行的init动作级别,共有以下6个级别:

    级别0,挂起、关机模式;

    级别1,单用户模式;

    级别2,多用户模式,但没有网络功能;

    级别3,全功能的单用户模式;

    级别4,没用到;

    级别5,X11模式,也就是图形化界面模式;

    级别6,重起模式。

    很明显,要自动进入图形化界面,将3改成5即可。注意千万不要设成0或6,否则Linux开机后进入系统就会自动关机或自动重起。

    6、问:如何让普通用户也能使用声卡?

    答:应用程序默认通过访问/dev/dsp这个设备文件来使用声卡。在某些版本中,/dev/dsp设备的权限设置成只有root用户可以访问(读)。要想让普通用户也使用/dev/dsp,执行以下命令:

    $ chmod 666 /dev/dsp

    7、问:如何使xmms播放MP3时正确显示中文歌曲列表?

    答:xmms默认使用的字体是ISO-8859编码,不能处理双字节字体。以xmms 1.2.7为例,要正确显示中文,可以进行以下操作:运行xmms,在主窗口点击右键;在弹出的选单里选择“选项”-“功能设定”-“Fonts”;选中“Use fontssets”和“Use X font”选项;然后点击“浏览”按钮,在弹出的“字形选择”窗口中选择一种中文字体(如fangsong ti);点击“应用”即可见到效果。

    8、问:如何用vi编辑和保存文件?

    答:vi是Linux终端下或控制台下常用的编辑器,基本的操作方式为:

    vi /路径/文件名

    例如,vi /etc/fstab表示显示/etc/fstab文件的内容。使用键盘上的Page Up和Page Down键可以上下翻页;按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入编辑状态,这时从键盘输入的内容将插入到光标位置;再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出。如果不想保存而直接退出,则按下Esc键后,输入“:q!”,然后回车即可。“wq”表示Write和Quit,即保存退出:“q!”表示忽略修改强行退出。

    9、问:重装Windows后,LILO启动选单不见了,启动时无法进入Linux系统,如何恢复?

    答:如果安装Linux过程中制作了启动软盘,可用它启动进入Linux系统,再执行lilo命令恢复即可。如果没有启动盘,那么可以用Linux安装光盘按以下步骤恢复。

    1.根分区和/boot分区是同一分区,用Linux发行版光盘启动计算机,看到安装欢迎画面后,按下ALT+2,将转到控制台(出现“bash#”字样);然后执行以下命令:

    $ mkdir /mnt/root #建立目录$ mount /dev/hda* /mnt/root #hda*是原来Linux的根分区,有时要用-t参数指定分区类型$

票数:
什么是“我顶”?
点击数:    评论数:
本文章引用通告地址(TrackBack Ping URL)为:
本文章尚未被引用。
发表评论
大 名:
(不填写则显示为匿名者)
网 址:
(您的网址,可以不填)
标 题:
内 容:
请根据下图中的字符输入验证码:
(您的评论将有可能审核后才能发表)
和讯个人门户 v1.0 | 和讯部落 | 客服中心