【Linux】常用的系统优化命令

#网卡配置文件

网络配置文件:
/etc/sysconfig/network

网络接口配置文件:
/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME       #用ifconfig命令查看网卡的名字
DEVICE=: 关联的设备名称,要与文件名的后半部“INTERFACE_NAME”保持一致; 
BOOTPROTO={static|none|dhcp|bootp}: 引导协议;要使用静态地址,使用static或none;dhcp表示使用DHCP服务器获取地址;
IPADDR=: IP地址
NETMASK=:子网掩码
GATEWAY=:设定默认网关;
ONBOOT=:开机时是否自动激活此网络接口;
HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;
USERCTL={yes|no}: 是否允许普通用户控制此接口;
PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定的DNS地址;

#如果你电脑上没有 ifconfig命令,只有 ip addr命令

yum install net-tools  -y  

#启动/关闭一块网卡

ifup eth0       #eth0为网卡名,可通过ifconfig命令获取
ifdown eth0

#查看系统版本信息

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

#更改主机名

hostnamectl set-hostname xxxx      #默认本地主机名为localhost

#linux用户篇

#id 命令查看用户的uid ,系统管理员root的uid为0,系统用户UID为1~999    Linux安装的服务程序都会创建独有的用户负责运行。
普通用户UID从1000开始:由管理员创建


#添加用户
useradd oldboy 
#设置密码       
passwd redhat

#root用户可以修改其他所有人的密码,且不需要验证

#切换用户
su命令可以切换用户身份的需求,
su - username

su命令中间的-号很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息

/etc/passwd  用户账号信息
/etc/shadow  存放用户密码
/etc/group  存放用户组

userdel删除用户
-f     强制删除用户
-r    同事删除用户以及家目录
userdel -r xxx(xxx为用户名) 

#文件,文件夹的权限

通过 ls -l  /tmp/* 去查看文件 文件夹所有权限
drwx------. 2 root root       6 Nov  8 19:05 vmware-root
-rw-r--r--. 1 root root 1977763 Nov  8 22:17 xiaobo.gif

更改用户属主
语法
chown  用户名  file
更改用户属组
chgrp  组名  file

#修改权限
方法1
chmod u-w pyyu.txt
方法2
chmod 700 pyyu.txt

#sudo命令

sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。

#sudo命令使用的前提
visudo 编辑sudoers文件
visudo /etc/sudoers
写入
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
chaoge  ALL=(ALL)       ALL   #允许chaoge在任何地方,执行任何命令

此时切换chaoge用户
#su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。
su - chaoge
已经可以使用sudo ls /root 命令

#软连接

建立软连接
ln -s /tmp/test.txt my_test
通过软连接查看文件
cat my_test

my_test只是/tmp/test.txt的一个别名,因此删除my_test不会影响/tmp/test.txt,但是删除了本尊,
快捷方式就无意义不存在了

#PS1变量

用于控制命令提示符
[root@s12_linux bin]#PS1='[\u@\h \W]\$'
但是!你这个操作,重启丢失
怎么办呢?写入到系统的配置文件,每次登陆都加载
写入到/etc/profile这个用户配置文件里
vim /etc/profile  #打开文件,到最底行,写入变量赋值
PS1='[\u@\h \w \t]\$'

#tar解压缩命令

tar -zxvf Python-3.7.0b3.tgz #解压

tar -czvf oldboy.txt.tar.gz oldboy.txt #压缩oldboy.txt  
上述命令等于 tar -cvf oldboy.tar oldboy.txt
        gzip oldboy.tar
  
tar -cf all_pic.tar *.jpg #压缩当前目录所有jpg结尾的文件

tar -xjf xx.tar.bz2  #解压缩bz2结尾的文件

#查看网络端口的命令

netstat -tunlp
#过滤3306端口
netstat -tunlp | grep 3306

#ps命令 查看系统中的进程状态

ps  命令常用参数
-a     显示所有进程
-u     用户以及其他详细信息
-x    显示没有控制终端的进程


ps -ef|grep python 
ps -ef|grep mysql
ps -ef|grep nginx
ps -ef|grep redis

#kill命令

杀死进程的命令
  1.通过ps -ef找到你想杀死的进程
  然后观察pid号
  用户名    pid                                     进程执行命令
  root      33588  22560  0 13:55 pts/0    00:00:00 vim pwd.txt
  
  2.通过kill命令杀死pid
  kill 33588
  
  3.如果遇见杀不死的恶心进程
  -9 是发给kill命令的一个信号,强制杀死信号
  kill -9 33588

#killall命令

killall命令
一次性杀死多个有依赖的进程
比如nginx会启动多个nginx的子进程
如果是这样的多个进程,使用kill杀死就比较麻烦,通过killall指令
killall nginx  一次性杀死nginx的所有进程

root      6878  22560  0 13:55 pts/0    00:00:00 nginx 
root      6834  22560  0 13:55 pts/0    00:00:00 nginx
root      6823  22560  0 13:55 pts/0    00:00:00 nginx
root      6234  22560  0 13:55 pts/0    00:00:00 nginx

#man 帮助手册

用于查询linux命令的详细文档
man ls 
man kill 

#防火墙

selinux
linux内置防火墙

iptables
linux软件防火墙

firewalld
linux软件防火墙

关闭selinux
1.通过修改配置文件,然后重启机器,可以永久关闭selinux防火墙
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

2.临时关闭selinux,不需要重启机器,重启后失效
 (1).先获取selinux状态
           getenforce
 (2).临时关闭selinux
           setenforce 0
   
关闭iptables
1.查看iptables规则
iptables -L
2.清空iptables规则
iptables -F
3.关闭iptables服务
systemctl stop firewalld

centos7默认已经使用firewall作为防火墙了
1.关闭防火墙
systemctl status firewalld #查看防火墙状态
systemctl stop firewalld    #关闭防火墙
systemctl disable firewalld#关闭防火墙开机启动
systemctl is-enabled firewalld.service#检查防火墙是否启动

#linux中文设置

linux中文设置:
1.查看linux当前的字符集
echo $LANG
2.永久生效,更改字符集,写入配置文件
vim /etc/locale.conf
LANG="zh_CN.UTF-8"
3.使得配置文件生效
source /etc/locale.conf
4.保证客户端软件编码和linux一致
xshell  utf8 
centos utf8

#查看磁盘使用量

df -h

#以树装图显示文档目录结构

tree 

#通过nslookup解析域名

nslookup pythonav.cn

#linux计划任务crontab

#每月的1,10,22日的4:45重启nginx
45    4   1,10,22 * * /opt/nginx/sbin/nginx -s reload

你可能感兴趣的:(Linux)