主要内容:https://www.cnblogs.com/pyyu/articles/9355477.html
1 查看系统版本信息:
#查看系统版本信息
cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
#查看内核版本号
uname -r
3.10.0-693.el7.x86_64
#查看系统多少位
uname -m
x86_64
#查看内核所有信息
uname -a
2 查看用户身份权限: id 用户名
3 创建普通用户:
useradd 用户名
passwd 密码
4 切换用户: su - 用户名
- 意味着完全切换到新的用户, 即环境变量信息也变更为新用户的信息
5 删除用户: userdel
-f 强制删除用户, -r 同时删除用户以及家目录
userdel -rf shishi
6 sudo命令: 用来以其他身份执行命令, 预设的身份为root
使用sudo必须编辑/etc/sudoers文件, 必须root才能修改
在编辑sudoers文件的时候:
写入
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
chaoge ALL=(ALL) ALL #允许chaoge在任何地方,执行任何命令
此时普通用户使用 sudo ls /root 命令就可以使用
7 文件和目录权限
权限的定义: 每个文件都有所属的所有者, 和所有组, 并且规定了文件的所有者,所有组以及其他人对文件的, 可读, 可写, 可执行等权限.
对于目录的权限来说, 可读是读取文件列表, 可写是表示在目录内新增,修改,删除文件, 可执行是表示可以进入目录.
-rw-rw-r--. 1 mjj mjj 0 Nov 30 11:31 mjj.py
解读上一句话: 权限第一个字母为文件类型, 后续9个字母, 每3个为一组, 是三种省份的权限(文件拥有者-属主, 文件拥有组-属组, 其他者)
第一个字母: - 表示一般文件 d 表示文件夹 l表示软连接
查看用户权限命令: id 用户名
修改文件权限属性: 修改属主为root chown root pyyu.txt
查看信息: ls -la 简写:ll
修改属组: chgrp root pyyu.txt
修改权限的命令: chmod
chmod [身份] [参数] [文件]u(user) +(添加) g(group) -(减去)o(other) =(赋值)a(all)
例如: 减去属主的写权限: chmod u-w 文件名
权限与数字转换: rwz - 421
例如: 设置属主可读可写可执行, 属组可读可执行, 其他人可读可执行
chmod 755 pyyu.txt
8 软连接
软连接也叫符号链接, 类似于windows的快捷方式
ls -s 目标文件 软连接名
在home目录中建立软连接, 指向/tmp/test.py文件
ls -s /tmp/test.py my_test
9 PS1 变量: linux命令提示符由ps1环境变量控制
[root@oldboy_python ~]# echo $PS1 [\u@\h \W]\$可以自行调整全局变量/etc/profile文件用于永久生效 PS1='[\u@\h \W\t]\$' \d 日期 \H 完整主机名 \h 主机名第一个名字 \t 时间24小时制HHMMSS \T 时间12小时制 \A 时间24小时制HHMM \u 当前用户账号名 \v BASH的版本 \w 完整工作目录 \W 利用basename取得工作目录名 \# 下达的第几个命令 \$ 提示字符,root为#,普通用户为$ PS1 > 变量名 $PS1 > 查看变量内容 PS1=新内容 重新赋值变量赋值,查看 name='chaoge' echo $namePS1显示ip地址 export PS1="[\u@\h `/sbin/ifconfig ens33 | sed -nr 's/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'` \w]\$"
10 文件压缩
tar 参数 压缩文件
-x 解压缩
-f 指定那个文件
-c 压缩
解压缩: tar -xf 压缩文件
打包文件: tar -cf 压缩后的文件地址 tar -cf /home/xiaolaodi.tar 小老弟
11 查看文件端口的命令: netstat -tunlp
12 查看端口号: ps - ef
13 杀死进程: kill
如果一个进程怎么也杀不掉, 就使用kill -9 324
killall 杀死进程以及相关进程信息: killall nginx 一次性杀掉和nigix有关的进程
14 linux防火墙的概念
1) selinux:
a : 如果不关闭防火墙, 很可能后面运行django, nginx, mysql防火墙肯能会阻挡端口流量的出口, 也会阻挡外来请求的入口.
b : selinux: SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,这个功能管理员又爱又恨,大多数生产环境也是关闭的做法,安全手段使用其他方法。
c : 修改配置文件, 永久生效关闭selinux
1.获取selinux状态
getenforce
2.临时关闭selinux,重启后又会生效
setenforce 0
3.永久关闭selinux,写入到selinux配置文件
vim /etc/selinux/config
SELINUX=disabled #更改为这个
4.重启后selinux永久关闭
2) iptables(软件防火墙)
1.查看防火墙规则
iptables -L
2.清空防火墙规则
iptables -F
3.关闭防火墙软件,这个服务永久关闭
systemctl status firewalld #查看防火墙状态
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld#关闭防火墙开机启动
systemctl is-enabled firewalld.service#检查防火墙是否启动
15 修改linux中文显示设置(防止中文乱码)
echo $LANG
修改文件: vim /etc/locale.conf LANG="zh_CN.UTF-8"
读取文件. 使其生效: source /etc/locale.conf
16 显示磁盘空间大小: df -h
17 定时任务: crontab
先设置定时任务: crontab -e
查看定时任务: crontab -l