Linux指南
历史
Linux是一款开源、免费且其安全性、稳定性经过长期证明的操作系统。它从Uninx系统,根据开源协议发展而来。目前Linux的主要发行版有乌班图和红帽下的开源版本(Centos)。
指令运行级别
/etc/inittab
/usr/lib/systemd/system
常用的级别是3和5 要修改默认的运行级别修改配置中的id:5:initdefault 这行中的数字
- 关机
- 单用户 找回丢失的密码
- 多用户无网络服务
- 多用户有网络服务 多用
- 系统保留
- 图形界面
- 重启
切换命令级别:
init 级别序号
找回root密码:
1.接触物理机 开机启动 按enter键 按e
2.光标选择在第二行 按e启动编辑内核模式
3.输入空格 1 进入单用户的指令级别
4.按b启动 进入系统之后修改密码。
Linux目录
linux有且只有一个根目录,各个目录存放的内容都是规划好的,linux下一些皆文件。
/bin (/usr/bin /usr/local/bin)
存放指令目录
/sbin (/usr/sbin /usr/local/bin)
s是super user的意思 存放超级管理员命令
/home
存放普通用户的主目录
/root
系统管理员,超级权限者的管理目录
/lib
系统开机需要的最基本动态链接库。几乎所有的应用程序都需要用到这些共享库
/lost+found
非法开机后,存放的一些文件
/etc
系统管理所需的配置文件和子目录 /my.conf
/usr unix system resources
用户程序都放在下面 类似于program file
常用目录操作指令
查看当前的目录的绝对路径
pwd
查看目录
ls -a 隐藏文件 -l 以列表的形式展示
切换目录命令
cd .. 当前目录的上级
cd 回到家目录
创建目录
mkdir -p 创建多级目录 如果不加 -p 会提示找不到目录
删除目录
rmdir -rf 删除目录
创建空文件
touch 文件名称
拷贝命令
cp -r source dest 循环拷贝
\cp 这个会强制覆盖 有覆盖的信息 不会提示了 直接覆盖
删除目录
rm -rf 删除整个目录
移动或重命名文件/文件夹
mv oldfile newfile 重命名
mv 旧目录 新目录 这个是移动
注意:如果发现更改之后有重名的会进行覆盖
其他常用命令
vim的常用指令
vim分为三种模式:
普通模式
编辑模式:i进入,ESC退出
命令行模式::进入,ESC退出
常用快捷键
Cat命令
cat -n 文件名 可读方式显示文件内容同时加入行号
cat -n 文件名 | more 将cat内容交给more | 管道符
more:
空格键 向下翻一页
enter 翻一行
q 离开
ctrl+f 向下滚动一屏
ctrl+b 返回上一屏
= 输出当前行号
:f 输出文件名和当前行的行号
less:
用来分屏显示文件内容,它与more类似。只不过less不是全加载,只会加载需要显示的内容。大文件效率高
空格键 向下翻一页
pagedown 向下翻一页
pageup 向上翻一页
/字符 向下查找字符 n向下查找 N向上查找
?字符 向上查找字符 n向上查找 N向下查找
q 离开
>输出重定向和>>追加指令
ls -l >文件 将ls展示的内容 重定向到文件之中 覆盖写
ls -l >> 将ls展示的内容 追加写入到文件之中
echo "内容">> 追加写入到文件之中
注意:如果文件不存在会创建这个文件
head和tail指令
head -n 5 显示前五行
tail -n 5 显示后五行
tail -f 实时显示
软连接ln
ln -s 原文件或者目录 软链接名
例:ln -s /root myroot 当前目录下创建一个软连接名字myroot到root
history显示历史指令命令
history 查看所有指令
history 10 查看最近的10条
!指令编号 执行对应编号的指令
日期
date 显示当前时间
date+%Y 显示年份
date "+%Y-%m-%d %H:%M:%S" 显示年月日
date -s “2021-08-09 10:11:23” 设置当前日期
搜索查找
find
find 搜索范围 参数 内容
例:find /home -name test.txt 在home目录下查找名字为test的目录
例:find / -size +20M 根目录下查找size大于20的 -小于 不写就是等于
例:find /home -user test.txt 查找属于user用户的test文件
注:文件名可以使用通配符
locate 指令
使用locate数据库快速定位文件位置
updatedb 首先更新下locate库
locate 文件名字
grep指令和管道符
grep
-n 显示行号
-i 忽略大小写
压缩和解压缩
gip gungip
zip unzip
tar
压缩文件
tar -zcvf abc.tgz abc.txt
解压文件
tar -zxvf abc.tgz
用户和组管理
/home 用户登陆之后自动跳转到家目录
用户
1.创建用户
useradd -d 指定家目录 用户名
2.设定密码/修改密码
passwd 用户
3.删除用户
userdel 用户名
userdel -r 用户名 删除用户且不保留主目录
4.查询用户信息
id 用户名
切换用户 【su - 用户名】
离开切换回去 【exit】
注:低权限到高权限需要输入密码。高权限到低权限不需要密码
组
1.添加组
groupadd 组名
2.删除组
groupdel 组名
3.创建用户时指定组
User add -g 组名 用户名
4.修改用户组
usermod -g 用户组 用户名
用户和组相关的配置文件
/etc/passwd 存放用户
用户名:口令:用户标识号:组标识号:注释性描述:家目录:登陆shell
/etc/group 存放组
组名:口令:组标识号:组内用户列表
/etc/shadow 存放的用户登陆密码
更改文件所属用户和组
ls -ahl 可以查看文件或文件夹所属的用户和用户组
chown 用户名 文件名 更改文件所属的用户
权限的管理
权限详细解释
-rw-r–r--
指令解释:
-
代表文件类型。
-
文件所有者权限
-
文件所在组的用户
-
其他组
文件类型分为三类:
-
-:普通文件
-
l:链接
-
c:字符设备
-
d:目录
-
b:块文件,硬盘
权限分为三类:
- r 可读
- w 可写
- x 可执行
rwx 作用到文件
r 可读
w 可写但是不一定能删除,删除的前提是拥有目录的写权限
x 可以执行
rwx 作用到目录
r 可读
w 创建修改删除重命名
x 可以执行
rwx可用数字表示为4 2 1
ls -l
权限信息:目录数:所属用户:所属组:大小(目录是4096):修改日期
权限的管理
chmod权限管理
第一种方式:+、-、=更改权限
u:所有者 g:代表组 o:其他人 a:代表所有
Chmod u+x 文件 给文件的所有者增加x权限
chmod u=rwx,g=r 给文件的所有者增加所有权限 组成员r权限
第二种方式使用数字:
chmod 777
chown 修改文件所有者
chown -R 用户 文件 循环更改文件所属者为用户
chgrp 修改文件的所属组
chgrp -R 组 文件夹
进程模块
基本命令
ps
-a 显示终端的所有进程信息
-u 以用户的格式显示进程信息
-x 显示后台进程的运行参数
-e 显示所有进程
-f 全格式
user 用户
pid 进程号
VSZ 虚拟内存占用 kb
RSS 物理内存占用
TTY 使用的终端
STAT 状态 s休眠 r运行
START 状态开始的时间
TIME 占用cpu总时间
COMMAND 初始时用的命令
ps -aux | grep java
//可以查看父进程
ps -ef |
关闭进程
kill 选项 进程号
killall 进程名称(通配符) 停掉归属这个进程名的所有进程
//踢掉非法登陆用户
ps -aux | grep 用户名
//终止ssd服务
kill 掉远程登录进程
//
查看进程树
pstree
-p 显示进程的ID
-u 显示用户
服务管理
chkconfig --list
查看各个级别下服务的自启动
netstat -anp | grep java
监控网络
top 监控硬件信息
按下u 输入用户 是查找用户
按下k 输入PID 是停掉进程