您的位置:首页 > 运维架构 > Linux

Linux常见问题

2016-05-11 13:34 477 查看
Linux常见问题
·查看当前目录下所有子目录的大小

#/bin/sh

du $1 --max-depth=1 | sort -n|awk '{printf "%7.2fM ----> %s/n",$1/1024,$2}'|sed 's:/.*//([^/]/{1,/}/)$:/1:g'

·修改主机名(bjchenxu)

vi /etc/sysconfig/network,修改HOSTNAME一行为"HOSTNAME=主机名"(没有这行?那就添加这一行吧),然后运行命令 " hostname 主机名"。一般还要修改/etc/hosts文件中的主机名。这样,无论你是否重启,主机名都修改成功。

·删除目录中含输入关键字的文件(WongMokin)

find /mnt/ebook/ -type f -exec grep "在此输入关键字" {} /; -print -exec rm {} /;

· 让cron中的任务不回馈信息, 本例5分钟检查一次邮件(WongMokin)

0-59/5 * * * * /usr/local/bin/fetchmail > /dev/null 2>&1

·在当前目录下解压rpm文件(bjchenxu)

cat kernel-ntfs-2.4.20-8.i686.rpm | rpm2cpio | pax -r

· 合并两个Postscript或PDF文件(noclouds)

$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite /

-sOutputFile=bar.ps -f foo1.ps foo2.ps

$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite /

-sOutputFile=bar.pdf -f foo1.pdf foo2.pdf

· 去掉apache的manual目录中的所有.en的后缀名(bjchenxu)

进入到manual目录

代码:find ./ -regex .*/.en|awk -F. '{ printf "mv %s.%s.%s.%s %s.%s.%s/n",$1,$2,$3,$4,$1,$2,$3}'|sh

·如何起多个X(noclouds)

startx默认以display :0.0起第一个X,通过传递参数给Xserver可以起多个X:

# startx -- :1.0

# startx -- :2.0

...

然后用Ctrl-Alt-F7/F8...切换。

·让一个程序在退出登陆后继续运行(noclouds,bjchenxu)

# <cmd>

# disown

或者是

nohup command &

· 看Linux启动时屏幕的显示信息(bjchenxu)

在启动完后用命令dmesg查看

·让vi不响铃(sakulagi)

echo "set vb t_vb=" >> ~/.vimrc

·如何配置让哪些服务启动(天外闲云,q1208c)

方法1 运行ntsysv或者setup命令,进入菜单进行配置

方法2 chkconfig --list 显示服务

chkconfig name on/off 打开/关闭“name”服务

·安全删除linux(天外闲云)

步骤1 Dos下使用fdisk /mbr或者用win2000/xp的光盘启动进入故障恢复控制台,使用命令fixmbr

步骤2 格式化linux分区为windows分区即可

·用grub引导进文本界面(天外闲云)

进入grub之后,按a,输入 空格 3 就可以引导进入文本界面,但是不修改系统的运行级,只在当次有效。

·如何使新用户首次登陆后强制修改密码(猫小)

#useradd -p '' testuser; chage -d 0 testuser

·日志维护工具logrotate(hotbox)

在/etc/logrotate.conf中配置,作用:定义log文件达到预定的大小或时间时,自动压缩log文件

·如何产生一个长度固定(例如文件长度为1M)字节的空文件,即每个字节的值全为0x00(sakulagi)

dd if=/dev/zero of=/tmp/zero_file bs=1024 count=1024

·RedHat Linux里修改时间的步骤(hutuworm)

1. 设置你的时区: timeconfig里选择Asia/Shanghai (如果你位于GMT+8中国区域)

2. 与标准时间服务器校准: ntpdate time.nist.gov

2.5 当然,如果你是李嘉诚,也可以跟自己的手表校准: date -s STRING (STRING格式见man date)

3. 写回硬件时钟: hwclock --systohc

·查找当前目录下文件并更改扩展名(零二年的夏天)

更改所有.ss文件为.aa

# find ./ -name "*.ss" -exec rename .ss .aa '{}' /;



[root@localhost adobe]# touch aaa.ss.ss

[root@localhost adobe]# find ./ -name "*.ss" -exec rename .ss .aa '{}' /;

[root@localhost adobe]# ls

aaa.aa aaa.aa.ss AdobeReader_enu-7.0.0-2.i386.rpm cns-install.sh

· patch的使用(天才※樱木)

语法是patch [options] [originalfile] [patchfile]

例如:

patch -p[num] <patchfile

-p参数决定了是否使用读出的源文件名的前缀目录信息,不提供-p参数,则忽略所有目录信息,-p0(或者-p 0)表示使用全部的路径信息,-p1将忽略第一个"/"以前的目录,依此类推。如/usr/src/linux-2.4.16/Makefile这样的文 件名,在提供-p3参数时将使用linux-2.4.16/Makefile作为所要patch的文件。

对于刚才举的Linux内核源码2.4.16升级包的例子,假定源码目录位于/usr/src/linux中,则在当前目录为/usr/src时使用 "patch -p0 <patch-2.4.16"可以工作,在当前目录为/usr/src/linux时,"patch -p1<patch-2.4.16"也可以正常工作。

·将file.txt里的123改为456(hutuworm)

方法1

sed 's/123/456/g' file.txt > file.txt.new

mv -f file.txt.new file.txt

方法2

vi file.txt

输入命令:

:%s/123/456/g

·将一个分区格式化为ext3日志文件系统(hutuworm)

mkfs -j /dev/xxxx

·开启硬盘ATA66 (laixi781211)

/sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda

·查看当前运行级别(双眼皮的猪)

runlevel

·查看当前登陆身份(双眼皮的猪)

(1)who am i

(2)whoami

(3)id

注意(1)跟(2)的小区别

·删除rpm -e删除不了的包(wwwzc)

1、如果在删除包之前删除了包的目录

rpm -e --noscripts

2、如果系统里一个包被装两次(由于某些异常引起的)

rpm -e multi-installed-pkgs --allmatches

·如何定制用户登录时显示的信息(jiadingjun)

在/etc目录下放一个名字叫motd的文本文件实现的,例如,建立自己的/etc/motd:

$cat /etc/motd

welcome to my server !

那么,当用户登录系统的时候会出现这样的信息:

Last login: Thu Mar 23 15:45:43 from *.*.*.*

welcome to my server !

·用命令清空Root回收站中的文件(dtedu)

cd /var/.Trash-root

rm -rf *

·定制linux提示符 (bjchenxu)

在bash中提示符是通过一个环境变量$PS1指定的。用export $PS1查看现在的值,比较直观常用的提示符可以设定为export PS1=“[/u@/h /W]/$”。其中/u代表用户名,/h代表主机名,/W代表当前工作目录的最后一层,如果是普通用户/$则显示$,root用户显示#。

·如何找出系统中所有的*.cpp、*.h文件(bjchenxu)

用find命令就可以了。不过如果从根目录查找消耗资源较高,使用下面的命令就可以:

find / -name "*.cpp" -o -name "*.h"

·我使用的是笔记本电脑,怎么才能在控制台下显示现在还剩多少电量呢? (bjchenxu)

使用apm -m就可以看到还有多少分钟了,具体参数可以用man apm查看。

·本来装有Linux与Windows XP,一次将Windows XP重装后,发现找不到Linux与Windows XP的启动选单,请问如何解决(bjchenxu)

首先光盘启动,进入rescue模式,运行GRUB,进入grub提示符grub>,然后敲入下面的语句,重启就好了。

root (hd0,2),setup (hd0)

·永久更改ip(bjchenxu)

ifconfig eth0 新ip

然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip

·手动添加默认网关(bjchenxu)

以root用户,执行: route add default gw 网关的IP

想更改网关

1 vi /etc/sysconfig/network-scripts/ifcfg-eth0

更改GATEWAY

2 /etc/init.d/network restart

· redhat 8.0上msn和qq(bjchenxu)

下载Gaim 0.58版:

gaim-0.58-2.i386.rpm

下载QQ插件 for gcc2.9版:

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,其他的设置按默认的即可。当全部设置完成后就可以登录使用了。

由于MS对msn的协议经常升级,导致linux上的gaim和msn插件必须升级,目前尚无万无一失的解决方案,请见谅

·查出22端口现在运行什么程序(bjchenxu)

lsof -i :22

·查看本机的IP,gateway, dns(bjchenxu)

IP:

以root用户登录,执行ifconfig。其中eth0是第一块网卡,lo是默认的设备

Gateway:

以root用户登录,执行netstat -rn,以0.0.0.0开头的一行的Gateway即为默认网关

也可以查看/etc/sysconfig/network文件,里面有指定的地址!

DNS:

more /etc/resolv.conf,内容指定如下:

nameserver 202.96.69.38

nameserver 202.96.64.38

·RH8.0命令行下改变ping 的TTL值(cgweb,lnx)

方法1(重启后有效):

#sysctl -w net.ipv4.ip_default_ttl=N

(N=0~255),若N>255,则ttl=0

方法2(重启后无效):

#echo N(N为0~255) > /proc/sys/net/ipv4/ip_default_ttl

·开启LINUX的IP转发(houaq)

编辑/etc/sysctl.conf, 例如,将

net.ipv4.ip_forward = 0

变为

net.ipv4.ip_forward = 1

重启后生效,用sysctl -a查看可知

·mount局域网上其他windows机器共享出的目录(bjchenxu)

mount -t smbfs -o username=guest,password=guest //machine/path /mnt/cdrom

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

修改sshd_config:PermitRootLogin no|yes

·让root直接telnet登陆(bjchenxu,platinum)

方法1:

编辑/etc/pam.d/login,去掉

auth required /lib/security/pam_securetty.so 这句话

方法2:

vi /etc/securetty

添加

pts/0

pts/1

...

·在linux接adsl设备(wind521)

需要一个运转正常的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都按申请来的填写上就可以搞定了

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

vi /etc/crontab

加上一句:

00 0 1 * * root rdate -s time.nist.gov

·改变sshd的端口(bjchenxu)

在/etc/ssh/sshd_config中加入一行:Port 2222,/etc/init.d/sshd restart重启守护进程

·改变telnet的端口(bjchenxu)

将/etc/services文件中telnet对应的端口号21改为你想要的值,/etc/init.d/xinetd restart重启守护进程

·终端模式有问题(sakulagi)

export TERM=vt100

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

minicom

·ssh上来能不能不自动断线(wind521,双眼皮的猪)

修改自己HOME目录下的.bash_profile文件,加上

export TMOUT=1000000 (以秒为单位)

然后运行source .bash_profile

·用什么工具做入侵检测(bjchenxu)

snort

·Linux下检测程序内存泄漏的工具(bjchenxu)

cchecker或是efence库都可以

· linux下如何监视所有通过本机网卡的数据(bjchenxu)

tcpdump或者iptraf

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

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

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

编辑ftpaccess文件

restricted-uid *

这一句很重要,限制了ftp用户在自己的目录里。

·如何使lynx浏览器能够浏览中文网页(Ghost_Vale)

浏览简体中文网页就的修改如下设置

Save options to disk: [X]

Display and Character Set

Display character set : [Chinese________________________]

Assumed document character set(!): [iso-8859-1______]

CJK mode (!) : [ON_]

然后移到最下面的 Accept Changes 按下 Enter 保存就可以了

当然你的系统要支持简体中文才可以

·网卡激活了,却上不了网,怎么办?(Slock,双眼皮的猪)

traceroute,看看到底是在那一块被阻住的。

1.ping自己

2.ping网关

3.ping DNS

4.traceroute DNS

如果一切正常

nslookup www.sina.com.cn

ping sina的address

traceroute sina的address

基本上就可以知道结果了

·在redhat9下配samba,win2000能访问,win98不能访问?(squall2003)

如果是wind98必需修改注册表:HKEY_LOCAL_MACHINE/system/correntcontrolset/services/Vxd/VNETSUP下建个D值:EnablePlainTextpasswd,键值1

·如何得到网卡的MAC地址(bjchenxu,hutuworm)

arp -a | awk '{print $4}'

ifconfig eth0 | head -1 | awk '{print $5}'

· 如何得到网卡的IP地址(mb)

ifconfig eth0 |awk '/inet addr/ {split($2,x,":");print x[2]}'

· 如何修改Linux机器所在的工作组(hutuworm)

vi /etc/samba/smb.conf,修改workgroup = 一行,将组名写在后面。

·一块网卡如何绑定两个ip(linuxloveu)

#cd /etc/sysconfig/network-scripts

#cp ifcfg-eth0 ifcfg-eth0:1

#vi ifcfg-eth0:1

修改IP和设备名

·Debian下一个网卡绑定多个ip的方法(NetDC)

修改/etc/network/interfaces

auto eth0

iface eth0 inet static

address 172.16.3.123

netmask 255.255.255.0

network 172.16.3.0

broadcast 172.16.3.255

gateway 172.16.3.1

auto eth0:1

iface eth0:1 inet static

address 10.16.3.123

netmask 255.255.0.0

network 10.16.0.0

broadcast 10.16.255.255

修改/etc/network/ifstate

lo=lo

eth0=eth0

eth0:1=eth0:1

然后/etc/init.d/networking restart就可以了。

一个网卡绑定多ip另一法(hotbox)

在/etc/sysconfig/network-scripts/下创建一个文件:ifcfg-ethX-rangeX ("X"为网卡号)

文件内容:

IPADDR_START=<start ip>

IPADDR_END=<end ip>

CLONENUM=0

可以有256个ip

·192.168.1.0/24(双眼皮的猪)

它与192.168.1.0/255.255.255.0是等价的,只是表示方式不同....

· linux下清空arp表的命令(NetDC)

#arp -d -a(适用于bsd)

for HOST in `arp | sed '/Address/d' | awk '{ print $1}'` ; do arp -d $HOST; done

·使用ntp协议从服务器同步时间(NetDC)

ntpdate NTP-SERVER 例:ntpdate 172.16.2.1

· 立刻让LINUX支持NAT(platinum)

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -I POSTROUTING -j MASQUERADE

· rh8.0下rcp的用法设置(zhqh1)

只对root用户生效

1、在双方root用户根目录下建立.rhosts文件,并将双方的hostname加进去.在此之前应在双方的/etc/hosts文件中加入对方的IP和hostname

2、把rsh服务启动起来,redhat默认是不启动的。方法:用执行ntsysv命令,在rsh选项前用空格键选中,确定退出。 然后执行:service xinetd restart即可。

3、到/etc/pam.d/目录下,把rsh文件中的auth required /lib/security/pam_securetty.so一行用“#”封掉即可。

·在ethX设备上,使LINUX支持网络广播功能(默认是不支持的)(platinum)

ip route add 255.255.255.255 dev ethX

·路由设置手册(NetDC)

查看路由信息:

netstat -rn

route -n

手工增加一条路由:

route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

手工删除一条路由:

route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

好了,下面到了重要的了,让系统启动的时候自动启用路由设置。

在redhat中添加一条路由,修改文件/etc/sysconfig/static-routes

any net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

在debian中添加一条路由,

方法一:修改/etc/network/interfaces

代码:

auto eth0

iface eth0 inet static

address 172.16.3.222

netmask 255.255.0.0

network 172.16.0.0

broadcast 172.16.255.255

gateway 172.16.2.1

up route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

down route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

方法二:在/etc/network/if-up.d目录下建立一个简单的脚本文件,如static-route$(记得以$符号结尾,要不有个run-parts会跑出来告诉你一些东西)脚本最简单的就好啦,如:

代码:

#!/bin/bash

route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

嘿嘿,你也可以猜到/etc/network/目录下的其他目录的作用了吧。

发觉在debian中这个route的设置其实只是它的那些配置文件的一个比较简单的应用而已,你完全可以做更复杂的应用。

0046 利用ssh复制文件(platinum)

假如A、B都有SSH服务,现在在A的SSH里

1、从A复制B(推过去)

scp -rp /path/filename username@remoteIP:/path

2、从B复制到A(拉过来)

scp -rp username@remoteIP:/path/filename /path

如果其中一个不是LINUX系统,可以在WINDOWS上用SecureFX软件

·samba3.0中文显示问题的解决办法(linuxzfp, jiadingjun)

在samba 3.0的配置文件中(/etc/samba/smb.conf)的[global]中加入下面两句:

unix charset=cp936

重启服务

service smb restart

· 临时修改网卡MAC地址的方法

关闭网卡:/sbin/ifconfig eth0 down

然后改地址:/sbin/ifconfig eth0 hw ether 00:AA:BB:CCD:EE

然后启动网卡:/sbin/ifconfig eth0 up

·conntrack 表满的处理方法(cgweb)

前段时间配置的iptables+squid做的proxy server ,一直工作正常。今天我上控制台上发现

Jun 18 12:43:36 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:49:51 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:50:57 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:57:38 red-hat kernel: ip_conntrack: table full, dropping packet.

IP_conntrack表示连接跟踪数据库(conntrack database),代表NAT机器跟踪连接的数目,连接跟踪表能容纳多少记录是被一个变量控制的,它可由内核中的ip- sysctl函数设置。每一个跟踪连接表会占用350字节的内核存储空间,时间一长就会把默认的空间填满,那么默认空间时多少?我以redhat为例在内存为64MB的机器上时4096,内存为128MB是 8192,内存为256MB是16376,那末就能在/proc/sys/net/ipv4/ip_conntrack_max里查看、设置。

例如:增加到81920,可以用以下命令:

echo "81920" > /proc/sys/net/ipv4/ip_conntrack_max

那样设置是不会保存的,要重启后保存可以在/etc/sysctl.conf中加:

net.ipv4.ip_conntract_max =81920

按照此方法改变后一切正常,要是在满了可以加大其值.

·Linux下查看光纤网卡的工作模式(sakulagi)

主板上PCI—X插槽中插入一块64位的光纤网卡,在LINUX9.0的环境下,要知道它是否工作在64位模式下,可使用getconf WORD_BIT

·如何让Linux网关后面的WIN32下的用户直接点击FTP连接下载?(platinum)

modprobe ip_nat_ftp

·linux下调试core文件(bjchenxu)

gdb <progname> <core>

<progname>:出错产生core dump的可执行程序。

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

· 新编译生成的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

·RH9下GCC的安装(一起走过的日子,hutuworm)

三种方法选一:

(1)利用CD上rpm安装

CD-1:compat-gcc-7.3-2.96.118.i386.rpm

CD-1:compat-gcc-c++-7.3-2.96.118.i386.rpm

CD-1:libgcc-3.2.2-5.i386.rpm

CD-2:compat-gcc-g77-7.3-2.96.118.i386.rpm

CD-2:compat-gcc-java-7.3-2.96.118.i386.rpm

CD-2:compat-gcc-objc-7.3-2.96.118.i386.rpm

CD-2:gcc-3.2.2-5.i386.rpm

CD-2:gcc-c++-3.2.2-5.i386.rpm

CD-2:gcc-g77-3.2.2-5.i386.rpm

CD-2:gcc-gnat-3.2.2-5.i386.rpm

CD-2:gcc-java-3.2.2-5.i386.rpm

CD-2:gcc-objc-3.2.2-5.i386.rpm

比如碰到系统提示:

warning : gcc-3.2.2-5.i386.rpm : V3 DSA signature :MOKEY key ID db42a60e

error : Failed dependencies :

binutils >=2.13.90.0.18-9 is needed by gcc-3.2.2-5

glibc-devel >=2.3.2-11.9 is needed by gcc-3.2.2-5...

就先安裝glibc-devel包,依此类推

(2)更好的方法就是在X-window下选“主菜单”──>“系统设置”──>“添加/删除应用程序”──>“开发工具”中的gcc并安装它

(3) up2date gcc便可自动解决dependency问题

· linux的自动升级更新问题(hutuworm,NetDC)

对于redhat,在www.redhat.com/corp/support/errata/找到补丁,6.1以后的版本带有一个工具up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。

升级除kernel外的rpm: up2date -u

升级包括kernel在内的rpm: up2date -u -f

由于Red Hat Network SSL证书过期,所以应在rhn_register || up2date 之前先执行一行script以更新证书:

wget -q -O - https://rhn.redhat.com/help/new-cert.sh | /bin/bash

Debian跟别的发行版还是有很大的差别的,用Debian做服务器维护更加方便;红帽的升级其实挺麻烦的,当然,如果你交钱给红帽的话,服务是会不一样的。

Debian下升级软件:

apt-get update

apt-get upgrade

前提:配置好网络和/etc/apt/sources.list,也可以用apt-setup设置。

·mount用法(sakulagi,sxsfxx)

fat32的分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom

ntfs的分区 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom

iso文件 mount -o loop /abc.iso /mnt/cdrom

软盘 mount /dev/fd0 /mnt/floppy

USB闪存 mount /dev/sda1 /mnt/cdrom

所有/etc/fstab内容 mount -a

可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

访问DVD mount -t iso9660 /dev/dvd /mnt/cdrom或mount -t udf /dev/dvd /mnt/cdrom

注意:dvd的格式一般为iso9660或udf之一

· 在vmware的LINUX中使用本地硬盘的FAT分区(bjchenxu)

将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:

//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0

其中win_ip是你的windows的IP地址;

D$是你的windows里面共享的D盘的共享名;

/mnt/d是要将该分区mount到linux的目录;

win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。

如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

· 删除名为-a的文件(bjchenxu)

rm ./-a

rm -- -a 告诉rm这是最后一个选项,参见getopt

ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' /;

·删除名为/a的文件(bjchenxu)

rm //a

·删除名字带的/和‘/0'文件(bjchenxu)

这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用

1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。

2.也可将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,

clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.

最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

·删除名字带不可见字符的文件(bjchenxu)

列出文件名并转储到文件:ls -l >aaa

然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:

vi aaa

[rm -r *******

]

把文件加上执行权限 chmod +x aaa

执行 $aaa

· 删除文件大小为零的文件(bjchenxu)

rm -i `find ./ -size 0`

find ./ -size 0 -exec rm {} /;



find ./ -size 0 | xargs rm -f &



for file in * #自己定义需要删除的文件类型

do

if [ ! -s ${file} ]

then

rm ${file}

echo "rm $file Success!"

fi

done

·删除linux分区(bjchenxu)

做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除

·tar 分卷压缩和合并(WongMokin,Waker)

以每卷500M为例

tar分卷压缩:tar cvzpf - somedir | split -d -b 500m

tar多卷合并:cat x* > mytarfile.tar.gz

·使ctrl + alt + del失效(bjchenxu)

vi /etc/inittab

将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉,就可以了

·如何看出redhat的版本是7还是8(hutuworm)

cat /proc/version或者cat /etc/redhat-release或者cat /etc/issue

·文件在哪个rpm中(无双)

rpm -qf 文件名得到

·把man或info的信息存为文本文件(bjchenxu)

以 tcsh 为例:

man tcsh | col -b > tcsh.txt

info tcsh -o tcsh.txt -s

·使用md5sum文件(bjchenxu)

md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值

是否一致 md5sum –c hashfile

·查找权限位为S的文件(bjchenxu)

find . -type f /( -perm -04000 -o -perm -02000 /) -exec ls -lg {} /;

·装中文输入法(bjchenxu,hutuworm)

以redhat8为例,xwindow及其终端下的不用说了,缺省就安装了,用ctrl-space呼出。

现在讨论纯console,请到http://zhcon.sourceforge.net/下载zh...任一目录中,tar xvfz
zhcon-0.2.1.tar.gz,cd zhcon-0.2.1,./configure,make,make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

·cd光盘做成iso文件(弱智)

cp /dev/cdrom xxxx.iso

·查找或删除正在使用某文件的进程(wwwzc)

fuser filename

fuser -k filename

· rpm中的文件安装到哪里去了(bjchenxu)

rpm -qpl aaa.rpm

· linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

vi /etc/login.defs,改PASS_MIN_LEN

·不让普通用户自己改密码(myxfc)

[root@xin_fc etc]# chmod 511 /usr/bin/passwd

又想让普通用户自己改密码

[root@xin_fc etc]# chmod 4511 /usr/bin/passwd

· 如何让xmms播放列表里显示正确的中文(myxfc)

-*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-

把这个东西完全拷贝到你的字体里面

操作方法:

右键单击xmms播放工具的任何地方

会看到一个"选项",然后选择"功能设定"选择"fonts"

然后把上面的字体完整的拷贝到"播放清单"和 "user x font

·redhat linux中播放mp3文件(hehhb)

原带的xmms不能播放MP3(无声),要安装一个RPM包:rpm -ivh xmms-mp3-1.2.7-13.p.i386.rpm。打开xmms,ctl-p,在font栏中先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动程序 1.2.7 [lioOSS.so],即可正常播放MP3文件。

·用dd做iso(grub007)

dd if=/dev/cdrom of=/tmp/aaa.iso

·删除几天以前的所有东西(包括目录名和目录中的文件)(shally5)

find . -ctime +3 -exec rm -rf {} /;



find ./ -mtime +3 -print|xargs rm -f -r

·用户的crontab在哪里(hutuworm)

/var/spool/cron/下以用户名命名的文件

· 以不同的用户身份运行程序(bjchenxu)

su - username -c "/path/to/command"

有时候需要运行特殊身份的程序, 就可以让su来做

·如何清空一个文件(bjchenxu)

> filename

·查看有多少活动httpd的脚本(bjchenxu)

#!/bin/sh

while (true)

do

pstree |grep "*/[httpd/]$"|sed 's/.*-/([0-9][0-9]*/)/*/[httpd/]$//1/'

sleep 3

done

·linux下怎么看分区的卷标啊 (q1208c)

e2label /dev/hdxn, where x=a,b,c,d....; n=1,2,3...

·让一个程序在退出登陆后继续运行(NetDC,双眼皮的猪)

#nohup 程序名 &

或者使用disown命令也可以

·以不同的用户身份运行程序(bjchenxu)

su - username -c "/path/to/file"

有时候需要运行特殊身份的程序...就可以让su来做...

· 编辑/etc/inittab后直接生效(bjchenxu)

#init q

·让linux连续执行几个命令,出错停止(bjchenxu)

command1 && command2 && command3

·如何将grub安装到mbr(bjchenxu, NetDC)

grub> root (hd0, 0)

grub> setup (hd0)

也可以用#grub-install /dev/hda来安装grub。

·安装时把grub(lilo)写到linux分区的引导区还是主引导扇区(MBR)(bjchenxu)

如果你想电脑一启动就直接进入操作系统启动菜单就把grub(lilo)写到MBR上,如果写到linux分区的引导区则要用引导盘引导。建议写到 MBR,方便点,至于说写到MBR不安全,该怎么解释呢?每装一次win98,MBR都会被修改一次,大家觉得有什么不安全的吗?

·如何在图形界面和控制台(字符界面)之间来回切换(bjchenxu)

a.图形界面到控制台:Ctr+Alt+Fn(n=1,2,3,4,5,6)。

b.各控制台之间切换:Alt+Fn(n=1,2,3,4,5,6)。

c.控制台到图形:Alt+F7

· linux文本界面下如何关闭pc喇叭(labrun)

将/etc/inputrc中的set bell-style none 前的#去掉,或echo "set bell-style none" >> ~/.bashrc

·重装windows导致linux不能引导的解决办法(好好先生)

如果没有重新分区,拿linux启动盘(或者第一张安装光盘)引导,进入rescue模式。首先找到原来的/分区mount在什么地方。redhat通常 是/mnt/sysimage. 执行"chroot /mnt/sysimage". 如果是grub,输入grub-install /dev/hd*(根据实际情况);如果是lilo,输入lilo -v,然后重新启动。如果分区有所改变,对应修改/etc/lilo.conf和/boot/grub/grub.conf然后再执行上述命令。

· linux中刻录iso的方法(hutuworm)

方法一:使用xcdroast,选择制作光碟,选择ISO文件,刻录!

参见http://www.xcdroast.org/xcdr098/faq-a15.html#17

方法二:找刻录机的命令:

cdrecord --scanbus

输出结果为:

0,0,0 0) 'ATAPI ' 'CD-R/RW 8X4X32 ' '5.EZ' Removable CD-ROM

刻录的命令:

cdrecord -v speed=8 dev=0,0,0 hutuworm.iso

方法三:使用k3b可以刻录CD/DVD

k3b主页:http://www.k3b.org/

(实际上k3b是个图形界面,刻录CD利用了cdrecord,刻录DVD利用了dvd+rw-toolshttp://fy.chalmers.se/~appro/linux/DVD+RW/ )

·屏幕变花时怎么办(双眼皮的猪)

当您一不小心cat了一个并不是文本的文件的时候,这时屏幕会变花,那么您可以按两下"Enter"键,再敲"reset",那么屏幕就恢复正常了....

·卸载软件包时如何得知具体包名(diablocom)

大家知道删除软件包的命令是rpm -e XXX,但是当我们不知道这个XXX的确切拼写时,可以用rpm -q -a查询所有安装的软件包或者用rpm -qa |grep xxxx查询出名字

· 用ls只列出目录(yulc)

ls -lF | grep ^d

ls -lF | grep /$

ls -F | grep /$

· 在命令行下列出本机IP地址,而不是得到网卡信息(yulc)

ifconfig |grep "inet" |cut -c 0-36|sed -e 's/[a-zA-Z: ]//g'

hostname -i

·修改/etc/profile或者$HOME/.profile文件后如何立即生效(peter333)

#source /etc/profile (或者source .profile)

·bg和fg的使用(bjchenxu)

输入ctrl+z,当前一个任务会被挂起并暂停, 同时屏幕上返回进程号,此时用 "bg %进程号",会把这个进程放到后台执行,而用" fg %进程号 "就能让这个进程放到前台来执行。另外,job命令用来查看当前的被bg的进程

·

1:HOST的乐趣:

Host能够用来查询域名,然而它可以得到更多的信息。

host -t mx linux.com 可以查询出Linux.com的MX记录,以及处理Mail的Host的名字。

Host -l linux.com 会返回所有注册在linux.com下的域名。

host -a linux.com则会显示这个主机的所有域名信息。

-----------------------------------------------------------------------------------------------

这个应该是对方的DNS主机上做了IP限制,只有指定的IP才能做zone传输。

在named.conf文件中可以用allow-transfer=xxx.xxx.xxx.xxx来限制。

allow-transfer

Specifies which hosts are allowed to receive zone transfers from the

server. allow-transfer may also be specified in the zone statement,

in which case it overrides the options allow-transfer statement. If

not specified, the default is to allow transfers from all hosts.

[root@wy1 sbin]# host -l sina.com.cn

Host sina.com.cn not found: 9(NOTAUTH)

; Transfer failed.

应该是对方的DNS做了这个限制的原因。

2:搞清楚命令的相关文件和命令

# ldd traceroute ,返回结果会是libc.so.6,lid-linux.so.2

3:console顶部显示现在时间

在/etc/bashrc或~/.bashrc中加入环境变量PROMPT_COMMAND。

export PROMPT_COMMAND=echo -ne "33733[2;999r33[1;1H33[00;44m33[K"`date`"33[00m338"

6:简单的进行Dos转Unix:

sed s/^M// filename > newfilename

7:快速建立MP3播放列表

find /mnt/cdrom -name *.mp3 -print >> cd1.play.list.

这样就会把CDRom中的所有MP3文件建立一个名为cd1.play.list的文件。然后使用xmms 或 x11amp就能进行播放了。

8:/proc中的重要信息

cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)

cat /proc/interrupts - 中断

cat /proc/ioports - 设备IO端口

cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)

cat /proc/partitions - 所有设备的所有分区

cat /proc/pci - PCI设备的信息

cat /proc/swaps - 所有Swap分区的信息

cat /proc/version - Linux的版本号

10:让你的硬盘飞起来:

Linux下也可以使用32Bit I/O和DMA。使用/sbin/hdparm -c1 /dev/hda(hdb,hdc..)

打开32Bit传输模式,使用命令 /sbin/hdparm -d1 /dev/hda(hdb,hdc...) 打开DMA。

最后使用/sbin/hdparm -k1 /dev/hda 以使硬盘在Reset之后保持上面的设定,这么一来,硬盘读写速度应该可以提高一倍以上。

11:微调你的Ext2

Linux下的命令tune2fs可以设定最大Mount次数(因为Linux即时在mounted clean状况下,达到一定的mount次数后,会强制e2fsck对于我这样的每天开关机

的来说很不方便),tune2fs命令的其他用途请参见man

13:随时改变XTerm的字体大小

shift加+/-

14:Ext2的文件属性:

lsattr列出属性,

chattr可以改变属性。

如 chattr +A filename 则系统不会修改其last access time属性;

chattr +i 则可以避免被rm掉。

16:使用strings可以把字符串从Binary文件中分离出来

17:你大概已经习惯了使用Top来观察系统使用情况,那就使一使使用Vmstat 1来看看cpu的空闲程度(显示结果的最后一项)。

18:使用Watch命令,反复执行特定命令,如"watch ls -l /tmp/blah",将一直观察文件的大小改变。

19:使用pppstats得到ppp连接的数据。

20:显示远程机器的NFS: showmount -e hostname

21:使用autofs免去你每次mount和umount之苦

再RedHat6.0中带了autofs的rpm,只要安装好之后便可以享受自动加载文件系统的方便。在/misc目录下,创建一个cd目录,如果使用其自带的auto.misc和auto.master的话,马上就可以实现自动加载功能了。

22:在Bash Shell中,可以用!重复上几次输入过的命令,这样就可以省去往上滚动的

麻烦了。使用ctl+R可以互动的检索以前使用过的命令行。

24:Bash中的快捷键

ESCAPE-B 会向前条一个单词,

Ctrl-K会删除从光标到行末所有字符。

26:在同一个命令行上同时执行多条命令

用分号分隔。如编译一个源文件:type ./configure ; make ; make install 。之后你就可以去散步了(不要在电脑前花费了太多时间了,生活中还有很多美好的东西。)

28:使用Top命令监视系统状况

使用S命令可以改变其刷新的时间:如.5将会使其每半秒钟更新一次。

29:同时Unzip多个文件

unzip *不正确,而是unzip "*"。

32:自动Logoff

在~/.bashrc中加入这么一句话:TMOUT=300则会在5分钟之后logoff,不过如果less这类程序运行则不会启动。

33:在使用less 或 more时,直接启动编辑器

在less中打入v键,会立即启动vi或其他你在环境变量中指明的编辑器,但是more只能使用vi。

=======================================

[From]http://tristones.viaspeip.com/archives/000222.html

0001 修改主机名

0002.a Ret Hat Linux启动到文字界面(不启动xwindow)

0002.b 如何在控制台和xwindow之间切换

0003 redhat的自动升级问题

0004 windows下看linux分区的软件 :

0005 mount用法

0006 在vmware的LINUX中使用本地硬盘的FAT分区

0007.a 删除名为/a的文件

0007.c 删除名字带的/和‘/0'文件

0007.d 删除名字带不可见字符的文件

0007.e 删除文件大小为零的文件

0008 redhat设置滚轮鼠标(mc1011) :

0009 加装xwindow

0010 删除linux分区

0011 如何退出man

0012 不编译内核,mount ntfs分区

0013 redhat 8.0中用xmms听mp3

0014 找回忘记了的root口令(lilo/grub)

0015 使ctrl + alt + del失效

0016 如何看出redhat的版本(7.3?8.0?)

0017 文件在哪个rpm中(无双)

0018 把man或info的信息存为文本文件

0019 利用现存两个文件,生成一个新的文件

0020 设置com1口,让超级终端通过com1口进行登录

0021 删除目录下所有文件包括子目录

0022 查看系统信息

0023 去掉多余的回车符

0024 切换X桌面(lnx3000)

0025 通用的声卡驱动程序(lnx3000)

0026 改变redhat的系统语言/字符集(beming/mc1011)

0027 把屏幕设置为90列

0028 使用md5sum文件

0029 一次解压多个zip文件

0030 看pdf文件

0031 查找权限位为S的文件

0032 装中文输入法

0033 把弹出的光盘收回来

0034 cd光盘做成iso文件

0035 快速观看开机的硬件检测

0036 查看硬盘的使用情况

0037 查看目录的大小

0038 查找或删除正在使用某文件的进程(wwwzc)

0039 安装软件

0040 字符模式下设置/删除环境变量

0041.a ls如何看到.开头的文件

0041.b 如何只看到点开头的文件?

0042 rpm中的文件安装到哪里去了

0043 使用src.rpm

0044 vim中显示颜色或不显示颜色

0045 linux是实时还是分时操作系统

0046 make bzImage -j的j是什么意思(wind521)

0047 源码包怎么没有

0048 修改系统时间

0049 开机就mount上windows下的分区

0050 linux怎么用这么多内存

0051 FSTAB 最后的配置项里边最后两个数字是什么意思(lnx3000)

0052 linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

0053 linux中的比较常见的翻译软件?

0054 不让显示器休眠

0055 用dat查询昨天的日期(gadfly)

0056 xwindow下如何截屏

0057 解压小全

0058 在多级目录中查找某个文件的方法

0059 不让普通用户自己改密码(myxfc)

0060 显卡实在配不上怎么办(win_bigboy)

0061 超强删除格式化工具(弱智)

0062 如何让xmms播放列表里显示正确的中文(myxfc)

0063 linux下听MP3(hehhb)

0065 装载windows分区的FAT32、FAT16文件系统(hehhb)

0066 执行a.bin文件

===============================================

0001

修改主机名

<pre>

vi /etc/sysconfig/network

</pre>

修改HOSTNAME一行为HOSTNAME=主机名,重启后也能生效

在终端下输入hostname YourNewHostname,也能暂时生效;重起后失效。

(vi /etc/hostname)

0002.a

Ret Hat Linux启动到文字界面(不启动xwindow)

将/etc/inittab中 id:5:initdefault: 一行中的5改为3

0002.b

切换图形和字符界面

alt+ctrl+f1(...f8)

0003

redhat的自动升级问题

http://www.redhat.com/corp/support/... 有

up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。

0004

windows下看linux分区的软件 :

Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip

0005

mount用法

fat32的分区:#> mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom

ntfs分区用上述方法可显示部分中文,2.6内核需要用nls=cp936参数

iso文件 :#>mount -o loop /abc.iso /mnt/cdrom

软盘 :#>mount /dev/fd0 /mnt/floppy

USB闪存 :#>mount /dev/sda1 /mnt/cdrom

所有/etc/fstab内容 mount -a

注:mount时可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

0006

在vmware的LINUX中使用本地硬盘的FAT分区

将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:

//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharset=gb2312 0 0

其中win_ip是你的windows的IP地址;

D$是你的windows里面共享的D盘的共享名;

/mnt/d是要将该分区mount到linux的目录;

win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。

如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

0007.a

删除名为-a的文件

rm ./-a

rm -- -a 告诉rm这是最后一个选项,参见getopt

ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' /;

0007.b

删除名为/a的文件

rm //a

0007.c

删除名字带的/和‘/0'文件

这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用

1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。

2.也可,将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,

clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.

最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

0007.d

删除名字带不可见字符的文件

列出文件名并转储到文件:ls -l >aaa

然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:

vi aaa

[rm -r *******

]

把文件加上执行权限 chmod +x aaa

执行 $aaa

0007.e

删除文件大小为零的文件

rm -i `find ./ -size 0`

find ./ -size 0 -exec rm {} /;

find ./ -size |xargs rm -f &非常有效

for file in * #自己定义需要删除的文件类型

do

if [ ! -s ${file} ]

then

rm ${file}

echo "rm $file Success!"

fi

done

0008

redhat设置滚轮鼠标(mc1011) :

进入X后,选择鼠标的配置,选择wheel mouse(ps/2)就可以了,

如果鼠标表现异常,重启计算机即可。

(su

vi /etc/X11/XF86Config-4(RH等系统没有'-4')

把PS/2 改成 ImPS/2)

0009

加装xwindow

用linux光盘启动,选择升级,然后单独选择包,安装即可

0010

删除linux分区

做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除.

0011

如何退出man

q键

0012

不编译内核,mount ntfs分区

原装rh8,未升级或编译内核

0. 用uname -r命令查看自己的内核版本(以下以2.4.18-14为例)

1. 上google.com搜索并下载 kernel-ntfs-2.4.18-14.i686.rpm

2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm

3. mkdir /mnt/c

4. mount -t ntfs /dev/hda1 /mnt/c

0013

redhat 8.0中用xmms听mp3

下载http://www.gurulabs.com/files/xmms-...7-13.p.i386.rpm

rpm -Uvh xmms-mp3-1.2.7-13.p.i386.rpm

0014

找回忘记了的root口令(lilo/grub)

三种办法:

1.在系统进入单用户状态,直接用passwd root去更改

2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下:

cd /mnt

mkdir hd

mount -t auto /dev/hdaX(原来/分区所在的分区号) hd

cd hd

chroot ./

passwd root

这样可以搞定

3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同

rh8中

一. lilo

1. 在出现 lilo: 提示时键入 linux single

画面显示 lilo: linux single

2. 回车可直接进入linux命令行

3. #vi /etc/shadow

将第一行,即以root开头的一行中root:后和下一个:前的内容删除,

第一行将类似于

root::......

保存

4. #reboot重启,root密码为空

二. grub

1. 在出现grub画面时,用上下键选中你平时启动linux的那一项(别选dos哟),然后按e键

2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键

3. 修改你现在见到的命令行,加入single,结果如下:

kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/

4. 回车返回,然后按b键启动,即可直接进入linux命令行

5. #vi /etc/shadow

将第一行,即以root开头的一行中root:后和下一个:前的内容删除,

第一行将类似于

root::......

保存

6. #reboot重启,root密码为空

0015

使ctrl + alt + del失效

vi /etc/inittab

将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉就可以了

0016

如何看出redhat的版本(7.3?8.0?)

cat /proc/version或者cat /etc/redhat-release

0017

文件在哪个rpm中(无双)

www.rpmfind.net上搜,或者rpm -qf 文件名得到

0018

把man或info的信息存为文本文件

以 tcsh 为例:

man tcsh | col -b > tcsh.txt

info tcsh -o tcsh.txt -s

0019

利用现存两个文件,生成一个新的文件

1. 取出两个文件的并集(重复的行只保留一份)

2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)

3. 删除交集,留下其他的行

1. cat file1 file2 | sort | uniq

2. cat file1 file2 | sort | uniq -d

3. cat file1 file2 | sort | uniq -u

0020

设置com1口,让超级终端通过com1口进行登录

确认有/sbin/agetty,编辑/etc/inittab,添加

7:2345:respawn:/sbin/agetty /dev/ttyS0 9600

9600bps是因为联路由器缺省一般都是这种速率,也可以设成

19200、38400、57600、115200

修改/etc/securetty,添加一行:ttyS0,确保root用户能登录

重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了

0021

删除目录下所有文件包括子目录

rm -rf 目录名

0022

查看系统信息

cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)

cat /proc/interrupts - 中断

cat /proc/ioports - 设备IO端口

cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)

cat /proc/partitions - 所有设备的所有分区

cat /proc/pci - PCI设备的信息

cat /proc/swaps - 所有Swap分区的信息

cat /proc/version - Linux的版本号 相当于 uname -r

uname -a - 看系统内核等信息

0023

去掉多余的回车符

sed 's/^M//' test.sh > back.sh, 注意^M是敲ctrl_v ctrl-m得到的

或者 dos2unix filename

0024

切换X桌面(lnx3000)

switchdesk KDE或者switchdesk GNOME

(vi ~/.xinitrc

添加或修改成

exec gnome-session 或

exec startkde

然后用startx启动X)

0025

通用的声卡驱动程序(lnx3000)

OSS :http://www.opensound.com/

ALSA :http://www.alsa-project.org/

0026

改变redhat的系统语言/字符集(beming/mc1011)

修改 /etc/sysconfig/i18n 文件,如

LANG="en_US",xwindow会显示英文界面,

LANG="zh_CN.GB18030",xwindow会显示中文界面。

还有一种方法

cp /etc/sysconfig/i18n $HOME/.i18n

修改 $HOME/.i18n 文件,如

LANG="en_US",xwindow会显示英文界面,

LANG="zh_CN.GB18030",xwindow会显示中文界面。

这样就可以改变个人的界面语言,而不影响别的用户

(Debian不支持GB18030(RH的zysong字库是有版权的)

现在好像没有Free的GBK和GB18030字库

vi .bashrc

export LANG=zh_CN.GB2312

export LC_ALL=zh_CN.GB2312)

0027

把屏幕设置为90列

stty cols 90

0028

使用md5sum文件

md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值

是否一致 md5sum –c hashfile

0029

一次解压多个zip文件

unzip "*",注意引号不能少

0030

看pdf文件

使用xpdf或者安装acrobat reader for linux

0031

查找权限位为S的文件

find . -type f /( -perm -04000 -o -perm -02000 /) -exec ls -lg {} /;

0032

装中文输入法

以redhat8为例,xwindow及其终端下的不用说了吧,缺省就安装了,用ctrl-space呼出。

现在讨论纯console,请下载zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz,

放在任一目录中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure,

make, make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

0033

把弹出的光盘收回来

#eject -t

0034

cd光盘做成iso文件

cp /dev/cdrom xxxx.iso

0035

快速观看开机的硬件检测

dmesg | more

0036

查看硬盘的使用情况

df -k 以K为单位显示

df -h 以人性化单位显示,可以是b,k,m,g,t..

0037

查看目录的大小

du -sh dirname

-s 仅显示总计

-h 以K、M、G为单位,提高信息的可读性。KB、MB、GB是以1024为换算单 位, -H以1000为换算单位。

0038

查找或删除正在使用某文件的进程(wwwzc)

fuser filename

fuser -k filename

0039

安装软件

rpm -ivh aaa.rpm

tar xvfz aaa.tar.gz; cd aaa; ./configure; make; make install

0040

字符模式下设置/删除环境变量

bash下

设置:export 变量名=变量值

删除:unset 变量名

csh下

设置:setenv 变量名 变量值

删除:unsetenv 变量名

0041.a

ls如何看到.开头的文件

ls -a

0041.b

如何只看到点开头的文件?

ls .* -d

0042

rpm中的文件安装到哪里去了

rpm -qpl aaa.rpm

0043

使用src.rpm

rpmbuild --rebuild *.src.rpm

0044

vim中显示颜色或不显示颜色

vi ~/.vimrc; 如果有syntax on,则显示颜色,syntax off,则不显示颜色

0045

linux是实时还是分时操作系统

分时

0046

make bzImage -j的j是什么意思(wind521)

-j主要是用在当你的系统硬件资源比较大的时候,比较富裕的时候,用这个可以来加快编译的速度,如-j 3

0047

源码包怎么没有

你没有安装源代码,你把你光盘上rpm -i *kernel*source*.rpm装上,就可以看到你的源代码了。

0048

修改系统时间

date -s “2003-04-14 cst”,cst指时区,时间设定用date -s 18:10

0049

开机就mount上windows下的分区

自动将windows的d盘挂到/mnt/d上,用vi打开/etc/fstab,加入以下一行

/dev/hda5 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0

注意,先得手工建立一个/mnt/d目录

0050

linux怎么用这么多内存

为了提高系统性能和不浪费内存,linux把多的内存做了cache,以提高io速度

0051

FSTAB 最后的配置项里边最后两个数字是什么意思(lnx3000)

第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;

第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号

1 是root文件系统,2 是别的文件系统。fsck按序号检测磁盘,0表示该文件系统不被检测

dump 执行ext2的文件系统的备份操作

fsck 检测和修复文件系统

0052

linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

vi /etc/login.defs,改PASS_MIN_LEN

0053

linux中的比较常见的翻译软件?

stardict

0054

不让显示器休眠

setterm -blank 0

setterm -blank n (n为等待时间)

0055

用dat查询昨天的日期(gadfly)

date --date='yesterday'

0056

xwindow下如何截屏

Ksnapshot或者gimp

0057

解压小全

tar xvfj example.tar.bz2

tar xvfz example.tar.gz

tar xvfz example.tgz

tar xvf example.tar

unzip example.zip

0058

在多级目录中查找某个文件的方法

find /dir -name filename.ext

du -a | grep filename.ext

locate filename.ext

0059

不让普通用户自己改密码(myxfc)

[root@xin_fc etc]# chmod 511 /usr/bin/passwd

又想让普通用户自己改密码

[root@xin_fc etc]# chmod 4511 /usr/bin/passwd

0060

显卡实在配不上怎么办(win_bigboy)

http://www.redflag-linux.com/ ,下了xfree86 4.3安装就可以了.

0061

超强删除格式化工具(弱智)

比PQMagic安全的、建立删除格式化的小工具:sfdisk.exe for msdos

http://www.wushuang.net/soft/sfdisk.zip

0062

如何让xmms播放列表里显示正确的中文(myxfc)

-*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-

把这个东西完全拷贝到你的字体里面

操作方法:

右键单击xmms播放工具的任何地方

会看到一个"选项",然后选择"功能设定"选择"fonts"

然后把上面的字体完整的拷贝到"播放清单"和 "user x font

使用较新的发行版建议使用Beep Media Player, 基于GTK2

0063

linux下听MP3(hehhb)

redhat光盘原带然xmms不能播放MP3(无声), 要下载安装一个RPM包:

xmms-mp3-1.2.7-13.p.i386.rpm

安装即可.打开xmms,ctl-p,在font栏中

先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字

体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动

程序 1.2.7 [lioOSS.so]即可正常播放MP3文件.

0065

装载windows分区的FAT32、FAT16文件系统(hehhb)

以root身份进入KDE,点击桌面上的“起点”图标,在/mnt目录下建立如下文件夹:c,d,e,f,g,usb.分别用作windows下各分区和usb闪盘。

  用文本编辑器打开/etc/fstab 文件.加入如下:

/dev/hda1 /mnt/c vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda5 /mnt/d vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda6 /mnt/e vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda7 /mnt/f vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda8 /mnt/g vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/cdrom /mnt/cdrom udf,iso9660 noauto,iocharset=gb2312,owner,kudzu,ro 0 0

/dev/sda1 /mnt/usb vfat iocharset=gb2312,umask=0,codepage=936 0 0

存盘退出. 重新启动后即可正常访问FAT32或FAT16格式分区,解决显示WINDOWS分区下和光盘中文文件名乱码

问题.其****六列,每列用Tab键分开。注意此方法只能mount上Fat 分区格式.sda1是闪盘。

以 上做法适用于系统语言为zh_CN.GB2312, zh_CN.GBK, zh_CN.GB18030的系统,如果系统默认语言为zh_CN.UTF8, 需要把上面所有iocharset=gb2312改成iocharset=utf8,codepage可以不用设置。

0066

执行a.bin文件

chmod u+rx a.bin

./a.bin

创建于: 2006-03-29 14:03:47,修改于: 2006-09-09 10:08:49,已浏览218次,有评论0条



Linux常见问题
·查看当前目录下所有子目录的大小

#/bin/sh

du $1 --max-depth=1 | sort -n|awk '{printf "%7.2fM ----> %s/n",$1/1024,$2}'|sed 's:/.*//([^/]/{1,/}/)$:/1:g'

·修改主机名(bjchenxu)

vi /etc/sysconfig/network,修改HOSTNAME一行为"HOSTNAME=主机名"(没有这行?那就添加这一行吧),然后运行命令 " hostname 主机名"。一般还要修改/etc/hosts文件中的主机名。这样,无论你是否重启,主机名都修改成功。

·删除目录中含输入关键字的文件(WongMokin)

find /mnt/ebook/ -type f -exec grep "在此输入关键字" {} /; -print -exec rm {} /;

· 让cron中的任务不回馈信息, 本例5分钟检查一次邮件(WongMokin)

0-59/5 * * * * /usr/local/bin/fetchmail > /dev/null 2>&1

·在当前目录下解压rpm文件(bjchenxu)

cat kernel-ntfs-2.4.20-8.i686.rpm | rpm2cpio | pax -r

· 合并两个Postscript或PDF文件(noclouds)

$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite /

-sOutputFile=bar.ps -f foo1.ps foo2.ps

$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite /

-sOutputFile=bar.pdf -f foo1.pdf foo2.pdf

· 去掉apache的manual目录中的所有.en的后缀名(bjchenxu)

进入到manual目录

代码:find ./ -regex .*/.en|awk -F. '{ printf "mv %s.%s.%s.%s %s.%s.%s/n",$1,$2,$3,$4,$1,$2,$3}'|sh

·如何起多个X(noclouds)

startx默认以display :0.0起第一个X,通过传递参数给Xserver可以起多个X:

# startx -- :1.0

# startx -- :2.0

...

然后用Ctrl-Alt-F7/F8...切换。

·让一个程序在退出登陆后继续运行(noclouds,bjchenxu)

# <cmd>

# disown

或者是

nohup command &

· 看Linux启动时屏幕的显示信息(bjchenxu)

在启动完后用命令dmesg查看

·让vi不响铃(sakulagi)

echo "set vb t_vb=" >> ~/.vimrc

·如何配置让哪些服务启动(天外闲云,q1208c)

方法1 运行ntsysv或者setup命令,进入菜单进行配置

方法2 chkconfig --list 显示服务

chkconfig name on/off 打开/关闭“name”服务

·安全删除linux(天外闲云)

步骤1 Dos下使用fdisk /mbr或者用win2000/xp的光盘启动进入故障恢复控制台,使用命令fixmbr

步骤2 格式化linux分区为windows分区即可

·用grub引导进文本界面(天外闲云)

进入grub之后,按a,输入 空格 3 就可以引导进入文本界面,但是不修改系统的运行级,只在当次有效。

·如何使新用户首次登陆后强制修改密码(猫小)

#useradd -p '' testuser; chage -d 0 testuser

·日志维护工具logrotate(hotbox)

在/etc/logrotate.conf中配置,作用:定义log文件达到预定的大小或时间时,自动压缩log文件

·如何产生一个长度固定(例如文件长度为1M)字节的空文件,即每个字节的值全为0x00(sakulagi)

dd if=/dev/zero of=/tmp/zero_file bs=1024 count=1024

·RedHat Linux里修改时间的步骤(hutuworm)

1. 设置你的时区: timeconfig里选择Asia/Shanghai (如果你位于GMT+8中国区域)

2. 与标准时间服务器校准: ntpdate time.nist.gov

2.5 当然,如果你是李嘉诚,也可以跟自己的手表校准: date -s STRING (STRING格式见man date)

3. 写回硬件时钟: hwclock --systohc

·查找当前目录下文件并更改扩展名(零二年的夏天)

更改所有.ss文件为.aa

# find ./ -name "*.ss" -exec rename .ss .aa '{}' /;



[root@localhost adobe]# touch aaa.ss.ss

[root@localhost adobe]# find ./ -name "*.ss" -exec rename .ss .aa '{}' /;

[root@localhost adobe]# ls

aaa.aa aaa.aa.ss AdobeReader_enu-7.0.0-2.i386.rpm cns-install.sh

· patch的使用(天才※樱木)

语法是patch [options] [originalfile] [patchfile]

例如:

patch -p[num] <patchfile

-p参数决定了是否使用读出的源文件名的前缀目录信息,不提供-p参数,则忽略所有目录信息,-p0(或者-p 0)表示使用全部的路径信息,-p1将忽略第一个"/"以前的目录,依此类推。如/usr/src/linux-2.4.16/Makefile这样的文 件名,在提供-p3参数时将使用linux-2.4.16/Makefile作为所要patch的文件。

对于刚才举的Linux内核源码2.4.16升级包的例子,假定源码目录位于/usr/src/linux中,则在当前目录为/usr/src时使用 "patch -p0 <patch-2.4.16"可以工作,在当前目录为/usr/src/linux时,"patch -p1<patch-2.4.16"也可以正常工作。

·将file.txt里的123改为456(hutuworm)

方法1

sed 's/123/456/g' file.txt > file.txt.new

mv -f file.txt.new file.txt

方法2

vi file.txt

输入命令:

:%s/123/456/g

·将一个分区格式化为ext3日志文件系统(hutuworm)

mkfs -j /dev/xxxx

·开启硬盘ATA66 (laixi781211)

/sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda

·查看当前运行级别(双眼皮的猪)

runlevel

·查看当前登陆身份(双眼皮的猪)

(1)who am i

(2)whoami

(3)id

注意(1)跟(2)的小区别

·删除rpm -e删除不了的包(wwwzc)

1、如果在删除包之前删除了包的目录

rpm -e --noscripts

2、如果系统里一个包被装两次(由于某些异常引起的)

rpm -e multi-installed-pkgs --allmatches

·如何定制用户登录时显示的信息(jiadingjun)

在/etc目录下放一个名字叫motd的文本文件实现的,例如,建立自己的/etc/motd:

$cat /etc/motd

welcome to my server !

那么,当用户登录系统的时候会出现这样的信息:

Last login: Thu Mar 23 15:45:43 from *.*.*.*

welcome to my server !

·用命令清空Root回收站中的文件(dtedu)

cd /var/.Trash-root

rm -rf *

·定制linux提示符 (bjchenxu)

在bash中提示符是通过一个环境变量$PS1指定的。用export $PS1查看现在的值,比较直观常用的提示符可以设定为export PS1=“[/u@/h /W]/$”。其中/u代表用户名,/h代表主机名,/W代表当前工作目录的最后一层,如果是普通用户/$则显示$,root用户显示#。

·如何找出系统中所有的*.cpp、*.h文件(bjchenxu)

用find命令就可以了。不过如果从根目录查找消耗资源较高,使用下面的命令就可以:

find / -name "*.cpp" -o -name "*.h"

·我使用的是笔记本电脑,怎么才能在控制台下显示现在还剩多少电量呢? (bjchenxu)

使用apm -m就可以看到还有多少分钟了,具体参数可以用man apm查看。

·本来装有Linux与Windows XP,一次将Windows XP重装后,发现找不到Linux与Windows XP的启动选单,请问如何解决(bjchenxu)

首先光盘启动,进入rescue模式,运行GRUB,进入grub提示符grub>,然后敲入下面的语句,重启就好了。

root (hd0,2),setup (hd0)

·永久更改ip(bjchenxu)

ifconfig eth0 新ip

然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip

·手动添加默认网关(bjchenxu)

以root用户,执行: route add default gw 网关的IP

想更改网关

1 vi /etc/sysconfig/network-scripts/ifcfg-eth0

更改GATEWAY

2 /etc/init.d/network restart

· redhat 8.0上msn和qq(bjchenxu)

下载Gaim 0.58版:

gaim-0.58-2.i386.rpm

下载QQ插件 for gcc2.9版:

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,其他的设置按默认的即可。当全部设置完成后就可以登录使用了。

由于MS对msn的协议经常升级,导致linux上的gaim和msn插件必须升级,目前尚无万无一失的解决方案,请见谅

·查出22端口现在运行什么程序(bjchenxu)

lsof -i :22

·查看本机的IP,gateway, dns(bjchenxu)

IP:

以root用户登录,执行ifconfig。其中eth0是第一块网卡,lo是默认的设备

Gateway:

以root用户登录,执行netstat -rn,以0.0.0.0开头的一行的Gateway即为默认网关

也可以查看/etc/sysconfig/network文件,里面有指定的地址!

DNS:

more /etc/resolv.conf,内容指定如下:

nameserver 202.96.69.38

nameserver 202.96.64.38

·RH8.0命令行下改变ping 的TTL值(cgweb,lnx)

方法1(重启后有效):

#sysctl -w net.ipv4.ip_default_ttl=N

(N=0~255),若N>255,则ttl=0

方法2(重启后无效):

#echo N(N为0~255) > /proc/sys/net/ipv4/ip_default_ttl

·开启LINUX的IP转发(houaq)

编辑/etc/sysctl.conf, 例如,将

net.ipv4.ip_forward = 0

变为

net.ipv4.ip_forward = 1

重启后生效,用sysctl -a查看可知

·mount局域网上其他windows机器共享出的目录(bjchenxu)

mount -t smbfs -o username=guest,password=guest //machine/path /mnt/cdrom

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

修改sshd_config:PermitRootLogin no|yes

·让root直接telnet登陆(bjchenxu,platinum)

方法1:

编辑/etc/pam.d/login,去掉

auth required /lib/security/pam_securetty.so 这句话

方法2:

vi /etc/securetty

添加

pts/0

pts/1

...

·在linux接adsl设备(wind521)

需要一个运转正常的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都按申请来的填写上就可以搞定了

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

vi /etc/crontab

加上一句:

00 0 1 * * root rdate -s time.nist.gov

·改变sshd的端口(bjchenxu)

在/etc/ssh/sshd_config中加入一行:Port 2222,/etc/init.d/sshd restart重启守护进程

·改变telnet的端口(bjchenxu)

将/etc/services文件中telnet对应的端口号21改为你想要的值,/etc/init.d/xinetd restart重启守护进程

·终端模式有问题(sakulagi)

export TERM=vt100

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

minicom

·ssh上来能不能不自动断线(wind521,双眼皮的猪)

修改自己HOME目录下的.bash_profile文件,加上

export TMOUT=1000000 (以秒为单位)

然后运行source .bash_profile

·用什么工具做入侵检测(bjchenxu)

snort

·Linux下检测程序内存泄漏的工具(bjchenxu)

cchecker或是efence库都可以

· linux下如何监视所有通过本机网卡的数据(bjchenxu)

tcpdump或者iptraf

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

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

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

编辑ftpaccess文件

restricted-uid *

这一句很重要,限制了ftp用户在自己的目录里。

·如何使lynx浏览器能够浏览中文网页(Ghost_Vale)

浏览简体中文网页就的修改如下设置

Save options to disk: [X]

Display and Character Set

Display character set : [Chinese________________________]

Assumed document character set(!): [iso-8859-1______]

CJK mode (!) : [ON_]

然后移到最下面的 Accept Changes 按下 Enter 保存就可以了

当然你的系统要支持简体中文才可以

·网卡激活了,却上不了网,怎么办?(Slock,双眼皮的猪)

traceroute,看看到底是在那一块被阻住的。

1.ping自己

2.ping网关

3.ping DNS

4.traceroute DNS

如果一切正常

nslookup www.sina.com.cn

ping sina的address

traceroute sina的address

基本上就可以知道结果了

·在redhat9下配samba,win2000能访问,win98不能访问?(squall2003)

如果是wind98必需修改注册表:HKEY_LOCAL_MACHINE/system/correntcontrolset/services/Vxd/VNETSUP下建个D值:EnablePlainTextpasswd,键值1

·如何得到网卡的MAC地址(bjchenxu,hutuworm)

arp -a | awk '{print $4}'

ifconfig eth0 | head -1 | awk '{print $5}'

· 如何得到网卡的IP地址(mb)

ifconfig eth0 |awk '/inet addr/ {split($2,x,":");print x[2]}'

· 如何修改Linux机器所在的工作组(hutuworm)

vi /etc/samba/smb.conf,修改workgroup = 一行,将组名写在后面。

·一块网卡如何绑定两个ip(linuxloveu)

#cd /etc/sysconfig/network-scripts

#cp ifcfg-eth0 ifcfg-eth0:1

#vi ifcfg-eth0:1

修改IP和设备名

·Debian下一个网卡绑定多个ip的方法(NetDC)

修改/etc/network/interfaces

auto eth0

iface eth0 inet static

address 172.16.3.123

netmask 255.255.255.0

network 172.16.3.0

broadcast 172.16.3.255

gateway 172.16.3.1

auto eth0:1

iface eth0:1 inet static

address 10.16.3.123

netmask 255.255.0.0

network 10.16.0.0

broadcast 10.16.255.255

修改/etc/network/ifstate

lo=lo

eth0=eth0

eth0:1=eth0:1

然后/etc/init.d/networking restart就可以了。

一个网卡绑定多ip另一法(hotbox)

在/etc/sysconfig/network-scripts/下创建一个文件:ifcfg-ethX-rangeX ("X"为网卡号)

文件内容:

IPADDR_START=<start ip>

IPADDR_END=<end ip>

CLONENUM=0

可以有256个ip

·192.168.1.0/24(双眼皮的猪)

它与192.168.1.0/255.255.255.0是等价的,只是表示方式不同....

· linux下清空arp表的命令(NetDC)

#arp -d -a(适用于bsd)

for HOST in `arp | sed '/Address/d' | awk '{ print $1}'` ; do arp -d $HOST; done

·使用ntp协议从服务器同步时间(NetDC)

ntpdate NTP-SERVER 例:ntpdate 172.16.2.1

· 立刻让LINUX支持NAT(platinum)

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -I POSTROUTING -j MASQUERADE

· rh8.0下rcp的用法设置(zhqh1)

只对root用户生效

1、在双方root用户根目录下建立.rhosts文件,并将双方的hostname加进去.在此之前应在双方的/etc/hosts文件中加入对方的IP和hostname

2、把rsh服务启动起来,redhat默认是不启动的。方法:用执行ntsysv命令,在rsh选项前用空格键选中,确定退出。 然后执行:service xinetd restart即可。

3、到/etc/pam.d/目录下,把rsh文件中的auth required /lib/security/pam_securetty.so一行用“#”封掉即可。

·在ethX设备上,使LINUX支持网络广播功能(默认是不支持的)(platinum)

ip route add 255.255.255.255 dev ethX

·路由设置手册(NetDC)

查看路由信息:

netstat -rn

route -n

手工增加一条路由:

route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

手工删除一条路由:

route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

好了,下面到了重要的了,让系统启动的时候自动启用路由设置。

在redhat中添加一条路由,修改文件/etc/sysconfig/static-routes

any net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

在debian中添加一条路由,

方法一:修改/etc/network/interfaces

代码:

auto eth0

iface eth0 inet static

address 172.16.3.222

netmask 255.255.0.0

network 172.16.0.0

broadcast 172.16.255.255

gateway 172.16.2.1

up route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

down route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

方法二:在/etc/network/if-up.d目录下建立一个简单的脚本文件,如static-route$(记得以$符号结尾,要不有个run-parts会跑出来告诉你一些东西)脚本最简单的就好啦,如:

代码:

#!/bin/bash

route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

嘿嘿,你也可以猜到/etc/network/目录下的其他目录的作用了吧。

发觉在debian中这个route的设置其实只是它的那些配置文件的一个比较简单的应用而已,你完全可以做更复杂的应用。

0046 利用ssh复制文件(platinum)

假如A、B都有SSH服务,现在在A的SSH里

1、从A复制B(推过去)

scp -rp /path/filename username@remoteIP:/path

2、从B复制到A(拉过来)

scp -rp username@remoteIP:/path/filename /path

如果其中一个不是LINUX系统,可以在WINDOWS上用SecureFX软件

·samba3.0中文显示问题的解决办法(linuxzfp, jiadingjun)

在samba 3.0的配置文件中(/etc/samba/smb.conf)的[global]中加入下面两句:

unix charset=cp936

重启服务

service smb restart

· 临时修改网卡MAC地址的方法

关闭网卡:/sbin/ifconfig eth0 down

然后改地址:/sbin/ifconfig eth0 hw ether 00:AA:BB:CCD:EE

然后启动网卡:/sbin/ifconfig eth0 up

·conntrack 表满的处理方法(cgweb)

前段时间配置的iptables+squid做的proxy server ,一直工作正常。今天我上控制台上发现

Jun 18 12:43:36 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:49:51 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:50:57 red-hat kernel: ip_conntrack: table full, dropping packet.

Jun 18 12:57:38 red-hat kernel: ip_conntrack: table full, dropping packet.

IP_conntrack表示连接跟踪数据库(conntrack database),代表NAT机器跟踪连接的数目,连接跟踪表能容纳多少记录是被一个变量控制的,它可由内核中的ip- sysctl函数设置。每一个跟踪连接表会占用350字节的内核存储空间,时间一长就会把默认的空间填满,那么默认空间时多少?我以redhat为例在内存为64MB的机器上时4096,内存为128MB是 8192,内存为256MB是16376,那末就能在/proc/sys/net/ipv4/ip_conntrack_max里查看、设置。

例如:增加到81920,可以用以下命令:

echo "81920" > /proc/sys/net/ipv4/ip_conntrack_max

那样设置是不会保存的,要重启后保存可以在/etc/sysctl.conf中加:

net.ipv4.ip_conntract_max =81920

按照此方法改变后一切正常,要是在满了可以加大其值.

·Linux下查看光纤网卡的工作模式(sakulagi)

主板上PCI—X插槽中插入一块64位的光纤网卡,在LINUX9.0的环境下,要知道它是否工作在64位模式下,可使用getconf WORD_BIT

·如何让Linux网关后面的WIN32下的用户直接点击FTP连接下载?(platinum)

modprobe ip_nat_ftp

·linux下调试core文件(bjchenxu)

gdb <progname> <core>

<progname>:出错产生core dump的可执行程序。

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

· 新编译生成的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

·RH9下GCC的安装(一起走过的日子,hutuworm)

三种方法选一:

(1)利用CD上rpm安装

CD-1:compat-gcc-7.3-2.96.118.i386.rpm

CD-1:compat-gcc-c++-7.3-2.96.118.i386.rpm

CD-1:libgcc-3.2.2-5.i386.rpm

CD-2:compat-gcc-g77-7.3-2.96.118.i386.rpm

CD-2:compat-gcc-java-7.3-2.96.118.i386.rpm

CD-2:compat-gcc-objc-7.3-2.96.118.i386.rpm

CD-2:gcc-3.2.2-5.i386.rpm

CD-2:gcc-c++-3.2.2-5.i386.rpm

CD-2:gcc-g77-3.2.2-5.i386.rpm

CD-2:gcc-gnat-3.2.2-5.i386.rpm

CD-2:gcc-java-3.2.2-5.i386.rpm

CD-2:gcc-objc-3.2.2-5.i386.rpm

比如碰到系统提示:

warning : gcc-3.2.2-5.i386.rpm : V3 DSA signature :MOKEY key ID db42a60e

error : Failed dependencies :

binutils >=2.13.90.0.18-9 is needed by gcc-3.2.2-5

glibc-devel >=2.3.2-11.9 is needed by gcc-3.2.2-5...

就先安裝glibc-devel包,依此类推

(2)更好的方法就是在X-window下选“主菜单”──>“系统设置”──>“添加/删除应用程序”──>“开发工具”中的gcc并安装它

(3) up2date gcc便可自动解决dependency问题

· linux的自动升级更新问题(hutuworm,NetDC)

对于redhat,在www.redhat.com/corp/support/errata/找到补丁,6.1以后的版本带有一个工具up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。

升级除kernel外的rpm: up2date -u

升级包括kernel在内的rpm: up2date -u -f

由于Red Hat Network SSL证书过期,所以应在rhn_register || up2date 之前先执行一行script以更新证书:

wget -q -O - https://rhn.redhat.com/help/new-cert.sh | /bin/bash

Debian跟别的发行版还是有很大的差别的,用Debian做服务器维护更加方便;红帽的升级其实挺麻烦的,当然,如果你交钱给红帽的话,服务是会不一样的。

Debian下升级软件:

apt-get update

apt-get upgrade

前提:配置好网络和/etc/apt/sources.list,也可以用apt-setup设置。

·mount用法(sakulagi,sxsfxx)

fat32的分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom

ntfs的分区 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom

iso文件 mount -o loop /abc.iso /mnt/cdrom

软盘 mount /dev/fd0 /mnt/floppy

USB闪存 mount /dev/sda1 /mnt/cdrom

所有/etc/fstab内容 mount -a

可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

访问DVD mount -t iso9660 /dev/dvd /mnt/cdrom或mount -t udf /dev/dvd /mnt/cdrom

注意:dvd的格式一般为iso9660或udf之一

· 在vmware的LINUX中使用本地硬盘的FAT分区(bjchenxu)

将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:

//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0

其中win_ip是你的windows的IP地址;

D$是你的windows里面共享的D盘的共享名;

/mnt/d是要将该分区mount到linux的目录;

win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。

如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

· 删除名为-a的文件(bjchenxu)

rm ./-a

rm -- -a 告诉rm这是最后一个选项,参见getopt

ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' /;

·删除名为/a的文件(bjchenxu)

rm //a

·删除名字带的/和‘/0'文件(bjchenxu)

这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用

1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。

2.也可将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,

clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.

最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

·删除名字带不可见字符的文件(bjchenxu)

列出文件名并转储到文件:ls -l >aaa

然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:

vi aaa

[rm -r *******

]

把文件加上执行权限 chmod +x aaa

执行 $aaa

· 删除文件大小为零的文件(bjchenxu)

rm -i `find ./ -size 0`

find ./ -size 0 -exec rm {} /;



find ./ -size 0 | xargs rm -f &



for file in * #自己定义需要删除的文件类型

do

if [ ! -s ${file} ]

then

rm ${file}

echo "rm $file Success!"

fi

done

·删除linux分区(bjchenxu)

做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除

·tar 分卷压缩和合并(WongMokin,Waker)

以每卷500M为例

tar分卷压缩:tar cvzpf - somedir | split -d -b 500m

tar多卷合并:cat x* > mytarfile.tar.gz

·使ctrl + alt + del失效(bjchenxu)

vi /etc/inittab

将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉,就可以了

·如何看出redhat的版本是7还是8(hutuworm)

cat /proc/version或者cat /etc/redhat-release或者cat /etc/issue

·文件在哪个rpm中(无双)

rpm -qf 文件名得到

·把man或info的信息存为文本文件(bjchenxu)

以 tcsh 为例:

man tcsh | col -b > tcsh.txt

info tcsh -o tcsh.txt -s

·使用md5sum文件(bjchenxu)

md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值

是否一致 md5sum –c hashfile

·查找权限位为S的文件(bjchenxu)

find . -type f /( -perm -04000 -o -perm -02000 /) -exec ls -lg {} /;

·装中文输入法(bjchenxu,hutuworm)

以redhat8为例,xwindow及其终端下的不用说了,缺省就安装了,用ctrl-space呼出。

现在讨论纯console,请到http://zhcon.sourceforge.net/下载zh...任一目录中,tar xvfz
zhcon-0.2.1.tar.gz,cd zhcon-0.2.1,./configure,make,make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

·cd光盘做成iso文件(弱智)

cp /dev/cdrom xxxx.iso

·查找或删除正在使用某文件的进程(wwwzc)

fuser filename

fuser -k filename

· rpm中的文件安装到哪里去了(bjchenxu)

rpm -qpl aaa.rpm

· linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

vi /etc/login.defs,改PASS_MIN_LEN

·不让普通用户自己改密码(myxfc)

[root@xin_fc etc]# chmod 511 /usr/bin/passwd

又想让普通用户自己改密码

[root@xin_fc etc]# chmod 4511 /usr/bin/passwd

· 如何让xmms播放列表里显示正确的中文(myxfc)

-*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-

把这个东西完全拷贝到你的字体里面

操作方法:

右键单击xmms播放工具的任何地方

会看到一个"选项",然后选择"功能设定"选择"fonts"

然后把上面的字体完整的拷贝到"播放清单"和 "user x font

·redhat linux中播放mp3文件(hehhb)

原带的xmms不能播放MP3(无声),要安装一个RPM包:rpm -ivh xmms-mp3-1.2.7-13.p.i386.rpm。打开xmms,ctl-p,在font栏中先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动程序 1.2.7 [lioOSS.so],即可正常播放MP3文件。

·用dd做iso(grub007)

dd if=/dev/cdrom of=/tmp/aaa.iso

·删除几天以前的所有东西(包括目录名和目录中的文件)(shally5)

find . -ctime +3 -exec rm -rf {} /;



find ./ -mtime +3 -print|xargs rm -f -r

·用户的crontab在哪里(hutuworm)

/var/spool/cron/下以用户名命名的文件

· 以不同的用户身份运行程序(bjchenxu)

su - username -c "/path/to/command"

有时候需要运行特殊身份的程序, 就可以让su来做

·如何清空一个文件(bjchenxu)

> filename

·查看有多少活动httpd的脚本(bjchenxu)

#!/bin/sh

while (true)

do

pstree |grep "*/[httpd/]$"|sed 's/.*-/([0-9][0-9]*/)/*/[httpd/]$//1/'

sleep 3

done

·linux下怎么看分区的卷标啊 (q1208c)

e2label /dev/hdxn, where x=a,b,c,d....; n=1,2,3...

·让一个程序在退出登陆后继续运行(NetDC,双眼皮的猪)

#nohup 程序名 &

或者使用disown命令也可以

·以不同的用户身份运行程序(bjchenxu)

su - username -c "/path/to/file"

有时候需要运行特殊身份的程序...就可以让su来做...

· 编辑/etc/inittab后直接生效(bjchenxu)

#init q

·让linux连续执行几个命令,出错停止(bjchenxu)

command1 && command2 && command3

·如何将grub安装到mbr(bjchenxu, NetDC)

grub> root (hd0, 0)

grub> setup (hd0)

也可以用#grub-install /dev/hda来安装grub。

·安装时把grub(lilo)写到linux分区的引导区还是主引导扇区(MBR)(bjchenxu)

如果你想电脑一启动就直接进入操作系统启动菜单就把grub(lilo)写到MBR上,如果写到linux分区的引导区则要用引导盘引导。建议写到 MBR,方便点,至于说写到MBR不安全,该怎么解释呢?每装一次win98,MBR都会被修改一次,大家觉得有什么不安全的吗?

·如何在图形界面和控制台(字符界面)之间来回切换(bjchenxu)

a.图形界面到控制台:Ctr+Alt+Fn(n=1,2,3,4,5,6)。

b.各控制台之间切换:Alt+Fn(n=1,2,3,4,5,6)。

c.控制台到图形:Alt+F7

· linux文本界面下如何关闭pc喇叭(labrun)

将/etc/inputrc中的set bell-style none 前的#去掉,或echo "set bell-style none" >> ~/.bashrc

·重装windows导致linux不能引导的解决办法(好好先生)

如果没有重新分区,拿linux启动盘(或者第一张安装光盘)引导,进入rescue模式。首先找到原来的/分区mount在什么地方。redhat通常 是/mnt/sysimage. 执行"chroot /mnt/sysimage". 如果是grub,输入grub-install /dev/hd*(根据实际情况);如果是lilo,输入lilo -v,然后重新启动。如果分区有所改变,对应修改/etc/lilo.conf和/boot/grub/grub.conf然后再执行上述命令。

· linux中刻录iso的方法(hutuworm)

方法一:使用xcdroast,选择制作光碟,选择ISO文件,刻录!

参见http://www.xcdroast.org/xcdr098/faq-a15.html#17

方法二:找刻录机的命令:

cdrecord --scanbus

输出结果为:

0,0,0 0) 'ATAPI ' 'CD-R/RW 8X4X32 ' '5.EZ' Removable CD-ROM

刻录的命令:

cdrecord -v speed=8 dev=0,0,0 hutuworm.iso

方法三:使用k3b可以刻录CD/DVD

k3b主页:http://www.k3b.org/

(实际上k3b是个图形界面,刻录CD利用了cdrecord,刻录DVD利用了dvd+rw-toolshttp://fy.chalmers.se/~appro/linux/DVD+RW/ )

·屏幕变花时怎么办(双眼皮的猪)

当您一不小心cat了一个并不是文本的文件的时候,这时屏幕会变花,那么您可以按两下"Enter"键,再敲"reset",那么屏幕就恢复正常了....

·卸载软件包时如何得知具体包名(diablocom)

大家知道删除软件包的命令是rpm -e XXX,但是当我们不知道这个XXX的确切拼写时,可以用rpm -q -a查询所有安装的软件包或者用rpm -qa |grep xxxx查询出名字

· 用ls只列出目录(yulc)

ls -lF | grep ^d

ls -lF | grep /$

ls -F | grep /$

· 在命令行下列出本机IP地址,而不是得到网卡信息(yulc)

ifconfig |grep "inet" |cut -c 0-36|sed -e 's/[a-zA-Z: ]//g'

hostname -i

·修改/etc/profile或者$HOME/.profile文件后如何立即生效(peter333)

#source /etc/profile (或者source .profile)

·bg和fg的使用(bjchenxu)

输入ctrl+z,当前一个任务会被挂起并暂停, 同时屏幕上返回进程号,此时用 "bg %进程号",会把这个进程放到后台执行,而用" fg %进程号 "就能让这个进程放到前台来执行。另外,job命令用来查看当前的被bg的进程

·

1:HOST的乐趣:

Host能够用来查询域名,然而它可以得到更多的信息。

host -t mx linux.com 可以查询出Linux.com的MX记录,以及处理Mail的Host的名字。

Host -l linux.com 会返回所有注册在linux.com下的域名。

host -a linux.com则会显示这个主机的所有域名信息。

-----------------------------------------------------------------------------------------------

这个应该是对方的DNS主机上做了IP限制,只有指定的IP才能做zone传输。

在named.conf文件中可以用allow-transfer=xxx.xxx.xxx.xxx来限制。

allow-transfer

Specifies which hosts are allowed to receive zone transfers from the

server. allow-transfer may also be specified in the zone statement,

in which case it overrides the options allow-transfer statement. If

not specified, the default is to allow transfers from all hosts.

[root@wy1 sbin]# host -l sina.com.cn

Host sina.com.cn not found: 9(NOTAUTH)

; Transfer failed.

应该是对方的DNS做了这个限制的原因。

2:搞清楚命令的相关文件和命令

# ldd traceroute ,返回结果会是libc.so.6,lid-linux.so.2

3:console顶部显示现在时间

在/etc/bashrc或~/.bashrc中加入环境变量PROMPT_COMMAND。

export PROMPT_COMMAND=echo -ne "33733[2;999r33[1;1H33[00;44m33[K"`date`"33[00m338"

6:简单的进行Dos转Unix:

sed s/^M// filename > newfilename

7:快速建立MP3播放列表

find /mnt/cdrom -name *.mp3 -print >> cd1.play.list.

这样就会把CDRom中的所有MP3文件建立一个名为cd1.play.list的文件。然后使用xmms 或 x11amp就能进行播放了。

8:/proc中的重要信息

cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)

cat /proc/interrupts - 中断

cat /proc/ioports - 设备IO端口

cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)

cat /proc/partitions - 所有设备的所有分区

cat /proc/pci - PCI设备的信息

cat /proc/swaps - 所有Swap分区的信息

cat /proc/version - Linux的版本号

10:让你的硬盘飞起来:

Linux下也可以使用32Bit I/O和DMA。使用/sbin/hdparm -c1 /dev/hda(hdb,hdc..)

打开32Bit传输模式,使用命令 /sbin/hdparm -d1 /dev/hda(hdb,hdc...) 打开DMA。

最后使用/sbin/hdparm -k1 /dev/hda 以使硬盘在Reset之后保持上面的设定,这么一来,硬盘读写速度应该可以提高一倍以上。

11:微调你的Ext2

Linux下的命令tune2fs可以设定最大Mount次数(因为Linux即时在mounted clean状况下,达到一定的mount次数后,会强制e2fsck对于我这样的每天开关机

的来说很不方便),tune2fs命令的其他用途请参见man

13:随时改变XTerm的字体大小

shift加+/-

14:Ext2的文件属性:

lsattr列出属性,

chattr可以改变属性。

如 chattr +A filename 则系统不会修改其last access time属性;

chattr +i 则可以避免被rm掉。

16:使用strings可以把字符串从Binary文件中分离出来

17:你大概已经习惯了使用Top来观察系统使用情况,那就使一使使用Vmstat 1来看看cpu的空闲程度(显示结果的最后一项)。

18:使用Watch命令,反复执行特定命令,如"watch ls -l /tmp/blah",将一直观察文件的大小改变。

19:使用pppstats得到ppp连接的数据。

20:显示远程机器的NFS: showmount -e hostname

21:使用autofs免去你每次mount和umount之苦

再RedHat6.0中带了autofs的rpm,只要安装好之后便可以享受自动加载文件系统的方便。在/misc目录下,创建一个cd目录,如果使用其自带的auto.misc和auto.master的话,马上就可以实现自动加载功能了。

22:在Bash Shell中,可以用!重复上几次输入过的命令,这样就可以省去往上滚动的

麻烦了。使用ctl+R可以互动的检索以前使用过的命令行。

24:Bash中的快捷键

ESCAPE-B 会向前条一个单词,

Ctrl-K会删除从光标到行末所有字符。

26:在同一个命令行上同时执行多条命令

用分号分隔。如编译一个源文件:type ./configure ; make ; make install 。之后你就可以去散步了(不要在电脑前花费了太多时间了,生活中还有很多美好的东西。)

28:使用Top命令监视系统状况

使用S命令可以改变其刷新的时间:如.5将会使其每半秒钟更新一次。

29:同时Unzip多个文件

unzip *不正确,而是unzip "*"。

32:自动Logoff

在~/.bashrc中加入这么一句话:TMOUT=300则会在5分钟之后logoff,不过如果less这类程序运行则不会启动。

33:在使用less 或 more时,直接启动编辑器

在less中打入v键,会立即启动vi或其他你在环境变量中指明的编辑器,但是more只能使用vi。

=======================================

[From]http://tristones.viaspeip.com/archives/000222.html

0001 修改主机名

0002.a Ret Hat Linux启动到文字界面(不启动xwindow)

0002.b 如何在控制台和xwindow之间切换

0003 redhat的自动升级问题

0004 windows下看linux分区的软件 :

0005 mount用法

0006 在vmware的LINUX中使用本地硬盘的FAT分区

0007.a 删除名为/a的文件

0007.c 删除名字带的/和‘/0'文件

0007.d 删除名字带不可见字符的文件

0007.e 删除文件大小为零的文件

0008 redhat设置滚轮鼠标(mc1011) :

0009 加装xwindow

0010 删除linux分区

0011 如何退出man

0012 不编译内核,mount ntfs分区

0013 redhat 8.0中用xmms听mp3

0014 找回忘记了的root口令(lilo/grub)

0015 使ctrl + alt + del失效

0016 如何看出redhat的版本(7.3?8.0?)

0017 文件在哪个rpm中(无双)

0018 把man或info的信息存为文本文件

0019 利用现存两个文件,生成一个新的文件

0020 设置com1口,让超级终端通过com1口进行登录

0021 删除目录下所有文件包括子目录

0022 查看系统信息

0023 去掉多余的回车符

0024 切换X桌面(lnx3000)

0025 通用的声卡驱动程序(lnx3000)

0026 改变redhat的系统语言/字符集(beming/mc1011)

0027 把屏幕设置为90列

0028 使用md5sum文件

0029 一次解压多个zip文件

0030 看pdf文件

0031 查找权限位为S的文件

0032 装中文输入法

0033 把弹出的光盘收回来

0034 cd光盘做成iso文件

0035 快速观看开机的硬件检测

0036 查看硬盘的使用情况

0037 查看目录的大小

0038 查找或删除正在使用某文件的进程(wwwzc)

0039 安装软件

0040 字符模式下设置/删除环境变量

0041.a ls如何看到.开头的文件

0041.b 如何只看到点开头的文件?

0042 rpm中的文件安装到哪里去了

0043 使用src.rpm

0044 vim中显示颜色或不显示颜色

0045 linux是实时还是分时操作系统

0046 make bzImage -j的j是什么意思(wind521)

0047 源码包怎么没有

0048 修改系统时间

0049 开机就mount上windows下的分区

0050 linux怎么用这么多内存

0051 FSTAB 最后的配置项里边最后两个数字是什么意思(lnx3000)

0052 linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

0053 linux中的比较常见的翻译软件?

0054 不让显示器休眠

0055 用dat查询昨天的日期(gadfly)

0056 xwindow下如何截屏

0057 解压小全

0058 在多级目录中查找某个文件的方法

0059 不让普通用户自己改密码(myxfc)

0060 显卡实在配不上怎么办(win_bigboy)

0061 超强删除格式化工具(弱智)

0062 如何让xmms播放列表里显示正确的中文(myxfc)

0063 linux下听MP3(hehhb)

0065 装载windows分区的FAT32、FAT16文件系统(hehhb)

0066 执行a.bin文件

===============================================

0001

修改主机名

<pre>

vi /etc/sysconfig/network

</pre>

修改HOSTNAME一行为HOSTNAME=主机名,重启后也能生效

在终端下输入hostname YourNewHostname,也能暂时生效;重起后失效。

(vi /etc/hostname)

0002.a

Ret Hat Linux启动到文字界面(不启动xwindow)

将/etc/inittab中 id:5:initdefault: 一行中的5改为3

0002.b

切换图形和字符界面

alt+ctrl+f1(...f8)

0003

redhat的自动升级问题

http://www.redhat.com/corp/support/... 有

up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。

0004

windows下看linux分区的软件 :

Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip

0005

mount用法

fat32的分区:#> mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom

ntfs分区用上述方法可显示部分中文,2.6内核需要用nls=cp936参数

iso文件 :#>mount -o loop /abc.iso /mnt/cdrom

软盘 :#>mount /dev/fd0 /mnt/floppy

USB闪存 :#>mount /dev/sda1 /mnt/cdrom

所有/etc/fstab内容 mount -a

注:mount时可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

0006

在vmware的LINUX中使用本地硬盘的FAT分区

将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:

//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharset=gb2312 0 0

其中win_ip是你的windows的IP地址;

D$是你的windows里面共享的D盘的共享名;

/mnt/d是要将该分区mount到linux的目录;

win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。

如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

0007.a

删除名为-a的文件

rm ./-a

rm -- -a 告诉rm这是最后一个选项,参见getopt

ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' /;

0007.b

删除名为/a的文件

rm //a

0007.c

删除名字带的/和‘/0'文件

这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用

1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。

2.也可,将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,

clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.

最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

0007.d

删除名字带不可见字符的文件

列出文件名并转储到文件:ls -l >aaa

然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:

vi aaa

[rm -r *******

]

把文件加上执行权限 chmod +x aaa

执行 $aaa

0007.e

删除文件大小为零的文件

rm -i `find ./ -size 0`

find ./ -size 0 -exec rm {} /;

find ./ -size |xargs rm -f &非常有效

for file in * #自己定义需要删除的文件类型

do

if [ ! -s ${file} ]

then

rm ${file}

echo "rm $file Success!"

fi

done

0008

redhat设置滚轮鼠标(mc1011) :

进入X后,选择鼠标的配置,选择wheel mouse(ps/2)就可以了,

如果鼠标表现异常,重启计算机即可。

(su

vi /etc/X11/XF86Config-4(RH等系统没有'-4')

把PS/2 改成 ImPS/2)

0009

加装xwindow

用linux光盘启动,选择升级,然后单独选择包,安装即可

0010

删除linux分区

做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除.

0011

如何退出man

q键

0012

不编译内核,mount ntfs分区

原装rh8,未升级或编译内核

0. 用uname -r命令查看自己的内核版本(以下以2.4.18-14为例)

1. 上google.com搜索并下载 kernel-ntfs-2.4.18-14.i686.rpm

2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm

3. mkdir /mnt/c

4. mount -t ntfs /dev/hda1 /mnt/c

0013

redhat 8.0中用xmms听mp3

下载http://www.gurulabs.com/files/xmms-...7-13.p.i386.rpm

rpm -Uvh xmms-mp3-1.2.7-13.p.i386.rpm

0014

找回忘记了的root口令(lilo/grub)

三种办法:

1.在系统进入单用户状态,直接用passwd root去更改

2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下:

cd /mnt

mkdir hd

mount -t auto /dev/hdaX(原来/分区所在的分区号) hd

cd hd

chroot ./

passwd root

这样可以搞定

3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同

rh8中

一. lilo

1. 在出现 lilo: 提示时键入 linux single

画面显示 lilo: linux single

2. 回车可直接进入linux命令行

3. #vi /etc/shadow

将第一行,即以root开头的一行中root:后和下一个:前的内容删除,

第一行将类似于

root::......

保存

4. #reboot重启,root密码为空

二. grub

1. 在出现grub画面时,用上下键选中你平时启动linux的那一项(别选dos哟),然后按e键

2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键

3. 修改你现在见到的命令行,加入single,结果如下:

kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/

4. 回车返回,然后按b键启动,即可直接进入linux命令行

5. #vi /etc/shadow

将第一行,即以root开头的一行中root:后和下一个:前的内容删除,

第一行将类似于

root::......

保存

6. #reboot重启,root密码为空

0015

使ctrl + alt + del失效

vi /etc/inittab

将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉就可以了

0016

如何看出redhat的版本(7.3?8.0?)

cat /proc/version或者cat /etc/redhat-release

0017

文件在哪个rpm中(无双)

www.rpmfind.net上搜,或者rpm -qf 文件名得到

0018

把man或info的信息存为文本文件

以 tcsh 为例:

man tcsh | col -b > tcsh.txt

info tcsh -o tcsh.txt -s

0019

利用现存两个文件,生成一个新的文件

1. 取出两个文件的并集(重复的行只保留一份)

2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)

3. 删除交集,留下其他的行

1. cat file1 file2 | sort | uniq

2. cat file1 file2 | sort | uniq -d

3. cat file1 file2 | sort | uniq -u

0020

设置com1口,让超级终端通过com1口进行登录

确认有/sbin/agetty,编辑/etc/inittab,添加

7:2345:respawn:/sbin/agetty /dev/ttyS0 9600

9600bps是因为联路由器缺省一般都是这种速率,也可以设成

19200、38400、57600、115200

修改/etc/securetty,添加一行:ttyS0,确保root用户能登录

重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了

0021

删除目录下所有文件包括子目录

rm -rf 目录名

0022

查看系统信息

cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)

cat /proc/interrupts - 中断

cat /proc/ioports - 设备IO端口

cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)

cat /proc/partitions - 所有设备的所有分区

cat /proc/pci - PCI设备的信息

cat /proc/swaps - 所有Swap分区的信息

cat /proc/version - Linux的版本号 相当于 uname -r

uname -a - 看系统内核等信息

0023

去掉多余的回车符

sed 's/^M//' test.sh > back.sh, 注意^M是敲ctrl_v ctrl-m得到的

或者 dos2unix filename

0024

切换X桌面(lnx3000)

switchdesk KDE或者switchdesk GNOME

(vi ~/.xinitrc

添加或修改成

exec gnome-session 或

exec startkde

然后用startx启动X)

0025

通用的声卡驱动程序(lnx3000)

OSS :http://www.opensound.com/

ALSA :http://www.alsa-project.org/

0026

改变redhat的系统语言/字符集(beming/mc1011)

修改 /etc/sysconfig/i18n 文件,如

LANG="en_US",xwindow会显示英文界面,

LANG="zh_CN.GB18030",xwindow会显示中文界面。

还有一种方法

cp /etc/sysconfig/i18n $HOME/.i18n

修改 $HOME/.i18n 文件,如

LANG="en_US",xwindow会显示英文界面,

LANG="zh_CN.GB18030",xwindow会显示中文界面。

这样就可以改变个人的界面语言,而不影响别的用户

(Debian不支持GB18030(RH的zysong字库是有版权的)

现在好像没有Free的GBK和GB18030字库

vi .bashrc

export LANG=zh_CN.GB2312

export LC_ALL=zh_CN.GB2312)

0027

把屏幕设置为90列

stty cols 90

0028

使用md5sum文件

md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值

是否一致 md5sum –c hashfile

0029

一次解压多个zip文件

unzip "*",注意引号不能少

0030

看pdf文件

使用xpdf或者安装acrobat reader for linux

0031

查找权限位为S的文件

find . -type f /( -perm -04000 -o -perm -02000 /) -exec ls -lg {} /;

0032

装中文输入法

以redhat8为例,xwindow及其终端下的不用说了吧,缺省就安装了,用ctrl-space呼出。

现在讨论纯console,请下载zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz,

放在任一目录中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure,

make, make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

0033

把弹出的光盘收回来

#eject -t

0034

cd光盘做成iso文件

cp /dev/cdrom xxxx.iso

0035

快速观看开机的硬件检测

dmesg | more

0036

查看硬盘的使用情况

df -k 以K为单位显示

df -h 以人性化单位显示,可以是b,k,m,g,t..

0037

查看目录的大小

du -sh dirname

-s 仅显示总计

-h 以K、M、G为单位,提高信息的可读性。KB、MB、GB是以1024为换算单 位, -H以1000为换算单位。

0038

查找或删除正在使用某文件的进程(wwwzc)

fuser filename

fuser -k filename

0039

安装软件

rpm -ivh aaa.rpm

tar xvfz aaa.tar.gz; cd aaa; ./configure; make; make install

0040

字符模式下设置/删除环境变量

bash下

设置:export 变量名=变量值

删除:unset 变量名

csh下

设置:setenv 变量名 变量值

删除:unsetenv 变量名

0041.a

ls如何看到.开头的文件

ls -a

0041.b

如何只看到点开头的文件?

ls .* -d

0042

rpm中的文件安装到哪里去了

rpm -qpl aaa.rpm

0043

使用src.rpm

rpmbuild --rebuild *.src.rpm

0044

vim中显示颜色或不显示颜色

vi ~/.vimrc; 如果有syntax on,则显示颜色,syntax off,则不显示颜色

0045

linux是实时还是分时操作系统

分时

0046

make bzImage -j的j是什么意思(wind521)

-j主要是用在当你的系统硬件资源比较大的时候,比较富裕的时候,用这个可以来加快编译的速度,如-j 3

0047

源码包怎么没有

你没有安装源代码,你把你光盘上rpm -i *kernel*source*.rpm装上,就可以看到你的源代码了。

0048

修改系统时间

date -s “2003-04-14 cst”,cst指时区,时间设定用date -s 18:10

0049

开机就mount上windows下的分区

自动将windows的d盘挂到/mnt/d上,用vi打开/etc/fstab,加入以下一行

/dev/hda5 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0

注意,先得手工建立一个/mnt/d目录

0050

linux怎么用这么多内存

为了提高系统性能和不浪费内存,linux把多的内存做了cache,以提高io速度

0051

FSTAB 最后的配置项里边最后两个数字是什么意思(lnx3000)

第一个叫fs_freq,用来决定哪一个文件系统需要执行dump操作,0就是不需要;

第二个叫fs_passno,是系统重启时fsck程序检测磁盘的顺序号

1 是root文件系统,2 是别的文件系统。fsck按序号检测磁盘,0表示该文件系统不被检测

dump 执行ext2的文件系统的备份操作

fsck 检测和修复文件系统

0052

linux中让用户的密码必须有一定的长度,并且符合复杂度(eapass)

vi /etc/login.defs,改PASS_MIN_LEN

0053

linux中的比较常见的翻译软件?

stardict

0054

不让显示器休眠

setterm -blank 0

setterm -blank n (n为等待时间)

0055

用dat查询昨天的日期(gadfly)

date --date='yesterday'

0056

xwindow下如何截屏

Ksnapshot或者gimp

0057

解压小全

tar xvfj example.tar.bz2

tar xvfz example.tar.gz

tar xvfz example.tgz

tar xvf example.tar

unzip example.zip

0058

在多级目录中查找某个文件的方法

find /dir -name filename.ext

du -a | grep filename.ext

locate filename.ext

0059

不让普通用户自己改密码(myxfc)

[root@xin_fc etc]# chmod 511 /usr/bin/passwd

又想让普通用户自己改密码

[root@xin_fc etc]# chmod 4511 /usr/bin/passwd

0060

显卡实在配不上怎么办(win_bigboy)

http://www.redflag-linux.com/ ,下了xfree86 4.3安装就可以了.

0061

超强删除格式化工具(弱智)

比PQMagic安全的、建立删除格式化的小工具:sfdisk.exe for msdos

http://www.wushuang.net/soft/sfdisk.zip

0062

如何让xmms播放列表里显示正确的中文(myxfc)

-*-*-*-*-*-iso8859-1,-misc-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-

把这个东西完全拷贝到你的字体里面

操作方法:

右键单击xmms播放工具的任何地方

会看到一个"选项",然后选择"功能设定"选择"fonts"

然后把上面的字体完整的拷贝到"播放清单"和 "user x font

使用较新的发行版建议使用Beep Media Player, 基于GTK2

0063

linux下听MP3(hehhb)

redhat光盘原带然xmms不能播放MP3(无声), 要下载安装一个RPM包:

xmms-mp3-1.2.7-13.p.i386.rpm

安装即可.打开xmms,ctl-p,在font栏中

先在上半部的小框内打勾,再选择 “fixed(misc) gbk-0 13”号字

体即可显示中文歌曲名。在音频输出插件中选择 "开放音频系统驱动

程序 1.2.7 [lioOSS.so]即可正常播放MP3文件.

0065

装载windows分区的FAT32、FAT16文件系统(hehhb)

以root身份进入KDE,点击桌面上的“起点”图标,在/mnt目录下建立如下文件夹:c,d,e,f,g,usb.分别用作windows下各分区和usb闪盘。

  用文本编辑器打开/etc/fstab 文件.加入如下:

/dev/hda1 /mnt/c vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda5 /mnt/d vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda6 /mnt/e vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda7 /mnt/f vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/hda8 /mnt/g vfat iocharset=gb2312,umask=0,codepage=936 0 0

/dev/cdrom /mnt/cdrom udf,iso9660 noauto,iocharset=gb2312,owner,kudzu,ro 0 0

/dev/sda1 /mnt/usb vfat iocharset=gb2312,umask=0,codepage=936 0 0

存盘退出. 重新启动后即可正常访问FAT32或FAT16格式分区,解决显示WINDOWS分区下和光盘中文文件名乱码

问题.其****六列,每列用Tab键分开。注意此方法只能mount上Fat 分区格式.sda1是闪盘。

以 上做法适用于系统语言为zh_CN.GB2312, zh_CN.GBK, zh_CN.GB18030的系统,如果系统默认语言为zh_CN.UTF8, 需要把上面所有iocharset=gb2312改成iocharset=utf8,codepage可以不用设置。

0066

执行a.bin文件

chmod u+rx a.bin

./a.bin

创建于: 2006-03-29 14:03:47,修改于: 2006-09-09 10:08:49,已浏览218次,有评论0条

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: