这一阵操作虚拟机Linux比较多,一些操作使用也比较频繁,在这里总结一下,方便回顾。

1.获取动态IP

刚装的centos,你可能获取不到动态IP,类似下面的情况:

解决方案:

  1. 首先确定你网卡的名称,使用指令ip addr即可查看。如上图,我的当前网卡名称是 ens33

  2. 修改网卡配置文件:指令 vi /etc/sysconfig/network-scripts/ifcfg-[网卡名称]

  3. 将配置文件中修改两处:BOOTPROTO=dhcpONBOOT=yes。修改后(记得保存)如下:

    BOOTPROTO=dhcp
    DEVICE=eth0
    HWADDR=52:54:00:d2:5a:83
    ONBOOT=yes
    PERSISTENT_DHCLIENT=yes
    TYPE=Ethernet
    USERCTL=no
    
  4. 重启网络服务:systemctl restart network

  5. 再次测试:ip addr,就可以看到动态的IP了

2.如何关闭SELinux

科普:SELinux是一个增强型的Linux,它是一个Linux的一个内核模块,是Linux的一个安全子系统。

具体可以参读:

一文彻底明白linux中的selinux到底是什么 - 知乎 (zhihu.com)

关闭步骤:

  1. 首先查看SELinux的状态是否开启,使用命令:cat /etc/selinux/config

  2. 如果你的SELINUX=enforcing,说明SELinux处于开启状态

  3. SELINUX的值修改为disabled(如下)即可关闭(需要重启机器才能生效,快速重启:shutdown -r now)。

[root@VM-16-12-centos ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

3.防火墙操作

  1. 查看防火墙状态:systemctl status firewalldfirewall-cmd --state

  2. 查看所有开启的端口:firewall-cmd --list-ports

  3. 手动开启端口:firewall-cmd --zone=public --add-port=[端口号]/[tcp或者udp] --permanent

  4. 设置防火墙开机自启:systemctl enable firewalld.service

  5. 查看防火墙是否开机自启:systemctl is-enabled firewalld.service ;echo &?

    [root@VM-16-12-centos ~]# systemctl is-enabled firewalld.service ;echo &?
    enabled
    [1] 27811-bash: ?: 未找到命令
    [1]+  完成                  echo
    
  6. 防火墙重启:systemctl restart firewalld.service

  7. 查看防火墙版本:firewall-cmd --version

  8. 永久关闭防火墙:chkconfig iptables off

4.lsof命令没有找到咋办

有些系统一些命令是没有预先安装的,需要我们手动安装一下,巧用工具yum工具搞定,步骤如下:

  1. 先用yum search [命令] 找一下你需要安装哪个插件和工具,如这里我要找lsof相关的:

  2. 使用yum install [名称] 进行安装

  3. 等安装完成后,就可以使用这个命令了。

  4. (安装其他的命令也同理)

5.vi编辑器设置

vi或者vim是linux里很强大的编辑工具,具体如何使用可以百度一下,这里不详细展开。

下面是一些常用的配置,让你的vi或者vim用起来更加丝滑。

  1. 设置行号显示

    1. 首先打开配置文件:vi ~/.vimrc
    2. 编辑输入set number
    3. 保存退出 (当你下次再打开vi的时候,就会发现显示行号了!)
  2. 设置鼠标控制光标位置
    1. 在当前编辑的文件开启,先切换到命令模式,然后输入set mouse=a,然后回车确认即可,只在本次生效。
    2. 全局配置,编辑~/.vimrc文件,在里面添加一行set mouse=a,保存即可,全局生效。
  3. 如何在docker 容器中安装vi
    1. 很多docker容器里面开始进去是没有安装vi或者vim的,为方便我们在容器内部编辑文件,可以手动安装一下该工具
    2. apt-get update
    3. apt-get install vim
    4. 待安装完即可使用

6.文件权限修改

文件属性信息:

参考:

https://www.cnblogs.com/JZjuechen/p/15689796.html

演示:

权限标示:r-可读,w-可写,x-可执行

权限分配角色:u-文件创建者 g-用户所在组,o-用户组外的其他人

7.文件的打包、压缩、解压

参考学习:tar 解压缩命令详解_追求者2016的博客-CSDN博客_tar

使用系统自带的 tar 工具即可完成文件的压缩与解压。

参数说明:

  • -c: 建立压缩档案
  • -x:解压
  • -t:查看内容
  • -r:向压缩归档文件末尾追加文件
  • -u:更新原压缩包中的文件

可选参数:

  • -z:有gzip属性的
  • -j:有bz2属性的
  • -J:具有xz属性的
  • -Z:有compress属性的
  • -v:显示所有过程
  • -O:将文件解开到标准输出

打包

仅打包,不压缩。

命令:tar -cvf [打包后文件名称] [要打包的文件]

示例:创建两个文件夹,并打包(如果打包全部文件,可以直接用*代替)

[root@VM-16-12-centos demo]# touch d1.txt
[root@VM-16-12-centos demo]# touch d2.java
[root@VM-16-12-centos demo]# ll
总用量 0
-rw-r--r-- 1 root root 0 8月  24 23:31 d1.txt
-rw-r--r-- 1 root root 0 8月  24 23:31 d2.java
[root@VM-16-12-centos demo]# tar -cvf d.tar ./*
./d1.txt
./d2.java
[root@VM-16-12-centos demo]# ls
d1.txt  d2.java  d.tar
[root@VM-16-12-centos demo]# ll
总用量 12
-rw-r--r-- 1 root root     0 8月  24 23:31 d1.txt
-rw-r--r-- 1 root root     0 8月  24 23:31 d2.java
-rw-r--r-- 1 root root 10240 8月  24 23:32 d.tar

压缩

先打包,后压缩。以gzip压缩 在参数f后面的压缩文件名是自己取的,习惯上用tar来做,如果加z参数,则以tar.gz 或tgz来代表gzip压缩过的tar file文件。

命令:tar -zcvf [打包后文件名] [-C] [指定输出父目录] [文件]

示例:

[root@VM-16-12-centos demo]# ls
d1.txt  d2.java
[root@VM-16-12-centos demo]# tar -zcvf d.tar.gz ./*
./d1.txt
./d2.java
[root@VM-16-12-centos demo]# ls
d1.txt  d2.java  d.tar.gz

解压

命令:tar -zxvf [压缩包] [-C] [解压位置]

示例:

[root@VM-16-12-centos demo]# ls
d.tar.gz
[root@VM-16-12-centos demo]# tar -zxvf d.tar.gz
./d1.txt
./d2.java
[root@VM-16-12-centos demo]# ls
d1.txt  d2.java  d.tar.gz
[root@VM-16-12-centos demo]#

避雷=》

tar 的命令参数一定要写完整,否则会出现卡住,无响应的情况。

否则会报错:

8.多节点相ping通

自定义主机名:hostnamectl set-hostname [主机名]

查看主机名:hostname

路径C:\Windows\System32\drivers\etc

末尾添加:192.168.220.128 node1

ping测试:打开cmd,直接ping主机名

问题:

linux =>win ping不通

win => linux 可以ping通

解决:win的防火墙没关 关闭防火墙命令:netsh advfirewall set allprofiles state off

9.yum配置

yum 主要功能是更方便的添加/删除/更新RPM包,自动解决包的依赖性问题,便于管理大量系统的更新问题。

学习参考:

https://baijiahao.baidu.com/s?id=1708418392526536542&wfr=spider&for=pc

原装镜像源:位于/etc/yum.repos.d/CentOS-Base.repo

优质镜像源:

  • http://mirrors.163.com/.help/centos.html
  • https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11Lrn54l

如要修改原镜像源,请:

  1. 将下载的镜像源文件放入/etc/yum.repos.d/目录下
  2. 清除yum缓存:yum clear all
  3. 刷新:yum makecache

补充:

10.神奇的tail

tail用于查看文件的内容

常用参数:

-f:查阅正在改变的日志文件

原使用文档如下:

Print the last 10 lines of each FILE to standard output.
With more than one FILE, precede each with a header giving the file name.
With no FILE, or when FILE is -, read standard input.Mandatory arguments to long options are mandatory for short options too.-c, --bytes=K            output the last K bytes; or use -c +K to outputbytes starting with the Kth of each file-f, --follow[={name|descriptor}]output appended data as the file grows;an absent option argument means 'descriptor'-F                       same as --follow=name --retry-n, --lines=K            output the last K lines, instead of the last 10;or use -n +K to output starting with the Kth--max-unchanged-stats=Nwith --follow=name, reopen a FILE which has notchanged size after N (default 5) iterationsto see if it has been unlinked or renamed(this is the usual case of rotated log files);with inotify, this option is rarely useful--pid=PID            with -f, terminate after process ID, PID dies-q, --quiet, --silent    never output headers giving file names--retry              keep trying to open a file if it is inaccessible-s, --sleep-interval=N   with -f, sleep for approximately N seconds(default 1.0) between iterations;with inotify and --pid=P, check process P atleast once every N seconds-v, --verbose            always output headers giving file names--help            显示此帮助信息并退出--version         显示版本信息并退出

11.后台启动应用

启动命令开头加上nohup,应用就会在后台启动,即使关掉当前窗口,程序依然运行,如要停止服务,找到程序的pid号,使用kill -9 pid号即可。

命令后加 1>/dev/null 2>&1,表示将命令产生的输入和错误都输入到空设备,也就是不输出的意思。其中/dev/null代表空设备。

12.查看我的应用位置

使用whereis + [应用名]即可找到

[root@VM-16-12-centos ~]# whereis nginx
nginx: /usr/bin/nginx
[root@VM-16-12-centos ~]# whereis java
java: /usr/bin/java /usr/share/man/man1/java.1
[root@VM-16-12-centos ~]# where is docker
-bash: where: 未找到命令

13.添加环境变量

临时生效:使用export可以临时添加环境变量,但是当你下次开机的时候它就不在了。如:

export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

永久有效:编辑文件/etc/profile,在里面添加环境变量。(修改后要立即生效,记得运行source /etc/profile即可)

14.虚拟机找不到ip

如果你输入ip addr或者ifconfig没有看到自己网卡下面有对应的IP,尝试下面的步骤:

  1. 关闭NetworkManager,使用命令systemctl stop NetworkManager
  2. 重启网卡,使用命令systemctl restart network
  3. 再次查看IP(不出意外,应该可以看到IP了)

15.运行shell脚本格式有误?

上面的情况报错的原因是文件的换行符不对,你在win上编辑好脚本保存时换行符是CRLF,但在linux上要求换行符是LF,这时候你需要手动更正一下。

方式1:将脚本拖出到win,然后用文本编辑器修改换行符形式,如上图。

方式2:直接在linux里面,使用vi或者vim编辑器打开改文件,然后切换到命令模式,输入命令set ff=unix,回车执行,然后保存退出,即可完成修改。

16.如何启动定时任务

使用自带crontab即可实现。常用操作如下:

  • crontab -l:查看当前用户定时任务列表
  • crontab -e:编辑当前用户的定时任务
  • crontab -r:删除当前用户的定时任务

无论是shell脚本还是python脚本,用它来做定时任务都是很方便的呢。


本次分享到这,觉得不错三连一下哦!

Linux常用操作汇总:内容有点杂,但很实用相关推荐

  1. 史上最全的Linux常用命令汇总①收藏这一篇就够了!(超全,超详细)

    史上最全的Linux常用命令汇总①(超全面!超详细!)收藏这一篇就够了! Linux命令基础 Shell Linux命令分类 Linux命令行的格式 编辑Linux命令行的辅助操作 获取命令帮助的方法 ...

  2. Linux常用命令汇总【思维导图】

    Linux常用命令汇总[文章末尾附有完整常用命令的思维导图,建议收藏] 文章大致分为以下小节 Linux入门 Linux目录结构 VI/VIM编辑器(重点) 网络配置 常用基本命令(重点) 常用命令思 ...

  3. linux基本命令du,Linux常用操作命令汇总

    你还在为不知道Linux常用操作命令汇总而不知所措么?下面来是学习啦小编为大家收集的Linux常用操作命令汇总,欢迎大家阅读: Linux常用操作命令汇总 1.ls 命令 ls以默认方式显示当前目录文 ...

  4. linux常见文件打开,Linux常用操作有哪些? Linux常用操作介绍

    Linux系统,相信很多洞电脑的朋友都知道,也知道怎么使用,但是很多电脑新手可不一定知道的.今天我们就来看看电脑新手需要掌握哪些Linux系统的常用操作.下面,U大侠小编就给大家介绍Linux常用操作 ...

  5. dataframe数据分析常用操作汇总

    dataframe的常用操作汇总 目录 1.建 1 2.读 2 3.存 2 4.阅 2 5.取 2 6.改 4 7.增 4 8.删 5 9.并 5 10.序 7 1.建 创建只有一列的数据框 df = ...

  6. mysql sql 字符串字段保留数字_SQL字符串以及数字常用操作汇总

    SQL字符串以及数字常用操作汇总 更新时间:2013年06月11日 09:05:12   作者: 本篇文章是对SQL字符串以及数字的常用操作进行了详细的总结与分析,需要的朋友参考下 --将字符串中从某 ...

  7. linux 常用命令汇总(面向面试)

    linux 常用命令汇总 个人认为先掌握一些比较常用的,剩下的需要再学 总结了一些面试比较可能会问道的命令 文章目录 linux 常用命令汇总 基础命令 ulimit dos2unix和unix2do ...

  8. linux常用命令汇总

    linux常用命令汇总,以便需要时快速查询 中文释义 相应命令 备注 在文件中查找 grep error catalina.out 在catalina.out文件中查找error信息 重启nginx ...

  9. arcgis select by attributes一次选多个_ArcGIS中属性表的常用操作汇总

    ArcGIS中属性表的常用操作汇总 本篇文章将平时对arcgis属性表的相关操作记录下来,防止忘记.此外,在技术摸索中参考了一些gis大牛的博客和技术分享,我在博客结尾也粘贴了他们的博客地址在此表示感 ...

最新文章

  1. ANGULAR自带指令有哪些?
  2. 【论文解读】深度强化学习基石论文:函数近似的策略梯度方法
  3. poj 1844 数学题
  4. doubango简介
  5. MEDIATR 一个低调的中介者类库
  6. JSP标签中不要省略引号
  7. JAVASCRIPT干了不下四五种工作
  8. 函数【Python】
  9. 软工导论测试代码(归档):设备管理系统
  10. debug HTTP的一个GUI工具NetTool
  11. 整理15款实用javascript富文本编辑器
  12. 常用服务器管理口IP及账号密码(持续更新)
  13. Tomcat 修改网站旁边的小图标
  14. 计算机考试电子表格中计算的公式,WPS文字的表格中进行函数公式计算
  15. 默然日记20150207
  16. [面试]-- Hive面试问题
  17. 中南大学杰出校友_杰出客户服务的10个要点。
  18. 使用PyG (PyTorch Geometric) 实现同质图transductive链路预测任务
  19. 微信小程序遇到的问题及解决办法
  20. 【Codecs系列】X264码率控制总结1——ABR,CQP,CRF

热门文章

  1. 【考研数学一】高等数学做题框架(初步)
  2. RLE行程长度压缩算法
  3. Linux常用网路指令
  4. Java基础知识回顾之三 ----- 封装、继承和多态
  5. 苹果平板计算机音乐,使iPad通过WiFi播放电脑中的音乐
  6. 当领导说要提升能力时,实际上想让你提升什么呢?
  7. 011 - JDK自带的性能监控工具
  8. NBA2K23 手游苹果直装版 手机版ios版下载 ios苹果手机下载
  9. Python matplotlib对中文的支持(Font family [‘sans-serif‘] not found.Falling back to DejaVu Sans)
  10. 高级软件工程第七次作业:LLS战队Alpha敏捷冲刺1