linux 操作技巧
【IT168 服务器学院】编辑/etc/inittab后直接生效的方法..
执行init q
让linux连续执行几个命令,出错停止
command1 && command2 && command3 ....
linux中的bg和fg管理
当我们打ctrl+z的时候一个任务就被挂起(就是暂停),同时屏幕上返回一个数字,
这时候可以用 "bg %数字" 来把这个进程放到后台执行...这个很适合在你忘了加
&的时候进行补救...同样 " fg %数字 "就能让这个进程放到前台来执行了...
job命令用来查看当前的被bg的进程...
目录统计教本
保存成total.sh ,然后用total.sh 绝对路径,就会统计路径下目录的大小了
代码:
#!/bin/sh
du $1 --max-depth=1 | sort -n|awk ''{printf "%7.2fM ----> %s\n",$1/1024,$2}''|sed ''s:/.*/\([^/]\{1,\}\)$:\1:g''
自己用的一个统计httpd的脚本
代码:
#!/bin/sh
while (true)
do
pstree |grep "*\[httpd\]$"|sed ''s/.*-\([0-9][0-9]*\)\*\[httpd\]$/\1/''
sleep 3
done
linux里如何查看可用的硬盘设备
fdisk -l
hosts的用法
host能够用来查询域名,然而它可以得到更多的信息.host -t mx linux.com可以查询出linux.com的MX记录,以及处理mail的host的名字.host -l linux.com会返回所有注册在linux.com下的域名.host -a linux.com则会显示这个主机的所有域名信息.
RPM常见用法
安装rpm包时显示进度并校验包的正确性
用-vh参数:
如 rpm -ivh ipchains-1.3.6-1.i386.rpm
如果用glint或xrpm则不必.
直接通过ftp来安装rpm包
如 rpm -i ftp://ftp.xxx.xxx
校验所有的rpm包,查找丢失的文件
rpm -Va
查找一个文件属于哪个rpm包
如 rpm -qf /usr/bin/who
netstat -ln
解释: "l"表示显示当前系统监听的端口信息;"n"表示端口按照端口号来显示,而不转换为service文件中定义的端口名;若希望了解各个端口都是由哪些进程监听则可以使用p参数
Linux帐号搬家
对于新账号->
保证将要加入系统的新帐号放在新的位置上,这通过修改/etc/default/useradd文件中的HOME值来实现. 如: HOME=/home2 使新增帐号的主目录建在/home2下.
将已有帐号移至新的位置->
首先,将已有帐号的主目录连带目录属性拷至新位置,可用下面命令:
cp -a /home /home2
或
cp -rpd /home /home2
然后,修改/etc/passwd文件中相应记录的home_directory域为/home2/username.
这样两步已将旧帐号移至新位置.确保无误后,可删去旧帐号的旧主目录以腾出原文件系统的空间
Linux 启动时屏幕显示的信息来不及看清就一闪而过,如果对这些信息感兴趣的话可以在启动完后用命令 dmesg 查看.
GRUB引导恢复小法
用启动盘或安装盘(linux rescue)进linux
sh# grub
grub> root (hdx,y)
grub> setup (hd0)
重启
说明: 如果成功会有一个successful......这里的x,如果是一个盘,就是0.如果你所安装的linux的根分区在第二个硬盘上,那x就是1了;y就是装有linux系统所在的根分区.setup (hd0)就是把GRUB写到硬盘的MBR上.如果我知道我的linux装在第一个硬盘上,但我不知道装在哪个分区上,就可以先输入root (hd0,然后用[TAB]键来补齐,然后就明白了
测试磁盘性能
用法: hdparm -tT /dev/hd?
例如: hdparm -tT /dev/hda (测试第一个物理硬盘的速度)
开机进入图形/文本登陆方式
vi /etc/inittab
id:x:initdefault:
x=3:文本方式 x=5:图形方式
在GRUB中限制系统可使用的内存数量
限制Linux只能使用120MB内存
title Red Hat Linux (2.4.19)
root (hd0,1)
kernel /boot/vmlinuz-2.4.19 ro root=/dev/hda2 mem=120M
initrd /boot/initrd-2.4.18-14.img
计算目录下的文件及子目录
ls -al | wc -l
列目录时显示中文文件名
在没有打补丁的Linux系统中,我们用ls列目录,发现中文文件名都成了?号.我们可以使用--show-control-chars命令选项来显示.
ls --show-control-chars
使用nohup命令
如果你想进程在你退出系统后还能执行,可以使用nohup命令.
如:
nohup tar cf /dev/tape /home &
你退出后再重新登录的话,使用ps命令会发现进程还在执行.
重新启动
Ctrl+Alt+Del 或 init 6 或 shutdown -r now
快速查找文件
查找文件可以用find,但最好是用locate.速度快,参数少.
locate filename
它是在一个数据库里面查找.所以,要记得经常用updatedb命令更新数据库.一般地,我们是在crontab里面加一句,让机子在每天深夜更新数据库.
另外,快速查找命令文件,可以使用whereis.
例如:
whereis rpm
查找Linux命令
如果你想实现某种功能,但是不知道该使用什么命令.你可以试试apropos命令,它也许能帮你找到你想要的命令.例如: 你要“查找”文件,又不知道用什么命令,你可以敲入下面的命令:
apropos search
在同一个命令行上同时执行多条命令
用分号分隔.如编译一个源文件:
#./configure ; make ; make install
在使用less或more时,直接启动vi
在less或者more中打入v键,会立即启动vi编辑器,可以对文件进行编辑.
观察文件大小变化
使用watch命令,可以反复执行命令.和ls配合,可以达到观察某文件大小变化的效果.
watch ls -| file.name
把DOS/Windows改为缺省操作系统
RedHat把Linux作为lilo缺省操作系统,即出现 boot: 提示符后直接回车启动Linux.如果想改为DOS/Windows,修改文件/etc/lilo.conf,把有关启动DOS的部分放在前面,再运行一次lilo即可.也可以在lilo.conf的配置文件前面加上 Default=dos 其中DOS是DOS/Windows的label
如何使用.iso文件
许多Linux发行版本都有.iso的光盘镜像文件,可以用来刻录光盘.我们也可以在Linux系统下直接使用.
mount -t iso9660 xxxxx.iso /any/path/if/u/like -o loop
显示文件的类型
用命令 file 可以使你知道某个文件究竟是ELF格式的可执行文件,还是shell script文件或是其他的什么格式.
file filename
后台运行程序
可以在程序后面加“&”符号,让程序在后台运行.例如: 你想用updatedb更新文件路径数据库,又不影响你其他的工作.可以:
updatedb &
强行退出 X
有时候在 X 里由于程序出错鼠标键盘都不起作用,这时候不用着急,因为在Linux下几乎不会像在Win 95里那样恶性死机,你只须同时按下Ctrl+Alt+BackSpace键就可以回到字符界面下了.
快速进入目录
键入 cd ~ 可进入用户的home目录;键入 cd - 可进入上一个进入的目录.
想全部删除以.开头的file或dir时你会如何干?
Wrong-> rm -r /tmp/.*
Correct-> rm -r /tmp/\.*
修改网卡MAC地址
ifconfig eth0 down
ifconfig eth0 hw ether 00:AA:BB:CCD:EE
ifconfig eth0 up
上面的是临时性的你可以加入rc.local让它开机自动执行
将一个服务加到自启动运行等级中
chkconfig --add httpd
chkconfig --level 3 httpd on
就是把httpd加到chkconfig管理中,并加在第三层启动
man文件导出为文件并去掉控制符
man command | col -b >col.txt
col -b就是去掉控制符的
查看文件夹大小
du ./ --max-depth=1
--max-depth=1是控制显示深度
光驱弹出,弹入
eject -r 弹出
eject -t 弹入
chkconfig 可以设置系统启动配置
chkconfig httpd on
chkconfig vsftpd on
service 可以控制服务的起停
service vsftpd restart
service sendmail stop
清空日志:
cat /dev/null > *.log
可加在crontab中完成日志的清空作业
列出远程主机(windows)的共享目录
smbclient -L X.X.X.X(IP) -U 用户名
把远程主机的共享目录temp挂到/mnt
mount -t smbfs -o username=用户名 //X.X.X.X(IP)/temp /mnt
du -sm <dirname> 察看目录大小。MB
使用tail 显示文件中最后几行的内容
tail -n 20 access.log
查看文件中最后20行的内容,如果文件大的时候比较有用;
忘了root密码怎么办
boot:linux -s
bash#passwd
修改密码即可
如何取消用户密码
passwd -d username 或直接修改/etc/passwd文件去掉密码即可