linux技巧汇总

作者:linux宝库 ( http://www.linuxmine.com)
来自:linux宝库 ( http://www.linuxmine.com)
联系:linuxmine#gmail.com

这些是我在学习linux时间里记在笔记本上的东西,希望对大家有用!



1.更改telnet登录慢的问题:

cd /etc

vi resolv.conf

将里面内容清空



2.更改root用户不能直接远程登录问题:

cd /etc

cd pam.d

vi login

注释掉这行

#auth required pam_securetty.so //该行注释掉



3.挂接USB移动硬盘

将移动硬盘挂上.

#df 查看Linux下硬盘盘符

mount /dev/sda1 /mnt/usb (举例)



4.Linux时区同步问题(安装ntp软件过程)

首先在 http://www.meinberg.de/eng...

下载了一个windows的NTP服务程序:ntp4171.zip

windows 192.168.1.32

1.安装是提示设置服务器地址,我设置的本机widows机器的IP

2.ntpd的控制在:

控制面板->管理工具->组件服务-NetworkTimeProtocol

3.可以启动ntpd守护进程保持时间同步

4.在C:\WINNT目录下有个ntp的配置文件ntp.conf

设置为:

server 127.127.1.0 prefer

fudge 127.127.1.0 stratum 10

5.确定ntp是否工作: ntpq -p

linux和Windows同步,我用的是RedHat 9.0

执行命令:ntpdate 192.168.1.32

你就会发现你的时间变化了,和192.168.1.32的时间一样

如果执行命令出现一下错误

1.提示:7 Dec 19:24:55 ntpdate[2120]: the NTP socket is in use, exiting

这个是你linux机器上已经存在这个进程,输入:ps -ef | grep ntpd

Kill掉ntp的进程

2.提示:No Server suitable for synchronization found

这个是最容易出现的问题,比较常见的是配置好服务器并启动服务器进程后,马上

启动客户进程,那么客户进程就会报错。解决方法是,在大约3-5分钟以后启动进程就行

我想每10分钟就和Windows服务同步时间

1.创建自己的一个crontab文件,随便建立一个文件date.cron,首先可以使用任何文本

编辑器建立一个新文件,然后向其中写入需要运行的命令和要定期执行的时间。

vi date.cron加入下面要运行的命令和要定期执行的时间

*/10 * * * * /usr/sbin/ntpdate 192.168.1.32

然后存盘退出

2.使用crontab命令来安装这个文件,使之成为该用户的crontab文件。键入:

crontab date.cron

这个文件已经建立好了

3.使用命令:

crontab -l (查看安排的作业序列)可以看到刚才的作业

如:

[root@NXD-TEST root]# crontab -l

# DO NOT EDIT THIS FILE - edit the master and reinstall.

# (date.cron installed on Tue Dec 7 18:22:42 2004)

# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

*/10 * * * * /usr/sbin/ntpdate 192.168.1.32

现在就OK了,每10分钟Linux就和服务端同步一次。



5.更改Linux启动时用图形界面还是字符界面

cd /etc

vi inittab

将id:5:initdefault: 其中5表示默认图形界面

改id:3: initdefault: 3表示字符界面



6.重新启动xinetd)

/etc/init.d/xinetd restart



7.重启smb服务

在rhas3.0上建立一个完整的邮件系统



8.配置smb可以被哪些IP所用.

cd /etc/samba

Vi smb.conf

找到hosts allow = 192.168.1. 192.168.2. 127.

修改其为哪些机器所用,注意IP之间用逗号分开

举例:

hosts allow =192.168.1.110,192.168.1.120



9.禁止在后台使用CTRL-ALT-DELETE重起机器

cd /etc/inittab

vi inittab 在文件找到下面一行

# Trap CTRL-ALT-DELETE

ca::ctrlaltdel:/sbin/shutdown -t3 -r now (注释掉这一行)

如: # Trap CTRL-ALT-DELETE

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now



10.修改主机名

vi /etc/sysconfig/network

修改HOSTNAME一行为HOSTNAME=主机名



11.重新启动FTP服务

/sbin/service vsftpd restart



12.查看开机检测的硬件

dmesg | more



13.查看硬盘使用情况

df –m



14.查看目录的大小

du –sh dirname



15.解压小全

tar xvfj lichuanhua.tar.bz2

tar xvfz lichuanhua.tar.gz

tar xvfz lichuanhua.tgz

tar xvf lichuanhua.tar

unzip lichuanhua.zip



16.显示内存使用情况

free –m



17.忘记root密码,如果是grup

1.出现grup画面时,用上下键选启动Linux的哪一项,按e键

2.上下键选择 kernel /boot/……… 然后按e键

3.修改现在见到的命令好,加入single 结果:

kernel /boot/vmlinuz-2.4.20-8 single ro root=LABEL=

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

直接执行: passwd root

修改密码,你的密码就搞定

如果是lilo:按Tab,画面出现lilo 键入:linux single ,回车



18.显示系统运行了多长时间

uptime



19.重新启动网络

/etc/init.d/network restart



20.显示开机自检的内容命令

dmesg



21.查看端口

netstat –an

netstat -anp



22..端口的详细列表

/etc/services



23.查看物理信息

lspci



24.安装图形界面不能出现,使用解析进行安装

Linux lowres (使用的是640X480分辨率)



25.屏蔽主机的ping 命令,是被别人无法ping你的机器

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



26.彻底删除Oracle安装的程序,删除一下几个目录

/etc/oraInst.loc /tmp/<otherowerdFile

/etc/oratab $ORACLE_BASE/*



27.Linux启动到文字界面(不启动Xwindows界面)

vi /etc/inittab在下面一行

id:5:initdefault: 一行中的5改为3

启动Xwindows 是5

文字截面是 3





28.RPM包

1.卸载 RPM –e

2.查询 rpm –q

-a 查询所有已安装的软件包

-f 查询包含文件<file>的软件的包

-i 显示软件包信息

-l 显示软件包的文件列表

3.验证 rpm –v

rpm –Va 验证整个文件丢失了哪些文件

碰到不认识的文件使用

rpm –qf

4.一个rpm包安装到哪里去了(已经安装的包)

rpm –qi 包名(这里不包括.rpm后缀的软件名称,也就是说只能用mysql或者mysql-3.23.54a而不是mysql-3.23.54a.rpm)

5.一个rpm包中包含哪些文件

一个没有安装过的软件包:使用rpm –qip ***.rpm

一个已经安装过的软件包: 使用rpm –qi ***.rpm



29.看已经安装的字符集

locale –a



30.抓包命令tcpdump

例:抓获192.168.1.32 的主机收到和发出的所有的数据包

tcpdump host 192.168.1.32

截获特定的端口

tcpdump tcp port 21 host 192.168.1.32



31.文本截面的中文支持

RH 9.0自带安装包 zhcon_0.2.3_1.rh9.i386.rpm

安装完成后,执行: zhcon 就可以支持中文了



32.查看端口现在运行什么程序

lsof –i:8001



33.察看实时的日志

tail –f /var/log/messages



34.当mount出现死的现象

1.fuser –m /mnt/share 查出该程序的进程,然后Kill掉

2.再umount /mnt/share



35.linux 控制 windows

1.用RH9.0自己带rdesktop,版本是1.2.0

命令:rdesktop –u user –f 192.168.1.70 色默认的是8位

2要达到16色,就要下载新版本1.3.0

rdesktop –a 16 –u lichuanhua –g 800*600 192.168.1.70



36. Linux挂载Windows分区

mount ntfs分区

一.单机挂windows的NTFS分区

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

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

3. mkdir /mnt/share

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

要挂载Windows分区,首先新建一个目录/mnt/share,修改/etc/fstab,在最末尾添上(假设Windows安装在硬盘的第1个分区)

/dev/hda1 /mnt/share ntfs defaults 0 0

二.网络上一台windows和linux机器,linux机器挂载windows上的共享文件

windows IP:192.168.1.1

1.linux挂载192.168.1.1(windows)上共享文件dbf,挂在linux的/mnt/share目录下,在/mnt下建立share目录

mount -t smbfs -o username=massky,password=massky //192.168.

1.1/dbf /mnt/share

2.机器重启自动挂载,vi /etc/fstab最后加入:

//192.168.1.1/dbf /mnt/share smbfs defaults,auto,username=m

assky,password=massky 0 0



37.Oracle9i在Linux9.0上的安装

1.确保RPM开发包,使用下面命令查看是否已安装这些包

rpm -q gcc cpp compat-libstdc++ glibc-devel glibc-kernheaders binutils

2.进行解压

zcat Linux9i_Disk1.cpio.gz | cpio -idmv

zcat Linux9i_Disk2.cpio.gz | cpio -idmv

zcat Linux9i_Disk3.cpio.gz | cpio -idmv

3.设置内核参数

vi /etc/sysctl.conf,加入下面参数

kernel.shmmax=4294967295 内存512M

计算方法为:kernel:shmmax=1024*1024*RAM(M)/2

执行sysctl -p生效

4.建立数据目录和用户

groupadd dba

groupadd oinstall

useradd –g oinstall –G dba oracle

passwd oracle



mkdir /opt/oracle

mkdir /opt/oracle/product

mkdir /opt/oracle/product/9.2.0

chown –R oracle.oinstall /opt/oracle

mkdir /var/opt/oracle

chown oracle.dba /var/opt/oracle

chmod 755 /var/opt/oracle

5.vi .bash_profile 设置变量

export LD_ASSUME_KERNEL=2.4.1

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=/opt/oracle/product/9.2.0

export ORACLE_SID=ora9i

export ORACLE_TERM=xterm

export TNS_ADMIN=$ORACLE_HOME/network/admin

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

export LD_LIBRARY_PATH



export PATH=$PATH:$ORACLE_HOME/bin

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

export CLASSPATH





38.网卡的激活与停止

超级用户;

ifconfig eth0 down 停止

ifconfig eth0 up 启动



40.Linux下cvs的安装配置

1.安装CVS软件包.

2.groupadd cvs

3.useradd -g cvs cvsroot

4.chmod 777 -R /home/cvsroot

5.cd /etc

6.vi profile

新增以下二行:

CVSROOT=/home/cvsroot export CVSROOT

CVSEDIT=vi export CVSEDIT

7.查看/etc/services文件中cvspserver 所在行的注释状态(有则把注释去掉)

8.进入 /etc /xinetd.d, vi cvspserver该文件不存在,内容如下:

service cvspserver

{

disable = no

socket_type =stream

wait =no

user =root

env =HOME=

server =/usr/bin/cvs

server_args =--allow-root=/home/cvsroot pserver

log_on_failure +=USERID

}

9.vi /etc/xinetd.conf 内容如下,每次开机自动启动服务:

service cvspserver

{

port = 2401

socket_type = stream

wait = no

user = root

server = /usr/bin/cvs

server_args = -f --allow-root=/home/cvsroot pserver

bind = 168.168.1.110

}

重新登录 换cvsroot用户

10./etc/init.d/xinetd restart

11.cvs init(初始化:CVS版本库的初始化)

12.cvs -d :pserver:[email protected]:/home/cvsroot login(用户登录)没有任何提示信息就成功。

13.首先要导入库,假设项目名称为LinuxISQuote.

步骤:

  1、进入LinuxISQuote.

2、一个项目的首次导入

cvs import LinuxISQuote lch V_0_0_1

此时到$CVSROOT目录下,可以看到多了一个LinuxISQuote的目录。



41.命令绝对路径

.如果不是绝对路径的话,你可以这样输入

(1)[root@RedHat linux]# whereis adduser

adduser: /usr/sbin/adduser /usr/share/man/man8/adduser.8.gz

你这样输入就可以了 /usr/sbin/adduser xxx

(2) 或者改vi /etc/profile,加入一句:PATH=$PATH:/usr/sbin:. export PATH,

就可以直接输入adduser



42.修改用户的权限

.改用户权限的话,你可以改vi /etc/passwd

如:我想lll变成和root用户一样,就改: lll:x:508:508::/home/lll:/bin/bash

改后面的 508 为和root后面的数据一样的就可以了!

改为:lll:x:508:0::/home/lll:/bin/bash

lll就拥有root的权限了。



43.修改grub启动时的背景图片

1 将一图片转化成640*480,14色的XPM文件:

   #convert abc.jpg -colors 14 -geometry 640x480! abc.xpm

2 压缩生成的xpm文件,使用gzip

#gzip -9 abc.xpm

3 将abc.xpm.gz拷到/boot/grub下

4 修改/boot/grub/menu.lst

splashimage=(hd0,0)/boot/grub/abc.xpm.gz



44.VNC for Linux的安装

1.第一步在linux上安装VNCserver

tar zxvf vnc-X.tgz

cd X

cp *vnc* /usr/local/bin/

没有vnc 目录,就建vnc目录

mkdir /usr/local/vnc

cp -r classes/ /usr/local/vnc/

2.设置vnc server的访问密码

vncpasswd

3.linux版vnc server的改进.首先执行vncserver

修改/root/.vnc/xstartup里的 twm $ 为gnome-session &

4.启动vnc server

vncserver

注意New 'X' desktop is KILl:3 记住3是客户端要用到的端口

5.客户端启动vncviewer,输入:如192.168.1.110:3

OK,你就看到了。。哈。。

如果在Windows客户机中安装了IE或NETSCAPE,还可以启动IE或netscape

然后在地址栏输入(如果是1的话)

http://192.168.1.64:5801





45. 改变或关闭Oracle XDB的ftp和http端口

Oracle 9i开始,创建数据库时默认包含了XDB特性。一旦启动了数据库和Listener,Oracle
XDB的http服务就占用8080端口,刚好和JBoss、Tomcat等默认端口冲突。因此,必须有一个做出更改。改Tomcat等容易,只是一时不
知道怎么改XDB的配置。

在Google上搜索一下,找到了答案。原来Oracle XDB的端口设置不在配置文件中,而是在数据库里。修改XDB的http和ftp服务端口的方法有3种:

1。使用sys登录Oracle,利用dbms_xdb修改端口设置

SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081

SQL> call dbms_xdb.cfg_update(updateXML(

2 dbms_xdb.cfg_get()

3 , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'

4 , 8081))

5 /

Call completed.

SQL> -- Change the FTP port from 2100 to 2111

SQL> call dbms_xdb.cfg_update(updateXML(

2 dbms_xdb.cfg_get()

3 , '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()'

4 , 2111))

5 /

Call completed.

SQL> COMMIT;

Commit complete.

SQL> EXEC dbms_xdb.cfg_refresh;

PL/SQL procedure successfully completed.

2。使用OEM console,选择数据库,XML Database,Configuration。更改XDB的有关设置。

3。去掉数据库的初始化参数: dispatchers='(PROTOCOL=TCP) (SERVICE=XDB)',将会禁止XDB的http和ftp服务。



46.XML for linux的安装

我下载了两个文件:libxml2-2.6.13.tar.gz和xml4c5_4_0-redhat_80-gcc_32.tar.gz

加入环境:

export XERCESCROOT=/home/lch/xml

export PATH=$PATH:/home/lch/xml/bin

export XERCESC_NLS_HOME=$XERCESCROOT/msg

export LD_LIBRARY_PATH=$XERCESCROOT/lib:$LD_LIBRARY_PATH (on Solaris, Linux)

进入xml4c5_4_0-redhat_80-gcc_32.tar.gz解压后的目录

runConfigure -plinux -cgcc -xg++ -rpthread

./configure

gmake



47.ace for linux的安装

由于安装说明文件“ACE-INSTALL.html”中提及的linux安装过程极少,其主要针对Unix、Windows,手动配置较多,加上本人安
装后感觉“ACE-INSTALL.html”文件有些影响视听,因为主要的动作都可以由ACE包中的安装脚本ACE-install.sh自动完成,我
们主要的工作就可以直接对这个安装脚本来处理即可。

1、安装环境:

lRedHat 9.0

ACE安装包ACE+TAO+CIAO.tar.gz,

http://deuce.doc.wustl.edu... , "Latest Beta Kit",beta版既是ACE的最新版。

2、安装过程:

第一步

先设置ACE_ROOT环境,命令:

“vi /etc/profile”

在其中加入4行

ACE_ROOT=/opt/ACE

export ACE_ROOT

LD_LIBRARY_PATH=$ACE_ROOT/ace:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH

我是加在“export PATH USER….”后的。完成后将/etc/profile执行一次,命令:

“chmod 555 /etc/profile”

“/etc/profile”

这样我们的ACE_ROOT就设置好了,可以用如下命令查看ACE_ROOT是否设置好了:

“echo $ACE_ROOT”

这个时候最好reboot启动一次linux。

第二步

不要自己手工将ACE+TAO+CIAO.tar.gz包完全解开,特别强调不要完全解开,后面可以看到安装脚本会给我们解开它的;如果你手工解开全部,
安装脚本将会将你的解压缩目录删除的!我们要做的事就只是将ACE+TAO+CIAO.tar.gz包中的ACE-install.sh安装脚本单独解出
来,并对其修改。我们只要这一个文件就可以。

用mkdir建目录,如/home/my/ACE,然后将你的ACE+TAO+CIAO.tar.gz放在此目录下(用cp命令拷贝或mv命令移动到此目
录)。注意这个目录将是你的一个存放ACE+TAO+CIAO.tar.gz的目录,安装脚本会来这个目录找这个文件的,这个目录和ACE_ROOT是不
一样的,且ACE-install.sh也提示不要将这两个目录设置成同一个目录。ACE_ROOT将是我们的安装目标目录。

从ACE+TAO+CIAO.tar.gz解压出单个文件ACE-install.sh:

“tar –zxvf ACE+TAO+CIAO.tar.gz ACE_wrappers/ACE-install.sh”

解好后,会出来一个新的子目录“ACE_wrappers”。此时可以先将ACE-install.sh移到外面的目录来:

“mv /ACE_wrappers/ACE-install.sh .”

“.”代表当前目录。当然ACE-install.sh在什么路径下是没什么影响的,因为我们要对ACE-install.sh的内容进行修改的,里面有
很多路径要修改。好,现在在/home/my/ACE就有了ACE-install.sh,我们现在用vi对其进行修改,修改前自己可以先备份一个。命
令:

“cp ACE-install.sh ACE-install.sh.bak”

“vi ACE-install.sh”

我们可以看到缺省的,这个文件是用来在UNIX下做安装的。所以我们要将其中的有关UNIX的部分换成linux即可。

先找到“MY_ACEDIR=${HOME}/aceconfig”,将其改成“MY_ACEDIR=/home/my/ACE”,就是改成我们自己建的、放有ACE+TAO+CIAO.tar.gz文件的目录,之后去掉前面的注释“#”号。

接着在下面一点,找到“MY_ACE_CONFIG=config-sunos5.4-sunc++-4.x.h”,将其修改成
“MY_ACE_CONFIG=config-linux.h”,即改成linux下的配置文件。继续改,找到“MY_ACE_GNU_MACROS=
platform_sunos5_sunc++.GNU”,将其改成
“MY_ACE_GNU_MACROS=platform_linux.GNU”。这个是各种操作系统平台下的GNU宏文件设置。

好了,文件修改完毕,保存退出“:wq”。

第三步

我们的重点到了,现在就可以安装ACE了。

此时应该是在/home/my/ACE目录下,我们执行:

./ACE-install.sh





48.删除了 /etc/inittab

修复办法如下!

1.首先进去linux的rescue的模式!

2.然后使用如下的命令:

rpm -qf --root /mnt/sysimage /etc/inittab

查出该文件属于哪个RPM包!

3.然后重新安装这个rpm包!

rpm -ivh --force --root /mnt/sysimage /mnt/source/Redhat/RPMS/packagename

4.sync (将cache中的内容写入磁盘)

5.exit



49开启后台talk会话功能

开启talk功能: chkconfig talk on

交谈 : talk massky(用户)



50.不让显示器休眠

setterm –blank 0



51.定制用户登录时显示的信息

编辑 /etc/motd 加入登录时要显示的信息



52.查看路由信息

netstat –rn

route –n



54.显示硬件信息

lsdev

55. 显示当前加载的核心模块

lsmod



56.列出系统内核所有可用的模块

modprobe –l



57.根据进程名显示进程号

pidof vsftpd



58. 将内容倒序读出

rev file.name



59.定制用户登录时显示的信息

编辑/etc/motd 加入登录时要显示的信息



60.查看密码过期信息

change –l longinname



61.显示最后一个登录到系统的用户

last



62.显示最后一个登录不成功的登录尝试(lastb命令)

如果在系统上不能工作,就需要你建立一个文件:touch /var/log/btmp,然后在执行 lastb命令就可以查看到最后一个不成功的登录尝试,



63.以3秒钟执行一个ls命令

watch –n 3 ls
<!-- 正文结束 -->

google_ad_client = "pub-2416224910262877"; google_ad_width = 728; google_ad_height = 90; google_ad_format = "728x90_as"; google_ad_channel = ""; google_color_border = "E1771E"; google_color_bg = "FFFFFF"; google_color_link = "0000FF"; google_color_text = "000000"; google_color_url = "008000";

你可能感兴趣的:(oracle,linux,windows,Google,cvs)