Linux命令
2019-12-30 16:33:12 157 举报
AI智能生成
linux常用命令及基础知识笔记
作者其他创作
大纲/内容
系统命令
系统运行级别
init 数字 系统运行级别
0 关机
1 单用户
2 不完全多用户,不含NFS服务
3 完全多用户
4 未分配
5 图形界面
6 重启
runlevel 查看系统当前运行级别
/etc/initab 配置文件 id:3:initdefault:
关机重启
shutdown关机
shutdown -c 取消关机
shutdown -h 关机
shutdown -r 重启
reboot 重启
不推荐使用的
halt 关机
poweroff
init 0
init 6
logout 注销当前用户
获取帮助
man 帮助命令
/搜索字符
q退出
man -f 命令查看命令有多少级别的帮助
man 5 passwd 查看5级的psswd命令帮助
whatis命令=man -f 命令
help shell内部命令
shell内部命令无法使用man查到帮助
info 命令 获取指定命令的详细帮助文档
回车:进入自帮助页面(带有*号标记)
u: 进入上层页面
n:进入下一个帮助小节
q:退出
系统技巧
命令行翻页 Shif+PageUp
别名
alias 显示系统所有别名
alias rm='rm -i' 设置别名
别名永久有效:~/.bashrc 写入此文件
source .bashrc 立即生效配置文件
否则下次重启时生效
unalias 别名 删除别名
命令执行的生效顺序
1.用绝对路径或相对路径执行的命令
2.顺位执行别名
3.顺位执行Bash的内部命令
4.执行按照$PATH环境变量定义的目录顺序查找
快捷键
CTRL + C 强制终止当前命令
Ctrl + l 清屏
Ctrl + a 光标到行首
Ctrl + e 光标到行尾
Ctrl + u 从光标所在位置删除到行首
Ctrl + z 把命令放入到后台
Ctrl + r 在历史命令中搜索
子主题
历史命令
history [参数] [历史命令保存文件]
-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件中 ~/.bash_history
bash_history 默认保留1000条。更改需要修改配置文件 /etc/profile HISTSIZE=1000
调用历史命令
上下箭头
!n 为history 命令结果中的编号
!!重复上条命令
!字符串 重复执行最后一条以该字串开头的命令
命令补全
tab键补全
如果不唯一的话按两下tab键可以得到提示列表
按tab键可补全路径和命令,也可以查错,要形成习惯
重定向
命令1 -exec 命令2 {}\;
命令1执行的结果,交给命令2逐个执行
例:find /etc -size +20k -a -size -50k -exec ls -lh {}\;
标准输入输出
键盘 /dev/stdin 0
显示器 /dev/stdout 1
显示器 标准错误输出 /dev/stderr 2
输出重定向
>覆盖方式
>>追加方式
有些命令无法保存结果。可先运行 script -a 1.txt
命令 2 >>文件名 将错误结果保存,2 就只标准错误输出 >>两端没有空格,正确的有空格
命令 &>文件 正确错误信息都保存
命令>>文件1 2>>文件2 正确结果放到文件1错误结果放到文件2
命令 >>文件 2>&1
exit 结束重定向
输入重定向
命令<文件 把文件作为命令输入
命令<<标识符 把标识符之间的内容作为命令的输入
管道符
多命令顺序执行
命令1;命令2 分号连接多个命令顺序执行,多个命令间无逻辑关系
命令1 && 命令2 逻辑与,当命令1执行正确时命令2才执行
命令1 || 命令2 当命令1执行错误时命令2才会执行,如果命令1成功了,2不会执行
管道符 |
含义:命令1 的结果输入给命令2进行处理
例: netstat -an | grep ESTABLISHED
例: netstat -an | grep ESTABLISHEN | wc -l
通配符
? *
[abc] 匹配abc中的一个字符,只是一个
[a-z]
[^bcd] ^非
文件操作
cd 进入目录
cd .. 返回上级目录
cd . 返回当前目录
cd ~返回home目录
cd / 返回根目录
cd - 返回上次使用的路径
mkdir
mkdir -p 递归创建
rm
rm -r 删除目录
rm -rf 强制删除目录,不进行任何提示
rmdir 只能删除空目录
ls 文件列表
文本文件操作
grep 搜索文件内的字符串
-v 取反,及不包含目标字符串
-i 忽略大小写
可使用正则表达式
例:grep "size" install.log 在install.log文件内搜索 size字符串
cat 文件名 查看文件
wc 统计文件信息
-c 统计字节数
-w 统计单词数
-l统计行数
VIM文本编辑
VIM的四种模式
正常模式
开关 ESC键
移查删改
:wq 保存并退出
:q!强制退出
子主题
插入模式
开关:i 键
添加文本
可视化模式
开关:v
对一整块区域操作
子主题
查找搜索
locate 查找文件
updatedb 强制更新文件数据库,否则查找不到当前新文件
yum install mlocate 没有安装的话可以安装
/etc/updatedb.conf配置文件
PRUNE_BIND_MOUNTS="yes" 开启搜索限制
PRUNEFS= 搜索时,不搜索的文件系统
PRUNENAMES=不搜索的文件类型
PRUNEPATHS=不搜索的路径
find 查找文件
扫描文件系统,系统开销大
find 搜索范围 搜索条件 搜索时尽量缩小搜索范围
通配符
* 任意内容
?匹配任意一个字符
[] 任意一个中括号内的字符
例:find /root -name "ab[cd]"
参数
-name 按文件名搜索,区分大小写
-iname 按文件名搜,不区分大小写
-user 按照所有者搜索
-nouser 找没有所有者的文件
内核文件
垃圾文件
按时间搜索
find /var/log/ -mtime +10 查找十天前修改的文件
-10 十天内修改 10 十天当天修改的文件 +10 十天前
外来文件 :通过U盘等移动设备导入的其他系统文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
按大小 -size
find /etc -size +20k
+20k +20M -10k 注意千字节兆字节的大小写
不写单位,数值指数据扇区
按i节点
find /root -inum 26242
多条件连接查找条件
-a 条件与 AND
-o 条件或 OR
例:find /etc -size +20k -a -size -50k 查找小于50k大于20k的文件
命令查找
whereis 命令搜索
whereis -b 命令名 只查找执行文件
whereis -m 命令名 只查找帮助文件
whereis 不能查找普通文件
which 命令名
比whereis 还多看到别名
whereis、which 不能查找到shell内置命令,只能查找到外部安装的命令
$PATH 系统环境变量,whereis which 和系统默认调用程序搜索的路径。
压缩解压
zip压缩
如果是目录加参数 -r
unzip 解压缩
gzip 源文件
gzip,gunzip
bzip2
tar打包
-c打包
-v显示过程
-f指定打包后文件名
-x拆包
-z zip格式处理打包或者解包 tar.gz 格式
-j bzip2格式处理打包或解包文件 tar.bz2 格式
例:tar -zcvf jp.tar.gz jp 把目录jp 打包并压缩
挂载 mount
mount 无参数,显示当前挂载
mount -a 依据/etc/fstab 文件内容,自动挂载
挂载流程
先建目录:mkdir /mnt/cdrom
再将设备挂载到目录:mount -t iso9660 /dev/sr0 /mnt/cdrom
编写脚本
Bash
Bash
文件开头第一行:
#!/bin/bash
#!/bin/bash
chmod 755 脚本文件名 为文件附执行权限
执行
./脚本文件名
一些特殊符号
‘’单引号表示字符串
“”双引号中特殊符号都没有特殊含义,但是$ ` \ 是例外,拥有电泳变量的值,引用命令和转义符的特殊含义
`` 反单引号 反引号括起来的是系统命令,在Bash中会先执行它,和$()作用一样
# 注释
$ 调用变量的值。如需要调用变量 aa的值时,$aa的方式得到值
\ 转义符
安装freeradius
1.yum install freeradius
2.yum install freeradius-utils
3.测试
修改配置文件 /etc/raddb/users steve Cleartext-Password:="testing" 取消注释
修改防火墙,打开1812 1813端口
iptables -A INPUT -p udp --dport 1812 -j ACCEPT
iptables -A INPUT -p udp --dport 1813 -j ACCEPT
iptables -A INPUT -p udp --dport 1813 -j ACCEPT
以调试方式启动 radiusd -X
新打开终端,root登录 radtest steve testing localhost 0 testing123
如果输出"Access-Accept packet" 表示成功了,"Access-Reject" 表示失败了
4.安装mariadb yum install mariadb
5.yum install mariadb-server
6.yum install freeradius-mysql
服务
RPM安装服务
chkconfig --list查看服务状态
独立的服务
xinetd后台服务
源代码包服务
一般手工指定路径,一般在/usr/local/目录下
服务等级
init N (N取0-6)
runlevel 看当前运行级别
查看当前运行的程序与服务
ps aux
netstat -tlunp
netstat -an
文件目录
/etc/ 配置文件
/etc/init.d/ 启动脚本位置
/etc/sysconfig/ 初始化环境配置文件位置
/etc/xinetd.conf xinetd的配置文件
/var/ 运行数据
lib 数据
log 日志
网络
配置网卡
文件:/etc/sysconfig/network-scripts/ifcfg-ens32
查看IP地址:ip addr
查看网关:netstat-rn route -n
查看网卡信息:ifconfig
启用,禁用网卡:ifup ifdown
iptables
Netfilter
HookPoint
PRE_ROUTING
INPUT
OUTPUT
FORWARD
POST_ROUTING
iptables 命令调用ip_tables模块,在通过Netfilter模块对hook操作网络协议层
四张表
filter
nat
mangle
raw
五条链
配置文件:/etc/sysconfig/iptables
firewalld
FirewallD 将配置储存在 /usr/lib/firewalld/ 和 /etc/firewalld/ 中的各种 XML 文件里
自由主题
0 条评论
下一页