1. 文件目录
-
/bin
- 是
Binary
的缩写,放着最经常使用的命令
- 是
-
/sbin
s
是Super User
的意思,这里放着系统管理员使用的系统管理程序
-
/home
- 存放普通用户的主目录
- Linux 中每个用户都有自己的目录,一般目录以用户的账号名命名
-
/root
- 该目录为系统管理员的用户主目录
-
/lib
- 系统开机所需要最基本的动态连接共享库,类似
Windows
中的DLL
文件。 - 几乎所有的系统应用程序都需要用到这些共享库
- 系统开机所需要最基本的动态连接共享库,类似
-
/lost+found
- 该目录一般情况下为空,在系统非法关机后就放了一些日志文件
-
/etc
- 所有的系统管理程序所需要的配置文件和子目录
-
/usr
- 用户的许多应用程序和文件都放在这个目录下
- 类似
Program File
目录
-
/boot
- 此目录下存放
Linux
启动的核心文件,包括连接文件以及镜像文件
- 此目录下存放
-
/proc
- 此目录为虚拟目录,是系统内存的映射,可以通过访问此目录来获取系统信息
-
/srv
Service
的缩写,该目录存放一些服务启动后提取的数据
-
/sys
- 系统内核文件
-
/tmp
- 临时文件储存目录
-
/dev
- 类似与
Windows
的设别管理器,将所有硬件以文件形式储存
- 类似与
-
/media
Linux
会自动识别一些设备,如U盘、光驱等等,在识别后,会将这些识别的设备挂载到这个目录下
-
/var
- 该目录下放着不断扩充的文件,我们习惯上将进场修改的文件放在这个目录下,包括各种日志文件
-
/selinux
- SELinux是一种安全子系统,它能控制程序只能访问特定文件
-
/usr/local
- 这是另一个给主机额外安装软件所安装的目录,一般通过编译源码方式安装的程序
-
/opt
- 这是默认给主机安装软件所拜访的目录,默认为空
-
/mnt
- 系统提供该目录是为了让用户临时挂在别的操作系统的,我们可以将外部的存储挂在在
/mnt
上,然后进入该目录查看内容
- 系统提供该目录是为了让用户临时挂在别的操作系统的,我们可以将外部的存储挂在在
2. 系统关机
- 系统关机
shutdown
shutdown -t now
shutdown -t 1
- 重启
reboot
3. 用户管理
-
添加用户
-
useradd #{User_Name}
创建用户时,会同时在
/home
目录下创建用户目录
-
-
设置用户密码
passwd #{Password}
-
查看用户信息
- id #
-
删除用户
userdel #{User_Name}
==> 删除用户,但不删除用户文件userdel #{User_Name}
==> 删除用户,同时删除用户文件
-
用户跳转
su #{User_Name}
-
创建用户组
groupadd #{Group_Name}
-
删除用户组
-
groupdel #{Group_Name}
-
添加用户时直接加上组
useradd -g #{User_Group} #{User_Name}
-
修改用户所在的用户组
usermod -g #{Group_Name} #{User_Name}
-
配置文件
- 用户配置文件(用户信息)
/etc/passwd
- 组配置文件(组信息)
/etc/group
- 口令配置文件(密码和登陆信息,是加密的)
/etc/shadow
- 用户配置文件(用户信息)
4. 实用指令
4.1 系统运行级别
系统运行级别:
- 0:关机
- 1:单用户(找回丢失密码)
- 2:多用户(没有网络服务)
- 3:多用户有网络服务
- 4:系统未使用保留给用户
- 5:图形界面
- 6:系统重启
常用的运行级别为
3
和5
,要修改默认的运行级别可修改文件/etc/inittab
的id:5initdefault:
也可以使用指令
- init 0/1/2/...
可以看到,在CentOS 7.3 中,旧版本的指令已经不再有效,在此文件中加入信息对系统也不会产生任何影响。
原指令 Ctrl + Alt + Delete
将会被 /user/lib/systemd/system/ctrl-alt-del.terget
文件处理。
现在运行的 muti-user.target
对应早期版本的 级别3
现在运行的 graphical.target
对应早期版本的 级别5
若需要查看默认的运行级别,应使用
systemctl get-default
若需要改变默认的运行级别,应使用
systemctl set-default TARGET.target
4.2 帮助指令
-
使用
man
获得指令详细信息man #{COMMAND}
-
使用
help
获得指令详细信息help #{COMMAND}
4.3 文件目录
-
显示当前工作目录的 绝对路径
pwd
-
查看当前目录或者文件信息
ls [#{Option}] [#{Directory_Or_File}]
-a
显示当前目录下所有的文件和目录,包括隐藏文件-l
以列表的方式显示信息- 若要组合使用,可以直接输入
-al
-
切换文件目录
cd #{CONTENT}
/root
使用绝对路径../root
使用相对路径
-
创建目录
mkdir [#{PARA}] #{DIRECTORY}
- -p 允许创建多级目录
-
删除目录
-
rmdir [#{PARA}] #{DIRECTORY}
- 只能删除空目录,当目录下存在内容则无法删除
-
rm -rf #{DIRECTORY}
- 删除目录
-
-
创建空文件
touch #{FILE}...
- 可以一次创建多个文件
-
拷贝
cp [#{Option}] #{SOURCE} #{TARGET}
-r
递归扩散至整个文件夹- 当粘贴时需要股改原有文件时可以在
cp
前加\
来全体覆盖,如\cp -r test hello
-
删除
rm [#{Option}] #{Directory_Or_File}
-r
递归扩散至整个文件夹-f
强制删除不提示
-
移动文件 / 重命名
mv #{Old_File_Name} #{New_File_Name}
- 重命名
mv #{File_Path} #{Target_Path}
- 移动文件
-
查看文件内容
-
cat [#{Option}] #{File}
-n
显示行号| more
分页显示,加在命令的最后段
-
more #{File}
- 以 VI 全屏形式查看所有文本,并自动退出
Ctrl + b
显示上一页内容Ctrl + f
显示下一页内容- 空格翻页
-
less #{File}
- 以 VI 全屏形式查看部分文本,不会自动退出
-
-
输出重定向
>
- 如
echo 'LANG="zh_CN.UTF-8"'> /etc/locale.conf
,覆写文件
- 如
-
追加
>>
-
输出内容到控制台
echo [#{Option}] #{Varible}
echo $PATH
输出环境变量路径gzhi
-
输出文件的开头部分
head [#{Option}] #{File}
- 不加其余指令则是查看文章前十行
head -n 5 #{File}
查看文章前5行内容
-
输出文件的结尾部分
tail [#{Option}] #{File}
- 不加其余指令则是查看文章后十行
tail -n 5 #{File}
查看文章后5行内容tail -f #{File}
实时追踪该文档的所有更新
-
查看执行过的指令
history [#{Number}]
!#{Number}
调用执行过的第多少行指令
4.4 时间日期
- 显示当前时间
date
+ %Y
显示当前年份+ %m
显示当前月份+ %d
显示当前日期date -s #{Time}
设置时间
- 查看日历
cal [#{Option}]
cal #{Year}
显示一年的日历
4.5 搜索与查询
- 查找文件
find #{Search_Range} [#{Option}]
-name
按名字来搜索-user
按用户来搜索-size +20M
按照文件大小来搜索
- 过滤查找
grep [#{Option}] #{String}
-n
显示行号-i
忽略大小写
- 管道符号
|
- 将前一个命令的处理结果传递给豆面的命令处理
4.6 压缩与解压
- 压缩文件
gzip #{File_Name}
- 将文件自动压缩成 *.gz,不保留压缩之前的源文件
gunzip #{File_Name}
- 将压缩文件解压
zip [#{Option}] #{File_Name}
-r
递归压缩文件
unzip [#{Option}] #{Target}
-d
指定解压文件后的存放目录
- 打包
tar[#{Option}] #{File_Name}
- 将文件打包为
*.tar.gz
- 将文件打包为
5. 组管理和权限管理
- 查看文件的所有者
ls -ahl
- 改变文件的所属区域
chown #{User_Name} #{File}
chgrp #{Group_Name} #{File}
文件权限:
- 第一个字符
-
表示普通文件d
表示文件夹l
表示软连接文件c
表示字符设备,如鼠标,键盘b
块文件,如磁盘
- 第二,三个字符
rw
表示可以对文件进行读和写
- 第四、五、六个字符
r--
表示文件所在组的用户对此文件只有读的权限
- 第七、八、九个字符
r--
表示其他组的用户对此文件也只有读的权限
- 用户前的数字
- 如果是文件,表示硬链接的个数
- 如果是目录,表示该目录子目录的个数
- 组后的数字
4096
表示此文件为目录
- 文件前的两个时间
- 表示用户最后修改的时间
- 修改用户文件
6. 磁盘情况查询
- 查询磁盘使用情况
df [#{Option}]
df -l
列出
du -h #{Directory_Path}
查看指定目录的磁盘占用情况,默认为当前目录-s
指定目录占用大小汇总-h
带计量单位-a
含文件-c
列出明细的同时增加汇总值--max-depth=1
指定子目录深度
7.网络配置
- 查看网络配置
ifconfig
(Bash)ipconfig
(PowerShell)
- 通过修改配置文件来指定IP,并且可以连接到外网
/etc/sysconfig/network-csripts/ifcfg-eth0
目录- 在此之前需要将
IP
地址设置为静态的 - 修改后需要重启服务
service network restart
reboot
- 在此之前需要将
8. 进程管理
-
在
Linux
中,每个执行的程序都称为一个进程。每一个进程都会分配一个ID
号,就像Windows
下的PID
-
每一个进程都会对应一个父进程,而这个父进程可以复制多个子进程,例如
www
服务器 -
每个进程都可以以两种方式存在,前台与后台
- 所谓前台进程就是用户目前的屏幕上可以进行操作的
- 后台进程则是实际在执行操作,但是由于屏幕上无法看到的进程,通常使用后台方式执行
-
一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,知道关机才结束
-
查看系统中运行的程序
-
ps [#{Option}]
-a
显示当前中断的所有进程信息-u
以用户形式显示进程信息-x
显示后台进程运行的参数
-
字段 说明 PID 进程标识号 TTY 终端机号 TIME 该进程所消耗 CPU
的时间CMD 正在执行的命令或进程名
-
-
查看进程的父进程
ps -ef
-
终止进程
kill [#{Option}] #{PID}
-9
强制终止
killall #{Process_Name}
服务
- 在
PowerShell
下测试Linux
端口是否可用telnet #{IP} #{Port}
- 给每个服务的各个运行级别设置自启动
chkconfig
chkconfig --list | grep #{Service_Name}
chkconfig #{Service_Name} --list
chkconfig --level #{Level} #{Service_Name} on/off
动态监控进程
- 动态监控进程
top [#{Option}]
-d #{Second}
设置刷新的时间-i
不显示限制或者僵死进程-p #{PID}
指定监控进程k #{PID}
杀死进程
监控网络状况
- 监控网络状态
nestat