linux常用命令

 

linux常用命令分类:linux命令大演练 chinayaosir
redhat9.0+Microsoft Virtual PC 2004 在windows平台建立linux实战环境

清单明细
1目录命令dir,pwd,mkdir,rmdir,cd
2文件命令ls,cp,rm,mv
3查看文件内容cat,tac,more,less,head,tail
4权限设置chown,chgrp,chmod,umask,chattr,lsattr
5查找命令which,whereis,locate,find
6硬盘与设备命令df,du,fsck,fdisk,fdformat,mke2fs,mkbootdisk,mount,umount

常用方法:
command --help |more:查看命令语法明细,如:ls --help |more
man [命令]查看命令语法明细,如要查看:
clear:清屏
ls:显示目录内容
虚拟机的鼠标切换:按键盘上的右边Alt键,再鼠标单击



1目录命令dir,pwd,mkdir,rmdir,cd
--------------------------
命令:dir
功能:显示文件,目录,属性等内容
语法:dir [参数] [目录名称]
参数:[-a -i -l -S]
-a:列出所有文件,-i:显示inode的值,-l:详细列表显示,-S:以文件从大到小顺序排序,
补充:S为大写,小写是不对的
使用方法和ls差不多,详情见ls
--------------------------
命令:pwd
功能:列出你当前所在的目录位置
语法:pwd
案例:
[root@email test]#pwd
/root/test
[root@email test]#

命令:mkdir
功能:建立一个新目录
语法:mkdir [目录名称]
参数:无
案例:
[root@email root]# mkdir c-program
[root@email root]# ls -l
anaconda-ks.cfg  c-program  install.log  install.log.syslog

--------------------------
命令:rmdir
功能:删除一个内容为空的目录,如果还有文件或者子目录,则先删除它们。
语法:rmdir [目录名称]
参数:无
案例:
显示有子目录demo,然后删除它
[root@email root]# ls
anaconda-ks.cfg  c  c-program  demo  install.log  install.log.syslog  test
[root@email root]#  rmdir demo
[root@email root]# ls
anaconda-ks.cfg  c  c-program  install.log  install.log.syslog  test

--------------------------
命令:cd
功能:变换目录
语法:cd [相对路径或者绝对路径]
补充:
. 代表当前目录
..上级目录
~用户自己的根目录
~use回到用户的当前根目录
案例:
下面找到当前位置有目录test,可用cd
[root@email root]# ls
anaconda-ks.cfg  install.log  install.log.syslog  test
[root@email root]# cd test
cd / 表示进行linux的根目录
[root@email root]# cd /
[root@email /]# ls
?    boot  etc   initrd  lost+found  mnt  proc  sbin      tmp  var
bin  dev   home  lib     misc        opt  root  tftpboot  usr
cd ~root表示的返回用户的工作目录,是cd ~use的变形
[root@email /]# cd ~root
[root@email root]# ls
anaconda-ks.cfg  c  c-program  install.log  install.log.syslog  test

 


2文件命令ls,cp,rm,mv
--------------------------
命令:ls
功能:显示文件,目录,属性等内容
语法:ls [参数] [目录名称]
参数:[-a -i -l -S]
-a:列出所有文件,-i:显示inode的值,-l:详细列表显示,-S:以文件从大到小顺序排序,
补充:S为大写,小写是不对的
案例:
[root@email root]# ls
anaconda-ks.cfg  c  c-program  install.log  install.log.syslog  test
[root@email root]# ls -l
total 36
-rw-r--r--    1 root     root         1126 Jun 19  2007 anaconda-ks.cfg
drwxr-xr-x    2 root     root         4096 Oct 24 14:40 c
drwxr-xr-x    2 root     root         4096 Oct 24 14:41 c-program
-rw-r--r--    1 root     root        12901 Jun 19  2007 install.log
-rw-r--r--    1 root     root         3616 Jun 19  2007 install.log.syslog
drwxr-xr-x    3 root     root         4096 Oct 24 14:35 test
以下-als相当于-a  -l -S
[root@email root]# ls -alS
total 80
-rw-r--r--    1 root     root        12901 Jun 19  2007 install.log
drwxr-x---    6 root     root         4096 Oct 24 14:49 .
drwxr-xr-x   21 root     root         4096 Oct 24 14:09 ..
drwxr-xr-x    2 root     root         4096 Oct 24 14:40 c
drwxr-xr-x    2 root     root         4096 Oct 24 14:41 c-program
drwx------    2 root     root         4096 Jun 19  2007 .gconfd
drwxr-xr-x    3 root     root         4096 Oct 24 14:35 test
-rw-r--r--    1 root     root         3616 Jun 19  2007 install.log.syslog
-rw-------    1 root     root         1995 Oct 24 15:03 .bash_history
-rw-r--r--    1 root     root         1126 Jun 19  2007 anaconda-ks.cfg
-rw-r--r--    1 root     root         1126 Aug 24  1995 .Xresources
-rw-r--r--    1 root     root          234 Jul  6  2001 .bash_profile
-rw-r--r--    1 root     root          210 Jun 11  2000 .cshrc
-rw-r--r--    1 root     root          196 Jul 11  2000 .tcshrc
-rw-r--r--    1 root     root          176 Aug 24  1995 .bashrc
-rw-r--r--    1 root     root          120 Feb 27  2003 .gtkrc
-rw-r--r--    1 root     root           24 Jun 11  2000 .bash_logout
--------------------------
命令:cp
功能:文件复制
语法:cp [参数] [源文件] [目标文件]
参数:[-d -r -s -u]
-d:当在复制链接文件(相当于windows的快捷方式文件)时,只复制链接文件,没有-d则复制它的源文件到目录位置
-r:可进行目录的复制
-s:做成链接文件
案例:
[root@email c]# ls
test.c
[root@email c]# cp test.c main.c
[root@email c]# ls
main.c  test.c
把上一级的目录test复制到当前的目录C中
[root@email c]# ls ..
anaconda-ks.cfg  c  c-program  install.log  install.log.syslog  test
[root@email c]# cp -r ../test test
[root@email c]# ls
main.c  test  test.c
--------------------------
命令:rm
功能:删除文件或者目录
语法:rm [参数] [目录名或者文件名]
参数:[-i -r -f]
-i:删除前的用户确认,-r:提供循环删除,-f:强制删除,没有删除前确认.
案例:
含有子目录和文件的目录test被删除
[root@email c]# ls
main.c  test  test.c
[root@email c]# rm -rf test
[root@email c]# ls
main.c  test.c
--------------------------
命令:mv
功能:移动文件的目录,文件改名
语法:mv [参数] [源文件或者目录] [目标文件或者目录]
参数:[-u -f -i]
-u:只有源文件比目录文件新才会执行
-i:覆盖目标文件时请示确认
-f:覆盖目标文件时不会出现提示,强制覆盖
补充:应该细分为3种语法
文件改名:mv [参数] [源文件名] [目标文件]
文件移动:mv [参数] [源文件名] [目标目录]
目录移动:mv [参数] [源目录] [目标目录]
案例:
文件改名测试(test.c改中为test.cpp)
[root@email c]# ls
main.c  test.c
[root@email c]# mv test.c test.cpp
[root@email c]# ls
main.c  test.cpp
文件移动测试(test.cpp移到上级目录中)
[root@email c]# ls
main.c  test.cpp
[root@email c]# mv test.cpp ..
[root@email c]# ls
main.c
[root@email c]# ls ..
anaconda-ks.cfg  c  c-program  install.log  install.log.syslog  test  test.cpp
目录移动测试(当前目录c++file移动到上一级目录)
[root@email c]# ls
main.c
[root@email c]# mkdir c++file
[root@email c]# ls
c++file  main.c
[root@email c]# mv c++file ..
[root@email c]# ls ..
anaconda-ks.cfg  c++file    install.log         test
c                c-program  install.log.syslog  test.cpp


3查看文件内容cat,tac,more,less,head,tail
--------------------------
命令:cat
功能:显示文件所有内容
语法:cat [参数] [文件名]
参数:[-n -E -A]
-n:自动在每一行前加一个行号
-E:显示每一行的结构符(以$表示)
-A:显示全部内容(当文件很大时,一次显示完毕)

案例:
cat不带参数查看文件内容
[root@email root]# cat test.c
#include "stdio.h"
int main(){
printf("this is a test with c/n");
return 0;
}
添加行号的文件输出
[root@email c]# cat -n main.c
     1  #include "stdio.h"
     2  int main()
     3  {
     4          printf("this is a test with c/n");
     5          return 0;
     6  }

显示每行结束符的文件输出
[root@email c]# cat -E main.c
#include "stdio.h"$
int main()$
{$
        printf("this is a test with c/n");$
        return 0;$
}$
--------------------------
命令:tac
功能:反向输出文件内容
从文件最后一行开始到首行输出,记住cat,就容易记住tac,因为cat从右到左就成为了tac.
语法:cat [参数] [文件名]
参数:[-n -E -A]
-n:自动在每一行前加一个行号
-E:显示每一行的结构符(以$表示)
-A:显示全部内容(当文件很大时,一次显示完毕)
案例:
cat从头到尾显示文件内容
[root@email root]# cat test.c
#include "stdio.h"
int main()
{
        printf("this is a test with c/n");
        return 0;
}
tac从尾到头显示文件内容
[root@email root]# tac test.c

}
        return 0;
        printf("this is a test with c/n");
{
int main()
#include "stdio.h"

--------------------------
命令:more
功能:文件内容分页显示
语法:more [文件名]
补充:more与|管理命令组合可以
只有当看一个文件的内容有很多页时,
用具有分页显示功能的more才有意义.

案例:
用more查看install.log文件内容,
按enter可以自动向下翻页,
注意--More--(4%)的变化
[root@email root]# more install.log
Installing 429 packages

Installing glibc-common-2.3.2-11.9.
Installing hwdata-0.75-1.
Installing redhat-logos-1.1.12-1.
Installing setup-2.5.25-1.
Installing filesystem-2.2.1-3.
Installing basesystem-8.0-2.
Installing glibc-2.3.2-11.9.
Installing bzip2-libs-1.0.2-8.
Installing chkconfig-1.3.8-1.
Installing cracklib-2.7-21.
Installing db4-4.0.14-20.
Installing e2fsprogs-1.32-6.
Installing elfutils-libelf-0.76-3.
Installing expat-1.95.5-2.
Installing gdbm-1.8.0-20.
Installing glib-1.2.10-10.
Installing glib2-2.2.1-1.
Installing gmp-4.1.2-2.
Installing hdparm-5.2-4.
Installing iputils-20020927-2.
--More--(4%)

--------------------------
命令:less
功能:文件内容1页以上,可以(用上下方向键,page-up,page-down)上下滚动.
语法:less [文件名]
参数:
退出:按Q或者q
案例:less install.log,在后面变成:
用上下方向键,page-up,page-down)上下滚动,退出按q或者Q.

[root@email root]# less install.log
Installing 429 packages

Installing glibc-common-2.3.2-11.9.
Installing hwdata-0.75-1.
Installing redhat-logos-1.1.12-1.
Installing setup-2.5.25-1.
Installing filesystem-2.2.1-3.
Installing basesystem-8.0-2.
Installing glibc-2.3.2-11.9.
Installing bzip2-libs-1.0.2-8.
Installing chkconfig-1.3.8-1.
Installing cracklib-2.7-21.
Installing db4-4.0.14-20.
Installing e2fsprogs-1.32-6.
Installing elfutils-libelf-0.76-3.
Installing expat-1.95.5-2.
Installing gdbm-1.8.0-20.
Installing glib-1.2.10-10.
Installing glib2-2.2.1-1.
Installing gmp-4.1.2-2.
Installing hdparm-5.2-4.
Installing iputils-20020927-2.
Installing libattr-2.2.0-1.
:
--------------------------
命令:head
功能:查看文件内容第一行到的X行的内容.
语法:less [-n number][文件名]
参数:[-n number]
无:无参数则默认显示10行
-n number:表示文件内容第一行到的number行的内容
退出:按Q或者q
案例:
显示test.c文件内容首行到第3行的内容
[root@email root]# head -n 3 test.c
#include "stdio.h"
int main(){
printf("this is a test with c/n");
--------------------------
命令:tail
功能:查看文件内容最后X行的内容.
语法:tail [-n number][文件名]
参数:参数:[-n number]
无:无参数则默认显示10行
-n number:表示最后X行的内容到的number行的内容
案例:

[root@email test]# tail -n 17 h.c
/*@file:h.c
*complied with linux/gcc
*/
#include "stdio.h"
void showtext();
int main()
{
        showtext();
        return 0;
}
void  showtext()
{printf("this is a test with c");}



4权限设置chown,chgrp,chmod,umask,chattr,lsattr
文件和目录属性

[root@email test]# ls -al
drwxr-xr-x    3 root     root         4096 Oct 25 21:44 .
drwxr-x---    5 root     root         4096 Oct 25 18:14 ..
-rw-r--r--    1 root     root          102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
以上7列分别是如下栏位
<文件属性> <连接数> <文件拥有者> <群组拥有者> <文件容量> <时间> <文件名>
文件属性10个长度,
第1个属性d表示目录,-表示文件,l表示链接文件,b表示接口,c表示串口设备
r=只读权限,w=可写权限,x=执行权限,-=空
第一组,文件拥有者的权限:第2,3,4位表示,如drwxr-xr-x中的就是的第2,3,4就是rwx
第二组,群组拥有者的权限:第5,6,7位表示,如drwxr-xr-x中的就是的第5,6,7就是r-x
第三组,非本群用户的权限:第8,9,10位表示,如drwxr-xr-x中的就是的第8,9,10就是r-x

--------------------------
命令:chgrp [chgrp=change group]
功能:它修改文件或者目录的群组权限
语法:chgrp [群组名称] [文件或者目录]
参数:
群组名称:就是用ls -l显示当前目录内容的第4栏位的群组名称

案例:
案例1:改变文件的群组拥有者为一个组
添加测试需要的新用户或者新群组
添加一些用户,开始测试文件和目录权限命令。
linux添加一个新群组computer:命令groupadd computer
linux添加一个新用户computer:命令useradd jiang,设置密码:命令passwd jiang
到目前为止,除了root,还建立了一个新用户jiang和一个新群computer
computer:表示一个电脑部门
jiang:表示这是一个姓江的职员

[root@email test]# ls -l
total 16
-rw-r--r--    1 root     root          102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
以上说明文件abc.txt的组用户权限是root,
把abc.txt的组权限改为computer组,
[root@email test]# chgrp computer abc.txt
[root@email test]# ls -l
total 16
-rw-r--r--    1 root     computer      102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
这个就是abc.txt的组权限改为computer组
-rw-r--r--    1 root     computer      102 Oct 24 11:50 abc.txt

案例2:改变文件的群组拥有者为一个用户
[root@email test]# ls -l
total 16
-rw-r--r--    1 root     computer      102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
把abc.txt的群组拥有者computer改为jiang
[root@email test]# chgrp jiang abc.txt
[root@email test]# ll
total 16
-rw-r--r--    1 root     jiang         102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test

--------------------------
命令:chown [chown=change owner]
功能:它修改文件或者目录的拥有者的权限
语法:chown [-R] [用户帐号] [文件或者目录]
参数:
-R:表示改变范围包含子目录
群组名称:就是用ls -l显示当前目录内容的第3栏位的拥有者名称

案例1:文件的拥有者root改变为一个用户jiang
现在abc.txt的拥有者是root
[root@email test]# ll abc.txt
-rw-r--r--    1 root     jiang         102 Oct 24 11:50 abc.txt
[root@email test]# chown jiang abc.txt
[root@email test]# ll abc.txt
-rw-r--r--    1 jiang    jiang         102 Oct 24 11:50 abc.txt
现在abc.txt的拥有者是jiang


案例2:目录的拥有者root改变为一个用户jiang
[root@email test]# mkdir abc
[root@email test]# ll
total 20
drwxr-xr-x    2 root     root         4096 Oct 25 23:22 abc
-rw-r--r--    1 jiang    jiang         102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
abc目录的拥有者root改变为一个用户jiang
[root@email test]# chown jiang abc
[root@email test]# ll
total 20
drwxr-xr-x    2 jiang    root         4096 Oct 25 23:22 abc
-rw-r--r--    1 jiang    jiang         102 Oct 24 11:50 abc.txt
-rw-r--r--    1 root     root          169 Oct 25 21:44 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test

--------------------------
命令:chmod (chmod=change modify)
功能:改变文件或者目录的权限
语法:chmod [数值] [文件或者目录]
参数:

1.数字式权限管理方法:

数值:r为4,w为2,x为1,-rwxrwxrwx是3个一组,
拥有权限=owner=rwx
群组权限=group=rwx
其它权限=others=rwx
常见设置列表:
666属性:通常是文本编辑器默认的设置,666=-rw-rw-rw=4+2+0,4+2+0,4+2+0=6,6,6
命令行:chmod 666 <文件名>,例子:chmod 666 abc.txt
777属性:这个文件全部权限已经打开,777=-rwxrwxrwx=4+2+1,4+2+1,4+2+1=7,7,7
命令行:chmod 777 <文件名>,例子:chmod 777 abc.txt
755属性:自己可修改,他人只能运行,755=-rwxr-xr-x=4+2+1,4+1,4+1=7,5,5
命令行:chmod 755 <文件名>,例子:chmod 755 abc.txt
700属性:自己可修改,他人无法访问的私人文件,700=-rwxr-----=4+2+1,0+0+0,0+0+0=7,0,0
命令行:chmod 700 <文件名>,例子:chmod 700 abc.txt
案例:
把abc.txt文件权限-rw-r--r--=644变成-rwxrwxrwx=777
[root@email test]# ll abc.txt
-rw-r--r--    1 jiang    jiang         102 Oct 24 11:50 abc.txt
chmod 777 abc.txt
[root@email test]# ll abc.txt
-rwxrwxrwx    1 jiang    jiang         102 Oct 24 11:50 abc.txt


2.字母式权限管理方法:
三大组别权限分别为u,g,o
u=user,g=group,o=others,a=u+g+o
三大权限分别为r,w,x
r=只读,w=修改,x=执行
三种方式为+,-,=
+为添加,-为移除,=为设定
常见设置列表:
(ugo=rw)==666属性:通常是文本编辑器默认的设置666=(-rw-rw-rw) => (u=rw,g=rw,o=rw) => ugo=rw
命令行:chmod ugo=rw <文件名>,例子:chmod ugo=rw abc.txt
(ugo=rwx)==777属性:这个文件全部权限已经打开,777=-rwxrwxrwx=(u=rwx,g=rwx,o=rwx)=>(ugo=rwx)=>(a=rwx)
命令行:chmod a=rwx <文件名>,例子:chmod a=rwx abc.txt
(u=rwx,go=rx)==755属性:自己可修改,他人只能运行,755=-rwxr-xr-x=(u=rwx,go=rx)
命令行:chmod u=rwx,go=rx <文件名>,例子:chmod u=rwx,go=rx abc.txt
(u=rwx,g-rwx,o-rwx)==700属性:自己可修改,他人无法访问的私人文件,700=-rwx------=(u=rwx,g-rwx,o-rwx)
命令行:chmod u=rwx <文件名>,例子:chmod u=rwx,g-rwx,o-rwx abc.txt
案例:
对abc.txt分别应用666,777,755,700四种常用权限
[root@email test]# ll abc.txt
-rwx------    1 root     root          102 Oct 24 11:50 abc.txt
[root@email test]# chmod a=rw abc.txt
[root@email test]# ll abc.txt
-rw-rw-rw-    1 root     root          102 Oct 24 11:50 abc.txt
chmod u=rwx,g-rwx,o-rwx abc.txt
[root@email test]# ll abc.txt
-rwx------    1 root     root          102 Oct 24 11:50 abc.txt


--------------------------
命令:umask
功能:设置用户建立目录或者建立文件的默认值中需要取消的权限
语法:umask [number]
参数:
number组成[拥有者,群用户,其它者],
数据权限对照4=r只读,2=w写,1=x执行
常见参数清单
0022:表示在原来默认的权限上移除group和other为2的权限,2对应w,也就移除w写的权限,
当你建立一个新的文件和目录时,你自己可读写,其它人只能读取和执行
0002:表示在原来默认的权限上移除other为2的权限,2对应w,也就移除w写的权限
0077:表示在原来默认的权限上移除group和other为7的权限,7对应r+w+x,结果只剩下owner一个人的权限,
当你建立一个新的文件和目录时,owner有rw权限,而其它人看不到的,没有任何权限.
通常的设置为下面002和0022
0002:这表示此文件同群组人员可以修改和执行,而非群组人员只能运行,不能修改.
0022:这表示此文件建立者可以修改和执行,而群组和非群组人员只能运行,不能修改.

案例:
查看当前的值:
[root@email test]# umask
0022
设置当前的值:
[root@email test]# umask 0077
下面演示一下在默认值分别为0002,0022,0077下建立目录权限的不同点
.在0002模式下建立目录t1的权限
[root@email test]# umask 0002
[root@email test]# mkdir t1 //建立新目录t1
[root@email test]# ll
drwxrwxr-x    2 root     root         4096 Oct 26 01:48 t1
分析:0002建立目录的默认权限drwxrwxr-x是把other权限的w权限移除掉啦
[root@email test]# umask 0022
[root@email test]# mkdir t2
[root@email test]# ll
drwxr-xr-x    2 root     root         4096 Oct 26 01:51 t2
分析:0022建立目录的默认权限drwxr-xr-x是把group和other权限的w权限移除掉啦
[root@email test]# umask 0077
[root@email test]# mkdir t3
[root@email test]# ll
drwx------    2 root     root         4096 Oct 26 01:53 t3
分析:0077建立目录的默认权限drwx------是把group和other权限的r+w+x都移除掉啦
--------------------------

文件安全命令chattr,lsattr
命令:chattr =(chage attribe)
功能:设置安全特性限制
语法:chattr [+-=] [参数] [文件或者目录]
参数:[ASacdijsu]
A:文件或者目录的存取时间不可改变
S:把数据同步写入磁盘
a:这个文件数据只能添加不能减少,以控制恶意删除
c:对此文件操作前自动进行压缩
d:当dump执行时,此文件或者目录具有dump功能
i:规定此文件不能被删除,更名,写入或者新增数据

案例:

查看此安全特性,结果是一个都没有设置
[root@email test]# lsattr h.c
------------- h.c
添加特性a,i
[root@email test]# chattr +i +a h.c
[root@email test]# lsattr h.c
----ia------- h.c
当添加此安全特性时,文件内容就无法修改
删除特性a,i
[root@email test]# chattr -a h.c
[root@email test]# lsattr h.c
----i-------- h.c

--------------------------
命令:lsattr =(ls attribe)
功能:显示安全特性限制设置
语法:chattr [参数] [文件或者目录]
参数:[-R -a]
a:把隐藏文件的属性显示出来
R:把子目录一起显示出来


5查找命令which,whereis,locate,find
--------------------------
命令:which
功能:查看日常命令的位置
语法:which [文件名]
参数:无
案例:
查看passwd
[root@email root]# which passwd
/usr/bin/passwd
查看find
[root@email root]# which find
/usr/bin/find
--------------------------
命令:whereis
功能:在linux数据库文件清单中快速查找文件或者目录
语法:whereis [参数] [文件或者目录名称]
参数:[-bmsu]
-b:只找二进制文件
-m:只找manual路径下的文件
-s:只找source源文件
-u:没有说明文档的文件
案例:
查看passwd的位置
root@email root]# whereis -b passwd
passwd: /usr/bin/passwd /etc/passwd /etc/passwd.lock

[root@email root]# whereis -m passwd
passwd: /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz

--------------------------
命令:locate
功能:在文件数据库中查看目录名称的位置
语法:locate [目录名称]
参数:无
案例:
查找mkdir
[root@email root]# locate mkdir
结果:
/usr/lib/perl5/5.8.0/i386-linux-thread-multi/auto/POSIX/mkdir.al
/usr/share/doc/bash-2.05b/loadables/mkdir.c
/usr/share/man/man1/mkdir.1.gz
/usr/share/man/man2/mkdir.2.gz
/usr/X11R6/bin/mkdirhier
/usr/X11R6/man/man1/mkdirhier.1x.gz
/bin/mkdir



6硬盘与设备命令df,du,fsck,fdisk,fdformat,mke2fs,mkbootdisk,mount,umount
--------------------------
命令:df
功能:查看硬盘容量信息
语法:df [-ikm]
参数:
-i:使用i-nodes显示结果
-k:使用KB单位来显示结果
-m:使用MB单位来显示结果

案例:
[root@email root]# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/hda2            2052288   62063 1990225    4% /
/dev/hda1              26104      41   26063    1% /boot
none                   31908       1   31907    1% /dev/shm

[root@email root]# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda2             16152764    950240  14382008   7% /
/dev/hda1               101089      9324     86546  10% /boot
none                    127632         0    127632   0% /dev/shm

[root@email root]# df -m
Filesystem           1M-blocks      Used Available Use% Mounted on
/dev/hda2                15775       928     14045   7% /
/dev/hda1                   99        10        85  10% /boot
none                       125         0       125   0% /dev/shm

--------------------------
命令:du
功能:查看目录磁盘占用信息
语法:df [-abckms] [目录名称]
参数:
-a:列出所有的文件与目录
-b:使用byte单位统计结果
-k:使用KB单位统计结果
-m:使用MB单位统计结果
-c:最后求总计算
-s:只列出求总的结果
案例:
以ll 查看test目录的文件占用信息
[root@email root]# ll test
total 16
-rwx------    1 root     root          102 Oct 26 01:09 abc.txt
-rw-rw-rw-    1 root     root          171 Oct 26 02:53 h.c
-rw-r--r--    1 root     root            8 Oct 25 21:05 main.c
drwxr-xr-x    2 root     root         4096 Oct 24 14:29 test
du -a显示结果:
[root@email root]# du -a test
4       test/abc.txt
4       test/main.c
4       test/h.c
4       test/test
20      test
du -b显示结果:
[root@email root]# du -b test
4096    test/test
20480   test

du -k显示结果:
[root@email root]# du -k test
4       test/test
20      test

du -m显示结果:
[root@email root]# du -m test
1       test/test
1       test
du -sb显示结果:
[root@email root]# du -sb test
20480   test
du -sk显示结果:
[root@email root]# du -sk test
20      test
--------------------------
命令:fdisk
功能:硬盘分区工具
语法:fdisk [-l] [设备名称]
参数:
-l:列出硬盘设备的分区表

案例:
查看分区信息fdisk -l
Disk /dev/hda就是表示硬盘的名称为/dev/hda
[root@email root]# fdisk -l

Disk /dev/hda: 17.1 GB, 17179803648 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device      Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1        13    104391   83  Linux
/dev/hda2            14      2056  16410397+  83  Linux
/dev/hda3          2057      2088    257040   82  Linux swap

如果要为此硬盘重新分区,请注意,分区后,原来的linux操作系统将丢失!
输入fdisk /dev/hda进入分区程序画面,按m显示命令明细
Command (m for help): m
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

Command (m for help):
它和dos的fdisk分区差不多!

--------------------------
命令:fsck
功能:磁盘分区自动修复
语法:fsck [-a] [硬盘分区名称]
参数:
补充:linux必须以root身份,single单人模式启动,
当电脑由于断电,linux系统完全启动时,可以用此方法fsck进行修复
fsck的指令的参数有些不一样,详细使用fsck --help查看参数!

案例:
如果想知道分区名字:
可用df -l查看分区信息

[root@email root]# df -l
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda2             16152764    950200  14382048   7% /
/dev/hda1               101089      9324     86546  10% /boot
none                    127632         0    127632   0% /dev/shm

以上硬盘分区分别是/dev/hda1,/dev/hda2
自动修复硬盘分区/dev/hda1请使用
fsck -p /dev/hda1

--------------------------
命令:mkbootdisk  [make boot disk]
功能:制作linux启动软盘
语法:mkbootdisk --device [软盘名称] [内核版本]
参数:
软盘名称:经常是/dev/fd0
内核版本:经常使用'uname -r'得到内核发布的版本
补充:在制作前,必须保证软盘设备已经加载到linux中!
首先得知道linux的版本,使用uname -r
[root@email root]# uname -r
2.4.20-8

案例:
开始制作启动软盘:
mkbootdisk --device /dev/fd0 'uname -r'
或者是
mkbootdisk --device /dev/fd0 2.4.20-8
--------------------------
命令:fdformat [follpy disk format]
功能:软盘低级格式化
语法:fdformat [设备名称]
参数:
设备名称:常用/dev/fd0
补充:如果是1.44软盘,设备名为/dev/fd0H1440
通常是先用fdformat对软盘进行低格,然后用mke2fs格式化为linux分区格式
案例:
fdformat /dev/fd0H1440
--------------------------
命令:mke2fs
功能:磁盘格式化
语法:mke2fs [-bicLj] [设备名称]
参数:
-b:设定数据块占用容量,值分别有1024,2048,4096三种
-i:设定inode值
-c:在格式化过程中检查磁盘错误
-L:设定扇区label名称
-j:建立有日志管理功能的文件格式

补充:linux必须以root身份,single单人模式启动,
先用fdisk分区,再用mke2fs进行格式
案例:
mke2fs -bj 2048  /dev/hda

--------------------------
命令:mount
功能:加载设备到linux中
语法:mount [-t] [type] [devicename] [mountpoint]
参数:
type:指加载类型
vfat,msdos:这是windows系统的文件格式
nfs,ntfs,ufs:这是windows2000,nt,xp使用的格式
ext,ext2:这是linux文件格式
iso9660:这是光驱使用格式
devicename:指设备名称,有下面几种
软驱:/dev/fd0,光驱: /dev/cdrom,USB:/dev/sda1,硬盘:/dev/hda
mountpoint:指加载点,通常位置为/mnt下面,也可以是其它的地方!


命令:umount
功能:从linux上卸载设备
语法:mount [devicename/mountpoint]
参数:
devicename:软驱:/dev/fd0,光驱: /dev/cdrom,USB:/dev/sda1,硬盘:/dev/hda
mountpoint:指加载点,通常位置为/mnt下面,也可以是其它的地方!
例如:卸载光驱:umount /dev/cdrom 与umount /mnt/cdrom是一样的功能

案例:
1.加载与卸载光驱实验
前提是物理光驱必须存在!
加载光驱:mount /dev/cdrom /mnt/cdrom
卸载光驱:umount /dev/cdrom

加载光驱后,查看光盘内容有一个目录是MYJOB
root@email /]# mount /dev/cdrom /mnt/cdrom
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@email /]# ll /mnt/cdrom
total 2
dr-xr-xr-x    1 root     root         2048 Apr 19  2007 MYJOB

卸载光驱后,内容没有啦,只看到一个total 0
[root@email /]# umount /dev/cdrom
[root@email /]# ll /mnt/cdrom
total 0

2.加载与卸载USB的U盘实验
操作顺序:

A.在/mnt下面建立一个目录usb
操作实例
[root@email /]# mkdir /mnt/usb
[root@email /]# ll /mnt
total 8
drwxr-xr-x    2 root     root         4096 Jun 18  2007 cdrom
drwxr-xr-x    2 root     root         4096 Oct 31 05:22 usb
此时检查到usb无任何文件
[root@email /]# ll /mnt/usb
total 0

B.插入U盘到电脑上USB接口,检查连接OK

C.mount它到/mnt/usb
[root@email /]# mount /dev/sda1 /mnt/usb
[root@email /]# ll /mnt/usb
total 2
dr-xr-xr-x    1 root     root         2048 Apr 19  2005 mycode
显示我的U盘的内容只有一个目录mycode

d.卸载U盘
[root@email /]# umount /dev/sda1
[root@email /]# ll /mnt/usb
total 0

管理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值