CentOS7学习随笔

CentOS是免费的、开源的、可以重新分发的开源操作系统 [1]  ,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一

https://www.cnblogs.com/whyd/p/11757552.html centos7.4 find命令
https://www.cnblogs.com/whyd/p/11732238.html centos7.4 文件权限

一,centos7系统的七个运行级别和设置默认运行级别:
0 系统停机模式,系统默认运行级别不能设置为0,否则不能正常启动,机器关的
1 单用户模式,root权限,用于系统维护,禁止远程登陆,就像Windows下的安全模式登录
2 多用户模式,没有NFS和网络支持
3 完整的多用户文本模式,有NFS和网络,登陆后进入控制台命令行模式
4 系统未使用,保留一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置
5 图形化模式,登陆后进入图形GUI模式,X Window系统
6 重启模式,默认运行级别不能设为6,否则不能正常启动。运行init 6机器就会重启
进入不同运行级别的方式
[root@node5 ~]# init 0 #关机
[root@node5 ~]# init 3 #进入3级别字符界面
[root@node5 ~]# init 5 #进入5级别图形界面
[root@node5 ~]# init 6 #重启
设置系统默认的运行级别
1.centos7不再使用/etc/inittab文件进行默认的启动级别配置,而使用比sysvinit的运行级更为自由的target替代。第3运行级用multi-user.target替代,第5运行级用graphical.target替代。
设置默认第三启动级别
[root@node5 ~]# systemctl set-default multi-user.target
设置默认第五启动级别
[root@node5 ~]# systemctl set-default graphical.target
[root@node5 ~]# runlevel
3 5 #表示从3级别切换到了5级别
查看当前默认的启动级别
[root@node5 ~]# systemctl get-default
graphical.target
[root@node5 ~]# systemctl get-default
multi-user.target
常用快捷键:
Ctral+Alt+F(1-6)
正确的关机:
数据同步写入磁盘:sync 习惯的关机:shutdown,halt,poweroff 重启动reboot
切换运行级别:init
1.设置计算机10分钟之后关机
[root@node5 ~]# shutdown -h +10
2.指定计算机具体的时间点进行关机
计算机将会在23:30关机
[root@node5 ~]# shutdown -h 23:30
3.设置计算机立即关机
[root@node5 ~]# shutdown -h now
4.设置计算机22:22 以后重启
[root@node5 ~]# shutdown -r 22:22
5.取消计算机关机/重启指令
[root@node5 ~]# shutdown -c
二.使用init关机/重启
1.设置计算机立即关机
[root@node5 ~]# init 0
2.立即重启计算机
[root@node5 ~]# init 6

二,Centos常用的命令:

2.1切换目录

  • ls -d查看目录属性 -l详细信息 -a显示所有文件 -h人性化显示容量
  • cat /proc/memuinfo cat /proc/cpuinfo查看内存CPU
  •   cd 目录 注意:.代表当前目录,..代表上级目录,~ 当前登录用户的家目录,/就是根目录
  •   2.2创建删除文件与文件夹
  •   创建文件 touch a.txt 创建a.txt,在当前目录
  •   创建一个文件夹 mkdir 文件夹
  •   创建多级目录 mkdir -p 文件夹1/文件夹2/文件夹3
  •   删除空白文件夹 rmdir 文件夹
  •   删除非空文件夹 rm -rvf 文件夹
  •   2.3复制
  •   cp 文件 目录
  •   cp 文件 目录/新文件名
  •   2.4 mv
  •   重命名 mv oldFileName newFileName
  •   移动文件mv /目录/movefile /targetFolder
  •   2.5 tail 查看文件内容,从尾部
  •     * -f 跟随查看,动态显示 ctrl+c结束
  •     * -n200 显示行数,n可以省略
  • 2.6 echo 环境变量名 打印环境变的值 例如:echo $JAVA_HOME
  • 2.7 find查找文件
  •   find + 搜索路径+参数+搜索关键字
  •   find /etc -name “*.txt”
  • 2.8 uname -a cat /etc/redhat-release查看centos版本内核信息
  • 2.9 yum list installed | grep docker 查看已安装的包
  • 3.0 yum -y install docker安装包 systemctl start docker启动包 systemctl status docker查看状态
  • systemctl enable docker设置开机自启
  • 3.1 systemctl start firewalld 启动防火墙 systemctl stop firewalld关闭防火墙 systemctl disable firewalld开机防火墙不启动 systemctl status firewalld查看防火墙状态 getenforce查看SELinux状态
  • arch 查看系统架构

which  查看可执行文件的位置。
       whereis 查看文件的位置。 
       locate   配合数据库查看文件位置。
       find   实际搜寻硬盘查询文件名称。
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 
1.命令格式:
which 可执行文件名称 
2.命令功能:
which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
3.命令参数:
-n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p  与-n参数相同,但此处的包括了文件的路径。
-w  指定输出时栏位的宽度。
-V  显示版本信息
4.使用实例:
实例1:查找文件、显示命令路径
命令:
which lsmod
输出:
[root@localhost ~]# which pwd
/bin/pwd
[root@localhost ~]#  which adduser
/usr/sbin/adduser
[root@localhost ~]#
说明:
which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的!
实例2:用 which 去找出 which
命令:
which which
输出:
[root@localhost ~]# which which
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot  --show-tilde'

     /usr/bin/which

[root@localhost ~]#
说明:竟然会有两个 which ,其中一个是 alias 这就是所谓的『命令别名』,意思是输入 which 会等於后面接的那串命令!

man 获取帮助信息
man ls 
man services
help获取shell内置命令的帮助信息
UNIX/Linux文件系统每个文件都有三种时间戳:

访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间。
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间

# find /root/桌面  -atime -2 ls 查看路径/root/桌面最近2天访问时间
# find /root -depth -name nihao 在/root目录里查找nihao文件夹

-size [+|-]#UNIT

常用单位:k, M, G,c(byte),注意大小写敏感

#UNIT: (#-1, #] 如:6k 表示(5k,6k]

-#UNIT:[0,#-1] 如:-6k 表示[0,5k]

+#UNIT:(#,∞) 如:+6k 表示(6k,∞)

find /  -size +10M
-type根据文件类型查找 f文件  d目录   I软连接文件 -inum根据i节点查找

  locate查找文件,基于索引的,linux是在0点自动创建文件索引的,所以新创建的文件,用此方法是搜索不到的,可以通过updatedb命令来更新索引。然后就可以查到了。

pwd显示当前目录 rmdir删除空目录 rm删除文件

rm -rf[文件或目录]
   -r删除目录 
   -f强制执行
rm /tmp/yum.log 删除文件/tmp/yum.log
rm -rf /tmp/japan/longze 删除目录/tmp/japan/longze
touch 命令所在路径:/bin/touch 创建空文件
touch /root/桌面/test.txt  在桌面创建一个test.txt的文件
cat命令所在路径:/bin/cat 显示文件内容 -n是显示行数
cat /-n /etc/services
tac 命令所在路径:/usr/bin/tac 显示文件内容(反向列示)
more 命令所在路径:/bin/more more [文件名]
(空格)或f 翻页
(Enter)换行
 q或Q 退出
less 命令所在路径:/bin/less 分页显示(可上下翻页)
head 显示文件的前面几行 -n指定行数
Linux下cp和scp的详细说明及其他们的区别:
一、说明
cp:是在同一个linux系统上,在不同的目录之间复制文件;
scp:是在不同linux系统之间来回复制文件;
二、cp 用法
单个文件复制:
cp   源文件   目标路径  ~~从原路径复制源文件到目标路径下;如果在目标路劲之后加文件名称和格式意思就是复制过去之后将该文件重命名。
cp /etc/services /root/桌面/test/
cp /etc/services .复制/etc/services到当前目录
多个文件复制:

cp   源文件1  源文件2 源文件3 ...   目标路径  ~~从原路径复制源文件到目标路径下
三、cp 的参数详解

-a 尽可能将源文件状态、权限等资料都照原装予以复制,并且是递归copy

-r 表示递归copy,若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地 

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制
四、scp 的用法

基本语法:scp  [参数] 文件 @IP:/目标路径
scp 文件名  root@远程ip:/路径/ 
例如:[root@localhost test]# scp /root/桌面/test/test1.txt root@192.168.3.113:/root/桌面/
例如:[root@localhost test]# scp -rv /root/桌面/test root@192.168.3.113:/root/桌面/
例如:scp -P 10012 satic_ip.7z root@223.242.26.49:/root/桌面
例如:scp -rv  -P  10013 /www/backup root@183.161.222.108:/root/
把文件传到ip为188.161.222.108端口10013的/root/路径,是整个backup文件夹
scp提供了几个选项  在scp后加就行了 
 -P 大写P 指定端口号 【crawler$ scp -r -P 2222 crawlerzhongwang/ chenpenghui@192.168.18.203:/home/chenpenghui/crawler/】 -r递归 -P指定端口(可以省略)
    -p 拷贝文件的时候保留源文件建立的时间。 
    -q 执行文件拷贝时,不显示任何提示消息。 
    -r 拷贝整个目录   www.2cto.com   
    -v 拷贝文件时,显示提示信息。 
      默认相同档名的档案存在,则在复制前先予以删除再行复制
五、scp参数详解
-1  强制scp命令使用协议ssh1  
-2  强制scp命令使用协议ssh2  
-4  强制scp命令只使用IPv4寻址  
-6  强制scp命令只使用IPv6寻址  
-B  使用批处理模式(传输过程中不询问传输口令或短语)  
-C  允许压缩。(将-C标志传递给ssh,从而打开压缩功能)  
-p 保留原文件的修改时间,访问时间和访问权限。  
-q  不显示传输进度条。  
-r  递归复制整个目录。  
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。   
-c cipher  以cipher将数据传输进行加密,这个选项将直接传递给ssh。   
-F ssh_config  指定一个替代的ssh配置文件,此参数直接传递给ssh。  
-i identity_file  从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。    
-l limit  限定用户所能使用的带宽,以Kbit/s为单位。     
-o ssh_option  如果习惯于使用ssh_config(5)中的参数传递方式,   
-P port  注意是大写的P, port是指定数据传输用到的端口号   
-S program  指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
 
Linux useradd 命令用于建立用户帐号
useradd 可用来建立用户帐号。帐号建好之后,再用 passwd 设定帐号的密码。而可用 userdel 删除帐号。使用 useradd 指令所建立的帐号,实际上是保存在 /etc/passwd 文本文件中
useradd详细了解:https://www.hao0564.com/1708.html
userdel -rf name:删除名称为name的用户


2.8 压缩文件

Centos常用的命令
Centos常用的命令
Linux gzip命令用于压缩文件

gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出".gz"的扩展名
语法:gzip [选项] 压缩(解压缩)的文件名
-c 将输出写到标准输出上,并保留原有文件。
-d 将压缩文件解压。
-l 对每个压缩文件,显示下列字段:
 (1)压缩文件的大小
 (2)未压缩文件的大小
 (3)压缩比
 未压缩文件的名字
-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
-t 测试,检查压缩文件是否完整。
-v 对每一个压缩和解压的文件,显示文件名和压缩比。
-num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6。

注:gzip不能压缩整个目录。可以使用tar先打包,再压缩

例如:
$ tar cf test.tar test/
$ gzip test.tar
或
$ tar czf test.tar.gz test/

目录/home下有文件mm.txt、sort.txt、xx.com。

例1:把/home目录下的每个文件压缩成.gz文件。
  $ cd /home
  $ gzip *
  $ ls
  m.txt.gz sort.txt.gz xx.com.gz

例2:把例1中每个压缩的文件解压,并列出详细的信息。
  $ gzip -dv *
  mm.txt.gz 43.1%-----replaced with mm.txt
  sort.txt.gz 43.1%-----replaced with sort.txt
  xx.com.gz 43.1%-----replaced with xx.com
  $ ls
mm.txt sort.txt xx.com

例3:把解压xx.com.gz。
  $ gzip –d xx.com.gz
  $ ls
  xx.com

例4:详细显示例1中每个压缩的文件的信息,并不解压。
  $ gzip -l *
  compressed uncompr. ratio uncompressed_name
  277        445      43.1% mm.txt
  278        445      43.1% sort.txt
  277        445      43.1% xx.com
  $ ls
  mm.txt.gz sort.txt.gz xx.com.gz

例5:压缩一个tar备份文件,如usr.tar,此时压缩文件的扩展名为.tar.gz
  $ gzip usr.tar
  $ ls
  usr.tar.gz

例6:将sort.txt用最佳的压缩比压缩,并保留原本的档案
    $ gzip -9 -c sort.txt > sort.txt.gz

例7:将sort.txt.gz内容读出来!
$ zcat sort.txt.gz
# 此时屏幕上会显示
sort.txt.gz 解压缩之后的档案内容!!
gzip -d sort.txt.gz 把文件解压
zcat 则是用来读取压缩文件数据内容的指令!假如我们刚刚压缩的档案是一个文字文件, 那么你还记得如何读取文字文件吗?没错!就是使用 cat ,那么读取压缩档呢? 就是使用 zcat 啰!由于 gzip 这个压缩指令主要想要用来取代 compress 的,所以 compress 的压缩档案也可以使用 gzip 来解开喔!同时, zcat 这个指令可以同时读取 compress 与 gzip 的压缩档
linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩
1.命令格式:
tar[必要参数][选择参数][文件] 
2.命令功能:
用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的 
3.命令参数:
必要参数有如下:
-A 新增压缩文件到已存在的压缩
-B 设置区块大小
-c 建立新的压缩文件
-d 记录文件的差别
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性
可选参数如下:
-b 设置区块数目
-C 切换到指定目录
-f 指定压缩文件
--help 显示帮助信息
--version 显示版本信息
liniux tar命令
liniux tar命令

2.10 vim操作:

CentOS7学习随笔
CentOS7学习随笔

一般模式下的快捷操作(默认模式下):

CentOS7学习随笔
CentOS7学习随笔

2.11 网络设置:

  1、ifconfig 查看当前网络配置信息
  2、修改配置文件
    vi /etc/sysconfig/network-scripts/ifcfg-ens33 注意可能文件名不同
  3、重启网络服务 network
注意:centos6与centos7  不同;还有防火墙centos6叫iptables ,centos7叫firewalld

CentOS7学习随笔
CentOS7学习随笔

2.12  管道符命令 grep

  ls  |grep  33      列出包含33的,就是把前面命令的结果,作为grep的输入。

2.13 rpm与yum

  1、安装rpm包

CentOS7学习随笔
CentOS7学习随笔

2、yum安装:

CentOS7学习随笔
CentOS7学习随笔

9 评论

  1. 假设当前登陆用户为 root,则执行 id root 就会得到类似于下面的一段代码:
    uid=1000(root) gid=1001(root)
    则在运行命令中的 PUID 填入 1000,PGID填入 1001。

  2. 1、开放端口
    firewall-cmd –zone=public –add-port=端口/tcp –permanent
    eg:firewall-cmd –zone=public –add-port=端口/tcp –permanent # 开放5672端口

    firewall-cmd –zone=public –remove-port=端口/tcp –permanent
    eg:firewall-cmd –zone=public –remove-port=5672/tcp –permanent #关闭5672端口

    firewall-cmd –reload # 配置立即生效
    2、查看防火墙所有开放的端口
    firewall-cmd –zone=public –list-ports
    3、关闭防火墙
    systemctl stop firewalld.service
    关闭防火墙,安全性自行评估,如果不关闭防火墙,就特别对外开放所需端口。
    4、查看防火墙状态
    firewall-cmd –state
    5、查看监听的端口
    netstat -lnpt
    注意:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools
    6、检查端口被哪个进程占用
    netstat -lnpt |grep 5672
    7、查看进程的详细信息
    ps 6832
    8、中止进程
    kill -9 6832

  3. 查询当前目录总大小可以使用du -sh,其中s代表统计汇总的意思,即只输出一个总和大小。如果只想查看指定目录的总大小,可以使用du -sh 目录名称

留下评论

您的电子邮箱地址不会被公开。 必填项已用*标注