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

网络工程师学Linux 必须掌握命令

2011-01-13 11:19 691 查看
网络工程师学Linux 必须掌握命令

———用户管理——

1.useradd 添加用户

命令格式 :useradd [选项] 所添加的用户名称

选项 :

- d 添加用户是指定主目录

例: [root@localhost ~]# useradd -d /yema yema (添加yema用

户并指定目录为 /yema)

- e 指定帐户失效时间YYYY-MM-DD

例: [root@localhost ~]# useradd -e 20080808 test (添加yema用户并

指定该用户使用的过期时间为2008年08月08日)

- g 指定用户的初始化组

例: [root@localhost ~]# groupadd cn51 (新建一个名为cn51的组)

[root@localhost ~]# useradd -g cn51 tom (新建tom 用户并加入

cn51 组)

- G 指定用户归属其他的组名

例:[root@localhost ~]# useradd -g cn51 -G root jack (新建tom用户并

加入 cn51 组同时也加入root组)

- M 创建用户时不自动建立用户主目录

例: [root@localhost ~]# useradd haha –M (新建一个haha 用户 并不

允许其在/home自动生成自己的宿主目录)

[root@localhost ~]# cd /home/ (建完后进入/home)

[root@localhost home]# ls (用ls 查看是否自动建立一haha 目录)

1 jack test tom

- u 指定用户的uid

例: [root@localhost home]# useradd -u 800 yema (新建一个uid 为

800 的 yama用户)

- s 指定用户的登陆shell

例: [root@localhost ~]# useradd -s /sbin/nologin 888 新建一用户并指

定其登陆shell 为nologin

- n 建立用户时不建立默认的组

例: [root@localhost ~]# useradd -n 111 建立一111 用户但并不建立111

这个组

2 。 userdel 删除用户

语法:userdel [选项] 系统已有的用户名

- r 删除用户时并同时删除该用户的宿主目录

例: [root@localhost ~]# userdel -r 888

3.passwd 维护用户密码

- d 清空指定用户的密码

例: [root@localhost ~]# passwd -d root

- l 锁定一个用户帐号

例:[root@localhost ~]# passwd -l jack

- u 解除对指定帐号的锁定

例: [root@localhost ~]# passwd -u jack

-w 设置密码过期警告天数

例: [root@localhost ~]# passwd -w 8 root

-I 设置密码过期后等待天数

例: [root@localhost ~]# passwd -w 8 tom (不能设置root 账户)

-n 设置密码最短修改时间

例: [root@localhost ~]# passwd -n 3 root

-x 设置密码有效时间

4. usermod 修改用户账号相关信息

语法: usermod [-选项] 用户名

选项:

-u 修改UID,-o为强制修改

例: [root@localhost ~]# usermod -u 500 -o 888

-g 修改初始组

例: [root@localhost ~]# usermod -g root tom

-L 锁定帐号

例: [root@localhost ~]# usermod -L tom

-U 解除锁定

例: [root@localhost ~]# usermod -U tom

-l 修改登陆名

例: [root@localhost ~]# usermod -l administrator tom

-s 修改用户登陆shell

例: [root@localhost ~]# usermod -s /sbin/nologin yema

5.groupadd 新建组

命令格式: groupadd [-选项] 组名

选项:

- g 手工指定新建组的gid

例:[root@localhost ~]# groupadd -g 510 testgroup

- o 强制指定新建组的gid

例: [root@localhost ~]# groupadd -g 500 -o testgroup

6.groupmod 修改组

命令格式: groupmod [-选项] 组名

选项:

-g 指定gid

例:[root@localhost ~]# groupmod -g 555 testgroup

-n 指定新组名

例:[root@localhost ~]# groupmod -n newgroup testgroup

7 。 groupdel 删除组

例:[root@localhost ~]# groupdel newgroup 注意:删除一个组,只能删

除空组

--------------进程管理-------------------

1.ps 显示进程信息

x: 显示系统进程和当前用户进程

例: [root@localhost ~]# ps -x

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ

PID TTY STAT TIME COMMAND

1 ? S 0:01 init [5]

2 ? SN 0:00 [ksoftirqd/0]

3 ? S< 0:00 [events/0]

4 ? S< 0:00 [khelper]

5 ? S< 0:00 [kacpid]

18 ? S< 0:00 [kblockd/0]

28 ? S 0:00 [pdflush]

ax: 显示所有进程

例:[root@localhost ~]# ps -ax

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ

PID TTY STAT TIME COMMAND

1 ? S 0:01 init [5]

2 ? SN 0:00 [ksoftirqd/0]

3 ? S< 0:00 [events/0]

4 ? S< 0:00 [khelper]

5 ? S< 0:00 [kacpid]

18 ? S< 0:00 [kblockd/0]

28 ? S 0:00 [pdflush]

29 ? S 0:00 [pdflush]

31 ? S< 0:00 [aio/0]

aux:显示所有进程及进程的拥有者

例: [root@localhost ~]# ps -aux

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.2 1996 560 ? S 12:18 0:01 init [5]

root 2 0.0 0.0 0 0 ? SN 12:18 0:00 [ksoftirqd/0]

root 3 0.0 0.0 0 0 ? S< 12:18 0:00 [events/0]

root 4 0.0 0.0 0 0 ? S< 12:18 0:00 [khelper]

root 5 0.0 0.0 0 0 ? S< 12:18 0:00 [kacpid]

root 18 0.0 0.0 0 0 ? S< 12:18 0:00 [kblockd/0]

root 28 0.0 0.0 0 0 ? S 12:18 0:00 [pdflush]

2.Pstree 以树状图显示正在执行的程序

例:[root@localhost ~]# pstree

init-+-acpid

|-anacron

|-atd

|-crond

|-cups-config-dae

|-cupsd

|-dbus-daemon-1

|-events/0-+-aio/0

| |-kacpid

| |-kblockd/0

| |-khelper

| `-2*[pdflush]

|-gdm-binary---gdm-binary-+-X

| `-gdmgreeter

|-gpm

|-hald

|-htt---htt_server

|-khubd

|-2*[kjournald]

|-klogd

|-kseriod

|-ksoftirqd/0

|-kswapd0

|-6*[mingetty]

|-portmap

|-rpc.idmapd

|-rpc.statd

|-scsi_eh_0

|-2*[sendmail]

|-sshd---sshd---bash---pstree

|-syslogd

|-udevd

|-xfs

`-xinetd

3.top 系统性能监视器

命令如:[root@localhost ~]# top 按空格键动态更新按q 键退出

4.kill 终止一个进程

命令如:[root@localhost ~]# kill XXX XXX为系统某个服务的进程号

-9: 强制终止一个进程

命令如:[root@localhost ~]# kill -9 XXX XXX为系统某个服务的进程号

5.hostname 修改主机名

例1 :hostname [root@localhost ~]# hostname 显示主机名

localhost.localdomain

例2 :[root@localhost ~]# hostname yema 修改主机名为yema

6.uname 显示目前的版本等系统讯息

例 :[root@localhost ~]# uname

Linux

7.lsmod 显示当前加载的内核模块

例 : [root@localhost ~]# lsmod

Module Size Used by

parport_pc 24705 1

lp 12077 0

parport 37129 2 parport_pc,lp

autofs4 23237 0

sunrpc 157093 1

8.alias 建立别名

例:[root@localhost ~]# alias 888='ls -l' 此命令意思为给ls –l 这条命令起了个888 别

名 以后我们可以在命令提示符后输入888 就等于我们输入了 ls –l 命令

9.unalias 删除别名

例:[root@localhost ~]# unalias -a 888 -a 表示name 后面跟我们创建过的别名名称

--------------软件包的管理-----------

1 。 RPM最初是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵

循GPL规则且功能强大方便,逐渐受到其他发行版的采用。

rpm命令格式:rpm [-选项] <软件包名>

选项:

-i 安装一个新软件包

-U 升级一个已有软件包,若没有则全新安装

-F 升级一个已有软件包,若没有则放弃安装

-v 显示详细信息

-h 以#号显示安装进度

-e 卸载已安装的rpm包软件,卸载时目标写软件包名+版本号就可以了

--nodeps 安装或卸载软件时不检查依赖关系

--force 强制安装 (如重新安装某个旧版本软件)

示例:

例1 :

[root@localhost ~]# mount /media/cdrom/ 把第二张光盘放入光驱 此条命令是挂载光盘

mount: block device /dev/hdc is write-protected, mounting read-only

[root@localhost ~]# cd /media/cdrom/RedHat/RPMS/ 进入光盘rpm软件包目录

[root@localhost RPMS]# rpm -Uvh httpd-2.0.52-9.ent.i386.rpm 升级安装软件包

warning: httpd-2.0.52-9.ent.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e

Preparing...

(100%########################################### [100%]

package httpd-2.0.52-9.ent is already installed

例二:

[root@localhost RPMS]# rpm -ivh httpd-2.0.52-9.ent.i386.rpm 安装一个新包

warning: httpd-2.0.52-9.ent.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e

Preparing...

(100%########################################### [100%]

package httpd-2.0.52-9.ent is already installed

选项:

-q 可以查询安装的rpm软件包的相关信息,跟上不同的二级选项决定不同的查

询方式

a 显示所有以rpm包安装的软件

i <软件名> 显示已安装软件的详细信息

l <软件名> 显示已安装软件的各文件位置

f <文件名> 查询一个文件属于哪个软件包

示例:

例1 :

[root@localhost RPMS]# rpm -qf /etc/passwd

setup-2.5.37-1.1rpm

例 2 :

[root@localhost RPMS]# rpm -aq |grep samba

samba-common-3.0.10-1.4E

samba-3.0.10-1.4E

system-config-samba-1.2.21-1

samba-client-3.0.10-1.4E

----------------------网络管理--------------------

1 ifconfig 显示 IP 信息

例:[root@localhost RPMS]# ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:16:97:E8

inet addr:192.168.250.250 Bcast:192.168.255.255 Mask:255.255.0.0

inet6 addr: fe80::20c:29ff:fe16:97e8/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:19437 errors:0 dropped:0 overruns:0 frame:0

TX packets:2762 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:1599642 (1.5 MiB) TX bytes:367531 (358.9 KiB)

Interrupt:10 Base address:0x1400

2 。 netconfig 配置网卡

[root@localhost RPMS]# netconfig —〉接下来的对话框选yes —〉在相应位置输入你的正确

信息

3./etc/resolve.conf 文件的修改

例:[root@localhost ~]# vi /etc/resolv.conf

nameserver 10.0.0.1 更改DNS

search example.com 更改DNS后缀

4./etc/sysconfig/network

例:[root@localhost ~]# vi /etc/sysconfig/network

HOSTNAME=linuxos 更改主机名

GATEWAY=10.0.0.1 更改网关

5./etc/sysconfig/network-scripts/ifcfg-* 更改网卡信息

例:[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 设备名称

ONBOOT=yes 是否启用

BOOTPROTO=static 当前状态

IPADDR=192.168.250.250 IP地址

NETMASK=255.255.0.0 子网掩码

GATEWAY=192.168.250.254 网关地址

6.ping 检测主机

例 :[root@localhost ~]# ping 目标主机名称或IP地址 主机名必须是永久的不是临时

更改的

-------------基础指令-----------

1. logout 登出系统 (退出系统命令还有:exit、 Ctrl + d)

2.clear 清屏 (快捷键时 Ctrl+L)

3.su 用户切换

例:[root@localhost ~]# su tom

- :使环境变量和欲转换的用户相同

例:[root@localhost ~]# su - tom

4.date 显示/设定日期时间

例:[root@localhost ~]# date

Sat Mar 5 15:49:06 EST 2005

修改系统时间的格式为:date MMDDhhmmyyyy

例:[root@localhost ~]# date 030417462008

Tue Mar 4 17:46:00 EST 2008

5 。 cal 显示年历或月历

例:显示年历:[root@localhost ~]# cal 2008 

 例:显示月历:[root@localhost ~]# cal 8 2008  显示2008年8月

6.man 查询指令帮助

 man 所要查询的命令

例: [root@localhost ~]# man passwd 查询passwd 命令的帮助

7.ls 就相当于 DOS 的 dir 指令,查看目录、文件列表

命令格式: ls [-选项] [目录或文件]

选项:

-a 显示所有文件,包括隐藏文件

例:[root@localhost ~]# ls -a /etc/ 显示/etc下包括隐藏的所有文件

-l 以长格式显示文件或目录信息

例:[root@localhost ~]# ls -l /etc/

total 3136

-rw-r--r-- 1 root root 15276 Oct 5 2004 a2ps.cfg

-rw-r--r-- 1 root root 2562 Oct 5 2004 a2ps-site.cf

-d 只列出目录

例:[root@localhost ~]# ls -dl /etc/

drwxr-xr-x 75 root root 12288 Mar 5 2005 /etc/

8.touch 创建一个新的空文件

语法:touch 所要创建的文件名

例: [root@localhost ~]# touch 888

9.cp 文件及目录复制命令

命令格式: cp [-选项] <源文件> <目的路径>

选项:

-r 复制整个目录的内容

-i 如果目的地已有同名文件则提示是否覆盖

-f 如果目的地已有同名文件,不提示,强制覆盖

-p 复制完后保持目录的权限值

10.ln 建立文件或目录的链接(软连接、硬连接)

命令格式: ln [-选项] <源文件> <新建连接目标文件>

选项:

-s 只做软连接,可以跨越分区;不带参数表示建立硬连接

11.rm 删除文件或目录

命令格式: rm [-选项] <源文件> <目的路径>

选项:

-i 删除文件或目录的时候提示确认

-r 删除目录

-f 删除文件或目录的时候不提示确认

12.mv 移动文件或目录,更改文件目录名

命令格式: mv [-选项] <源文件> <目的路径>

选项

-i 如果目的地已有同名文件则提示是否覆盖

-f 如果目的地已有同名文件,不提示,强制覆盖

13. cd 切换不同的目录

命令格式: cd <目录名> 绝对路径和相对路径:

示例: cd /boot/grub

cd boot/grub

cd命令中使用特殊含义的目录

cd ~ 回到用户主目录

cd - 回到上一次的目录

cd . 回到当前目录

cd .. 回到上一级目录

14.pwd显示当前目录所在路径

15.mkdir 新建一个目录

命令格式: mkdir [-选项] <目录名>

选项:

-p 建立多级目录

-m 建立目录的时候指定权限

16 。 rmdir 删除目录名,目录必须为空

命令格式: rmdir [-选项] <目录名>

选项:

-p 删除多层目录

-v 删除文件的时候显示信息

17.修改文件的权限值

可以使用3位8进制数表示文件权限对应关系:r=4,w=2,x=1

可以使用字母表示文件归属关系: u=user、g=group、o=other、a=all

增加权限使用+,去掉权限使用-

set位及粘滞位

权限值组合中的第4位数,对应关系:suid=4,sgid=2,粘滞位=1

使用字母表示时对应关系:s=set位,t=粘滞位

set位含义: 设置set位以后,其他用户执行该文件时也会拥有设置该set位用户的对应身

份和权限

粘滞位含义: 设置粘滞位以后,让其他用户无法删除该文件

18.chown 更改文件或目录的拥有者

命令格式: chown [-选项] 用户名:组名 <文件或目录名>

选项

-R 递归,包含其下所有目录、子目录及文件

19.chgrp 更改文件或目录的所属用户组

命令格式: chgrp [-选项] 用户名:组名 <文件或目录名>

选项

-R 递归,包含其下所有目录、子目录及文件

20.cat 查看或连接文件内容

命令格式: cat [-选项] <文件名1> [文件名2] ……

选项:

-b 显示内容时显示行数

-n 显示文件内容时包括所有空行

-s 有多个空行时合并成一个空行显示

21.more 分页显示文件内容(less可以往前翻页)

命令格式: more [-选项] <文件名>

选项:

+数字直接丛给定行数开始显示

-数字 规定每次显示多少行

-s 压缩多个空行

22 。 tail 显示一个文件的末尾几行

命令格式:tail [-选项] <文件名>

选项:

-n <数字> 显示文件末尾指定行数内容,n可以省略

示例:

tail -5 /etc/passwd

23.wc - 统计文件的行、词、字数

24.which

命令格式: which [-选项] <目标文件名>

示例: which ls

25.whereis

命令格式: whereis [-选项] <目标文件名>

选项:

-b  只查找二进制文件

-B <目录>  只在指定的目录下查找二进制文件

-f 不显示文件名前的路径名称

-m 只查找帮助文档文件

-M <目录>  只在指定的目录下查找说明文件

-s 只查找原始代码文件

-S <目录> 只在设置的目录下查找原始代码文件

示例: whereis ls

26.locate (使用updatedb或locate -u命令更新默认数据库)

命令格式: Locate [-选项] <目标文件名>

选项:

-u对整个根目录制作数据库

-e <目录名> 将除指定目录以外所有目录生成数据库

27.gzip 压缩成.gz文件/gunzip 解压.gz文件

命令格式: gzip [-选项] 文件名

选项:

-1 最快压缩速度

-9 最高压缩比例

-r 递归压缩所有指定目录下所有单个文件

-l 显示详细信息

-d 解压缩.gz文件

示例:

gzip -rl ~/MyDocuments

gzip -d MyDocuments.gz

gunzip test.gz

注:

gzip压缩的文件名默认添加.gz扩展名

gzip压缩或解压文件后会缺省删除源文件

gzip只支持对单个文件操作,对目录操作时需结合tar使用

28.bzip2 压缩成.bz2文件/bunzip2解压缩

命令格式:bzip2 [-选项] [文件名]

选项:

-d 解压缩文件

-k 解压后保留原文件

-1 最快压缩速度

-9 最高压缩比例

-s 占用最少内存来压缩

示例:

bzip2 -s install.log

bzip2 -d install.log

bunzip2 -v install.log

29.zip 打包并压缩成.zip文件/unzip解压缩

命令格式: zip [-选项] [文件名.zip] [文件名]

选项:

-d 从压缩文件中删除指定文件

-g 追加指定文件到已有的压缩包中

-u 如果文件比包内的文件新则替换

-r 压缩目录

示例:

zip new1.zip my1.doc

zip -d new1.zip my2.doc

zip -g new1.zip my3.doc

zip -u new1.zip my4*.doc

zip -r new2.zip mydir

unzip new.zip

注:(winrar、winzip均支持.zip格式)

30.tar与gzip/bzip2的结合使用

与gzip结合使用

tar zcvf newtest.tar.gz /home/MyDocuments

tar zxvf newtest.tar.gz -C /home/test/

与bzip2结合使用

tar jcvf newtest.tar.gz /home/MyDocuments

tar jxvf newtest.tar.gz -C /home/test/

31.Shutdown 最基本的关机命令,也是较复杂的关机命令

命令格式: shutdown [-选项] 时间 <提示信息>

选项:

-t< 数字> 延迟指定分钟数时间以后关机

-h 关机后关闭电源

-r 重新启动机器

-f 重新启动的时候跳过磁盘检查

-c 取消将要执行的关机操作

示例:

Shutdown -k now just a kid

Shutdown -h now System shutdown now

32.关机与重启

init

init 0 关机

init 6 重启

reboot 重新启动机器

halt

选项:

-p 关闭机器的时候关闭电源

-w 不做关机操作,只记录日志

poweroff

选项基本与halt相同

-h 关机前将硬盘转入待机模式,清空缓存

34.Fdisk 分割硬盘工具

命令格式: Fdisk [-选项] 分区

注:在真实环境下分区后要执行partprobe命令才会生效

35.Mkfs.ext3 格式化磁盘

命令格式: Mkfs.ext3 [-选项] 分区

注:格式化后的磁盘要自动挂载需把信息写入/etc/fstab文件

36.du 查看文件/文件夹容量大小

命令格式:du [-选项] <文件名或文件夹名>

选项:

-s 只显示目录使用空间的总和

-h 以MB为单位显示容量1MB=1024Bytes

-a 统计所有文件包含子目录

-H 以m为单位显示容量1m=1000Bytes

-c 只计算目录的总用量

示例:

du -sh /etc

37.df 查看指定硬盘分区使用情况

命令格式: df [-选项] <分区>

选项:

-h 以MB为单位显示容量1MB=1024Bytes

-T 列出驱动器的文件类型

示例:

df -h /dev/sda1

df -T /dev/sda1

38.mount 加载设备

命令格式:mount [-t 格式] [设备] [目录]

39 .umount 卸载设备

命令格式:umount [目录名称]

40.cd;eject 弹出光驱

-t 关闭光驱

附件:http://down.51cto.com/data/2357443
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux 职场 休闲