/bin/ 存放系统命令的目录,普通用户和超级用户都可以执行。不过放在/bin下的命令在单用户模式下也可以执行
/sbin/保存和系统环境设置相关的命令,只有超级用户可以使用这些命令进行系统环境设置,但是有些命令可以允许普通用户查看(s表示super)
/usr/bin/ 存放系统命令的目录,普通用户和超级用户都可以执行。这些命令和系统启动无关,在单用户模式下不能执行。
/usr/sbin/ 存放根文件系统不必要的系统管理命令,例如多数服务程序。只有超级用户可以使用。
/dev/设备文件保存目录,linux中所有内容都是以文件形式存放的,这个目录就是用来保存所有的硬件设备文件的。
/etc/ 配置文件保存位置。系统内所有采用默认安装方式的服务的配置文件全部保存在这个目录当中,如用户账户和密码,服务的启动脚本,常用服务的配置文件等。
/home/ 普通用户的家目录
/lost+found/当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。这个目录只在每个分区中出现,例如/lost+found/就是根分区的备份恢复目录,/boot/lost+found就是/boot分区的备份恢复目录
/media/ 挂载目录,系统建议是用来挂载媒体设备的,例如软盘和光盘。
/mnt/挂载目录,早期Linux中只有这一个挂载目录,并没有细分。现在这个目录系统建议挂载额外设备,如U盘,移动硬盘和其他操作系统的分区。
/misc/ 挂载目录,系统建议用来挂载NFS服务的共享目录。当然也可以自定义目录,来作为挂载点。
/opt/第三方安装的文件保存位置(现在基本不用了)
/usr/local/ 约定俗成的以此目录来安装第三方软件 存放在内存中
/proc/ 虚拟文件系统,存放有CPU、设备驱动、文件系统列表、网络协议等信息
/root/ 超级用户的家目录
/srv/ 服务数据目录,一些系统服务启动之后,可以在这个目录中保存所需要的数据。
/tmp/临时目录。系统存放临时文件的目录,该目录下所有用户都可以访问和写入。我们建议此目录中不能保存重要数据。
/usr/系统软件资源目录。注意usr不是user的缩写。而是“Unix Software Resource”的缩写,所以不是存放用户数据,而是存放系统软件资源的目录。系统中安装的软件大多数保存在这里。
/var/动态数据保存位置。主要保存缓存、日志以及软件运行所产生的文件。
1.远程服务器不允许关机,只能重启。
2.重启时应该关闭服务。
3.不要在服务器访问高峰运行高负载命令。
4.远程配置防火墙时不要把自己踢出服务器。
5.指定合理的密码规范并定期更新
6.合理分配权限。用户的权限越小越好,系统的服务越少越好。
7.定期备份重要数据和日志。
第1.1节 命令格式与目录处理命令ls
命令格式:命令 [-选项] [参数] --[]表示可选
eg: ls -la /etc
说明:1).个别命令使用不遵守此格式
2).当有多个选项时,可以写在一起
3).简化选项与完整选项
-a 等于 --all
(Linux下的隐藏文件都是以.开头 )
-a --all
-l --long 文件详细信息
1-rw-r--r-- (第一个符号表示类型-表示文件d表示目录l表示软链接)
rw- r-- r--
u所有者 g所属组 o其他人
权限:r读 w写 x执行
2-引用计数 3-所有者 4-所属组 5-大小 6-修改时间 7-文件名
-h 人性化显示(大小默认为字节,使用-h后就可以以单位进行显示,一般和-l一起使用)
文件和用户之间的关系:
1.user所有者(只能有一个)
2.group所属组
3.other其他人
-d 显示目录本身的信息,而不是目录下的内容
-i 显示文件的链接点
第1.2节 目录处理命令
1.mkdir:make directory
/bin/mkdir
执行权限:所有用户
语法 mkdir -p [目录名]
功能:创建新目录
-p 递归创建
也可以同时创建多个目录
2.cd: change directory
shell内置命令
执行权限:所有用户
cd [目录]
功能:切换目录
eg: cd /tmp/test 切换到指定目录
cd .. 回到上一级目录
3.pwd:print working directory
/bin/pwd
所有用户
pwd 显示当前目录
4.rmdir: remove empty directories
/bin/rmdir
所有用户
rmdir[目录名]
功能:删除空目录
5.cp: copy
/bin/cp
权限:所有用户
eg:cp [源文件] [目标目录]
-r 复制目录
-p 复制时保留文件原来的属性
功能:复制文件或目录,
可以同时赋值多个文件:cp [源文件1] [源文件2] [目标目录]
复制的同时可以改名
6.mv:move
/bin/mv
所有用户
eg: mv [原文件或目录] [目标目录]
功能:剪切文件/目录(可以同时改名),重命名
7.rm: remove
/bin/rm
所有用户
eg:rm -rf [文件或目录]
-r 删除目录
-f 强制执行
功能:删除文件
第1.3节 文件处理命令
1.touch
touch [文件名](可以是绝对路径也可以是相对路径)
功能:创建文件
2.cat
/bin/cat
执行权限:所有用户
语法:cat [文件名]
功能:显示文件内容
-n 显示行号
eg:cat /etc/issue
cat -n /etc/services
3.tac 反向显示
4.more
/bin/more
执行权限:所有用户
语法:more [文件名]
空格或f 翻页
Enter 换行
q或Q 退出
功能:分页显示文价内容
4.less
/usr/bin/less
权限:所有用户
语法:less [文件名]
功能:分页显示文件内容(可向上翻页)上键/PageUp键
还可以进行搜索 /关键词 按n找下一个关键词
5.head
/usr/bin/head
权限:所有用户
语法:head [文件名](默认显示前十行)
功能描述:显示文件前面几行
-n 指定行数
eg:$head -n 20 /etc/services
6.tail
/usr/bin/tail
权限:所有用户
语法:tail [文件名]
功能:显示文件后面几行
-n 指定行数
-f 动态显示文件末尾内容(可用来动态显示日志变化)
第1.4节 链接命令
软链接:类似于Windows快捷方式
ln -s [源文件/目录] [软连接文件/目录]
1.lrwxrwxrwx l表示软链接
文件权限都为lrwxrwxrwx
2.文件很小,只是一个符号链接
3./tmp/issue.soft -> /etc/issue
箭头指向源文件
硬连接:
ln [源文件] [硬链接文件]
1.拷贝cp -p + 同步更新(某个文件删除另一个依然存在)
echo "www.baidu.com" >> /etc/issue
2.通过i节点识别 ls -i
3.不能跨分区
4.不能针对目录使用
第2.1节 权限管理命令chmod
change the permissions mode of a file(只有所有者和root可以更改文件/目录的权限)
/bin/chmod
执行权限:所有用户
语法:chmod [{ugoa}{+-=}{rwx}] [文件或目录]
[mode=421] [文件或目录]
-R 递归修改
功能: 改变文件或目录权限
eg:
$ chmod g+w testfile 赋予文件testfile所属组写权限
$ chmod -R 777 testdir 修改目录testfile及其目录下文件为所有用户具有全部权限
文件目录权限总结:
代表字符 权限 对文件的含义 对目录的含义
r 读权限 可以查看文件内容 可以列出目录中的内容
w 写权限 可以修改文件内容 可以在目录中创建、删除文件
x 执行权限 可以执行文件 可以进入目录
第2.2节 其它权限管理命令
1.chown = change file ownership
/bin/chown
执行权限:所有用户
语法:chown [用户] [文件或目录]
功能描述:改变文件或目录的所有者(只有root可以改变一个文件的所有者)
eg: $ chown shenchao fengjie
改变文件fengjie的所有者为shenchao
2.chgrp = change file group ownership
/bin/chgrp
执行权限:所有用户
语法:chgrp [用户组] [文件或目录]
功能描述:改变文件或目录的所属组(只有所有者和root可以更改文件/目录的所属组)
范例:
$ groupadd lamp 创建所属组
$ chgrp lamp fengjie
改变文件fengjie的所属组为lamp
3.umask = the user file-creation mask
所有文件新建后都默认没有可执行权限
Shell内置命令
执行权限:所有用户
语法:umask [-S]
-S 以rwx形式显示新建文件缺省权限
功能描述:显示、设置文件的缺省权限
第3.1节 文件搜索命令find
/bin/find
执行权限:所有用户
find [搜索范围] [匹配条件]
-name 根据文件名查找 *表示任意个字符 ?表示单个字符
-iname 根据文件名忽略大小写查找
-size 根据文件大小查找 数据块是linux中的最小存储单位为512字节 (1KB=2个数据块)
eg: $ find / -size +204800
表示在根目录下查找大于100MB的文件 100MB=102400KB=204800
+n 大于 -n 小于 n等于
-user 根据文件所有者查找
-group 根据文件所属组查找
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
-type 根据类型查找
f 文件 d 目录 l 软连接
-a 两个条件同时满足
$ find /etc -name init* -a -type f
-o 满足任意一个即可
-exec 对搜索结果执行操作
find /etc -name init* -a -type f -exec ls -l {} \;
表示将etc目录下以init开头的文件进行长显示
-ok 与-exec选项功能一致,只是多了一个操作询问
-inum 根据i节点查找
功能:文件搜索
第3.2节 其它文件搜索命令
1.locate
/usr/bin/locate
执行权限:所有用户
语法:locate 文件名
功能:在文件资料库中查找文件
-i 不区分大小写
eg:$ locate inittab
1)updatedb 更新文件资料库
资料库位置:/var/lib/mlocate/mlocate.db
文件资料库不包括/tmp临时目录下的文件,所以即使更新资料库,也无法找到/tmp下的文件
2.which
/usr/bin/which
执行权限:所有用户
语法:which 命令
功能描述:搜索命令所在目录及别名信息
范例:$ which ls
3.whereis
/usr/bin/whereis
执行权限:所有用户
语法:whereis [命令名称]
功能描述:搜索命令所在目录及帮助文档路径,或查找配置文件所在路径
范例:$ whereis ls
1).linux中#开头的行表示注释
4.grep
/bin/grep
执行权限:所有用户
语法:grep [指定字串] [文件]
功能描述:在文件中搜寻字串匹配的行并输出
-i 不区分大小写
-v 排除指定字串
eg:$ grep mysql /root/inittab
第4节 帮助命令
1.man = manual
/usr/bin/man
执行权限:所有用户
语法:man [命令或配置文件]
功能:获得帮助信息
eg: $ man ls
查看ls命令的帮助信息
$ man services
查看配置文件services的帮助信息(查看配置文件的帮助不需要写绝对路径)
1).有的配置文件和命令重名,可以用1表示命令的帮助,5表示配置文件的帮助
eg:$ man 5 passwd
查看配置文件passwd
2.whatis命令:查看命令的作用
3.apropos命令:查看配置文件的作用
4.命令 --help:列出命令的所有选项及用途
1)date命令:显示当前时间
2)info命令:和man类似
5.help命令:
语法:help [命令]
功能:用来查看shell内置命令的用法
第5节 用户管理命令
1.useradd
/usr/sbin/useraddd
执行权限:root
语法:useradd 用户名
功能:添加新用户
eg: $ useradd jindou
2.passwd = password
/usr/bin/passwd
执行权限:所有用户
语法:passwd 用户名
功能:设置用户密码
范例:$ passwd jindou
3.who
/usr/bin/who
执行权限:所有用户
语法:who
功能:查看登陆用户信息
eg: $ who
登陆用户名 登陆终端 tty本地终端 pts远程终端 登陆时间 IP地址
1).uptime命令:表示虚拟机运行的信息
4.w命令
/usr/bin/w
执行权限:所有用户
语法:w
功能:查看登陆用户详细信息
eg:$ w
【09:55:12 up 8:26, 2 users, load average: 0.00, 0.00, 0.00】
【USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT 】
【root :0 - Tue16 ?xdm? 4:00 0.37s /usr/bin/gnome-】
【root pts/1 :0.0 Tue16 0.00s 1.20s 0.01s w 】
解释:
up 8:26 : 表示linux连续运行时间
load average: 0.00, 0.00, 0.00
: 表示系统过去1分钟,5分钟和15分钟的负载情况
IDLE : 表示已空闲时间
PCPU : 表示当前用户当前操作占用cpu的时间
WHAT : 表示执行的操作 -bash表示什么都没执行
JCPU : 表示累计占用cpu时间
第6节 压缩解压命令
1.1 gzip = GNU zip
/bin/gzip
执行权限:所有用户
语法:gzip [文件]
功能:压缩文件
-d 解压
压缩后格式:.gz
注意:只能压缩文件,不能压缩目录,压缩后只保留压缩文件,原文件删除
1.2 gunzip
/bin/gunzip
执行权限:所有用户
语法:gunzip [压缩文件]
功能:解压缩.gz的压缩文件
2 tar
/bin/tar
执行权限:所有用户
语法:tar 选项[-zcf] [压缩后文件名] [目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
功能:打包目录
压缩后文件格式:.tar.gz
tar命令解压缩语法:
-x 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
eg:$tar -zxf Japan.tar.gz
3.1 zip命令
/usr/bin/zip
执行权限:所有用户
语法:zip [-r] [压缩后文件名] [文件或目录]
-r 压缩目录
功能:压缩文件或目录(压缩后源文件依然保留)
压缩后文件格式:.zip
3.2 unzip命令
/usr/bin/unzip
执行权限:所有用户
语法:unzip [压缩文件]
功能:解压.zip的压缩文件
eg: $ unzip test.zip
4.1 bzip2
/usr/bin/bzip2
执行权限:所有用户
语法:bzip2 选项 [-k] [文件]
-k 产生压缩文件后保留源文件
功能描述:压缩文件
压缩后文件格式:.bz2
eg:$ bzip2 -k testdir
$ tar -cjf Japan.tar.bz2 Japan
4.2 bunzip2
/usr/bin/binzip
执行权限:所有用户
语法:bunzip2 选项[-k] [压缩文件]
-k 解压后保留原文件
功能:解压缩
eg: $ bunzip2 -k test.bz2
$ tar -xjf Japan.tar.bz2
【压缩格式 压缩 解压 】
【 .gz gzip gunzip(gzip -d)】
【 .tar tar -cf -xf 】
【 .tar.gz tar -zcf -zxf 】
【 .zip zip -r unzip 】
【 .bz2 bzip2 bunzip2 】
【 .tar.bz2 tar -cjf -xjf 】
第7节 网络命令
1.write
/usr/bin/write
执行权限:所有用户
语法:write 用户名
功能:给用户发信息,以Ctrl+D保存结束
eg:# write linzhiling
2.wall = write all
/usr/bin/wall
执行权限:所有用户
语法:wall [message]
功能:发广播信息
eg:# wall hello everybody!
3.ping
/bin/ping
执行权限:所有用户
语法:ping 选项 IP地址
-c 指定发送次数
功能:测试网络连通性
eg:# ping 192.168.1.123
# ping -c 3 192.168.1.123
4.ifconfig = interface configure
/sbin/ifconfig
执行权限:root
语法:ifconfig 网卡名称 IP地址
功能:查看和设置网卡信息
eg:# ifconfig eth0 192.168.2.5
5.mail
/bin/mail
执行权限:所有用户
语法:mail [用户名]
功能:查看发送电子邮件
eg:# mail root
直接通过邮件序号查看邮件内容
h 查看邮件列表
d [序号] 删除邮件
q 退出
6.last
/usr/bin/last
执行权限:所有用户
语法:last
功能描述:列出目前与过去登入系统的用户信息
eg:# last
7.lastlog
/usr/bin/lastlog
执行权限:所有用户
语法:lastlog
功能:检查某特定用户上次登陆的时间
eg:#lastlog
#lastlog -u 502
8.traceroute
/bin/traceroute
执行权限:所有用户
语法:traceroute
功能描述:显示数据包到主机间的路径
eg:#traceroute www.baidu.com
9.netstat
/bin/netstat
执行权限:所有用户
语法:netstat [选项]
功能:显示网络相关信息
-t TCP协议
-u UDP协议
-l 监听
-r 路由
-n 显示IP地址和端口号
#netstat -tlun 查看本机监听的端口
#netstat -an 查看本机所有的网络连接
#netstat -rn 查看本机路由表
10.setup
/usr/bin/setup
执行权限:root
语法:setup
功能:配置网络
eg:#setup
11.mount
/bin/mount
执行权限:所有用户
命令语法:mount [-t 文件系统] 设备文件名 挂载点
eg:#mount -t iso9660 /dev/sr0 /mnt/cdrom
12.umount 卸载命令
第8节 关机重启命令
1.shutdown命令
# shutdown [选项] 时间
-c : 取消前一个关机命令
-h :关机
-r :重启
2.其它关机命令
# halt
# poweroff
# init 0
3.其它重启命令
# reboot
# init 6
4.系统运行级别
0 关机
1 单用户
2 不完全单用户,不含NFS服务(NFS表示linux、unix系统之间相互传递信息的服务)
3 完全多用户
4 未分配
5 图形界面
6 重启
#cat /etc/inittab 修改系统默认运行级别 id:3:initdefault:
#runlevel 查询系统当前运行级别
5.退出登陆命令
# logout