Linux基础

Linux相关基础知识

网络相关

1:查看防火状态

systemctl status firewalld

service  iptables status

2:暂时关闭防火墙

systemctl stop firewalld

service  iptables stop

3:永久关闭防火墙

systemctl disable firewalld

chkconfig iptables off

4:重启防火墙

systemctl enable firewalld

service iptables restart

5:永久关闭后重启

chkconfig iptables on

6.ifconfig/ipconfig 查看当前所有的网络连接

7. vim /etc/sysconfig/network-scripts/ifcfg-网络名称  修改网络的配置

文件内容说明:

TYPE=Ethernet   接口类型,常见的有ETHERNET(以太网)、Bridge(桥接接口)

BOOTPROTO=dhcp  激活此接口使用什么协议来配置接口属性:dhcp(动态ip),static(静态ip),none(多网口时使用)

DEFROUTE=yes

PEERDNS=yes  如果BOOTPROTO的值为“dhcp”,是否允许dhcp

DNS1:第一DNS服务器指向;若/etc/resolve的配置文件也有,则此处优先

DNS2:备用DNS服务器指向;

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes  是否初始化IPV6,如果不需要设置ipv6,可以把带有ipv6的去掉

IPV6_AUTOCONF=yes  自动配置ipv6

IPV6_DEFROUTE=yes 

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

NAME=ens33  网卡的名称

UUID=0ea5507b-feab-4d8a-b582-e1874ca0bb97  此设备的唯一标识

DEVICE=ens33  此配置文件对应的设备名称

ONBOOT=yes  操作系统启动时,在系统引导过程中,是否激活此接口

IPADDR: 指明IP地址;

NETMASK:子网掩码;CentOS 7支持使用PREFIX以长度方式指明子网掩码;

GATEWAY:默认网关;

USERCTL:是否允许普通用户控制此设备;

8.service network restart 重启网络

9.ifconfig eth0 查看eth0 配置是否正常

10.mii-tool 检查网卡是否启用

11.ifconfig eth0 up 启动eth0网卡

12.ifconfig eth0 down 关闭eth0网卡

8.service NetworkManager stop  关闭网络管理

9.service network status 检查网络服务状态

10.service network statrt 启动网络服务

11.需要对域名进行解析,修改/etc/hosts文件

添加格式如下:

ip地址  域名

修改主机名称

1.临时修改主机名称

hostname 主机名称

2.永久修改主机名称

vi /etc/sysconfig/network

修改文件的内容如下:

NETWORKING=yes

HOSTNAME=hadoop001

在修改完之后,可以使用hostname(或者uname -a)进行验证,是否修改成功

Vim操作

1.创建文件

touch test.txt

vim/vi test.txt

2.文件的操作

i 进入insert模式,可以对文件进行增加删除

gg(:0/:1) 文件的最开头

shift + G (:$  回车)文件末尾

shift + $ 到本行结尾

1$ 当前行的结尾 2$下一行的结尾

shift + ^ 到本行的开头

ESC 切换模式

q 推出  q!强制退出  wq保存并退出    w!强制写

dd 删除一行  ndd删除从当前行的连续几行

/ 查找相应的关键字

yy:复制当前行

nyy:n表示大于1的数字,复制n行

p 粘贴至游标后(下)

P 粘贴至游标前(上)

:u 撤销上一个命令

:s/str1/str2/ 替换当前行第一个 str1 为 str2

:s/str1/str2/g 替换当前行中所有 str1 为 str2

:m,ns/str1/str2/ 替换第 n 行开始到最后一行中每一行的第一个 str1 为 str2

:m,ns/str1/str2/g 替换第 n 行开始到最后一行中所有的 str1 为 str2

:set nu 设置行号

:set nonu 取消行号

将内容写入文件中

echo > file.txt  直接覆盖文件内容

echo >> file.txt  在文件后面中追加内容

echo "file" 输出 file 

echo > file.txt  将一个空字符写入到这个文件中

cat  /dev/null > file.txt 将文件中的内容清空

查看文件内容

cat test.txt 查看全部内容

tac  从最后一行倒序显示内容,并将所有内容输出

more  根据窗口大小,一页一页的现实文件内容

less  和more类似,但其优点可以往前翻页,而且进行可以搜索字符

head  只显示头几行

tail  只显示最后几行

nl    类似于cat -n,显示时输出行号

tailf  类似于tail -f

环境变量

1.别名 alias

系统会将常用的命令进行关联啦,如 ls -l => ll

如果使用别名的话,可以临时使用配置 alias cdrz='cd /root/yishengxiaoyao'

如果想要这个永久生效的话,需要在 /etc/profile里面设置

2.环境变量

全局环境变量:/etc/profile

在修改文件之后,需要使用source /etc/profile

如果想要修改个人的环境变量的话,需要修改

家目录/.bash_profile 或者 家目录/.bashrc

如果需要生效这个文件可以,可以使用source来生效,其他的配置文件可以使用source来生效

切换用户

1.su

su yishengxiaoyao 切换到当前目录的另外一个用户

su - yishengxiaoyao 切换到另外一个目录的家目录

查看历史记录

1.history

查看使用的命令,默认为存储1000条

使用!5 执行历史命令文件中的第5行命令

进程和端口

1.ps -ef|grep 服务 或者 使用 ps -aux|grep 服务

-A 列出所有的行程

-w 显示加宽可以显示较多的资讯

-au 显示较详细的资讯

-aux 显示所有包含其他使用者的行程

au(x) 输出格式 :

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

USER: 行程拥有者

PID: pid

%CPU: 占用的 CPU 使用率

%MEM: 占用的记忆体使用率

VSZ: 占用的虚拟记忆体大小

RSS: 占用的记忆体大小

TTY: 终端的次要装置号码 (minor device number of tty)

STAT: 该行程的状态:

D: 不可中断的静止 (通悸□□缜b进行 I/O 动作)

R: 正在执行中

S: 静止状态

T: 暂停执行

Z: 不存在但暂时无法消除

W: 没有足够的记忆体分页可分配

<: 高优先序的行程

N: 低优先序的行程

L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)

START: 行程开始时间

TIME: 执行的时间

COMMAND:所执行的指令

端口号

netstat -nlp | grep 端口号

可以使用 lsof :端口号 查看端口号是否被占用

查找命令

find / -name "tomcat*"  进行全局搜索 需要有权限

locate java 查找java命令 通过环境变量查找

which java 查找java命令  通过环境变量查找

下载文件

1.wget 在后面输入下载路径

rpm

1.rpm -ivh your-package.rpm 安装软件

2.rpm -e proftpd-1.2.8-1 卸载软件

在安装或者卸载软件依赖时,需要使用 --nodeps参数

3.rpm -qa 将列出所有安装过的包

4.rpm -ql 包名 安装的位置 可以使用which来查找

5.一个rpm包中包含那些文件。

一个没有安装过的软件包,使用rpm -qlp ****.rpm

一个已经安装过的软件包,还可以使用rpm -ql ****.rpm

6.如何获取关于一个软件包的版本,用途等相关信息?

一个没有安装过的软件包,使用rpm -qip ****.rpm

一个已经安装过的软件包,还可以使用rpm -qi ****.rpm

yum

自动搜索最快镜像插件:yum install yum-fastestmirror

安装yum图形窗口插件:yum install yumex

查看可能批量安装的列表:yum grouplist

1.安装

yum install              #全部安装

yum install package1    #安装指定的安装包package1

yum groupinsall group1  #安装程序组group1

2.更新和升级

yum update              #全部更新

yum update package1      #更新指定程序包package1

yum check-update        #检查可更新的程序

yum upgrade package1    #升级指定程序包package1

yum groupupdate group1  #升级程序组group1

3.查找和显示

yum info package1      #显示安装包信息package1

yum list              #显示所有已经安装和可以安装的程序包

yum list package1      #显示指定程序包安装情况package1

yum groupinfo group1  #显示程序组group1信息yum search string 根据关键字string查找安装包

4.删除程序

yum remove  package1  #删除程序包package1

yum groupremove group1            #删除程序组group1

yum deplist package1              #查看程序package1依赖情况

5.清除缓存

yum clean packages      #清除缓存目录下的软件包

yum clean headers        #清除缓存目录下的 headers

yum clean oldheaders    #清除缓存目录下旧的 headers

yum -y install httpd 在安装httpd的时候,直接安装,不需要询问

压缩

1.tar -czvf test.tar.gz test/ 将test文件夹压缩为test.tar.gz

2.tar -zxvf test.tar.gz 解压test.tar.gz这个压缩文件

3.unzip test.zip 解压zip压缩包

4.zip test.zip test/ 将test文件夹进行压缩

磁盘

查看磁盘空间可以使用 df -h

查看文件的大小可以使用 du -h

内存大小可以使用 free -m

负载大小使用 uptime

查看每个进程的资源使用量使用top

screen

screen -S yourname -> 新建一个叫yourname的session

screen -ls -> 列出当前所有的session

screen -r yourname -> 回到yourname这个session

screen -d yourname -> 远程detach某个session

screen -d -r yourname -> 结束当前session并回到yourname这个session

用户组

whoami 查看当前登录用户名

增加用户:useradd -d /usr/username -m username

为用户增加密码:passwd username

新建工作组:groupadd groupname

将用户添加进工作组:usermod -G groupname username

删除用户:userdel username

查看用户相关的命令 ll /usr/sbin/user*

查看用户组相关命令 ll /usr/sbin/group*

存放用户信息:

/etc/passwd  在这个文件中存放着用户的家目录,是否可以登陆:将/home/yishengxiaoyao 修改为/tmp,/bin/bash 改为 /bin/false或者nologin

/etc/shadow

存放组信息:

/etc/group

/etc/gshadow

如果想要知道用户属于的组,可以使用id 用户名 命令查看

查看命令帮助

1.man vim

2.vim --help

修改用户密码

passwd xiaoyao

文件权限

1.常用的linux文件权限:

444 -r--r--r--

600 -rw-------

644 -rw-r--r--

666 -rw-rw-rw-

700 -rwx------

744 -rwxr--r--

755 -rwxr-xr-x

777 -rwxrwxrwx

注:使用ll命令查看文件/文件夹属性时候,一共有10列,第一个小格表示是文件夹或者连接等等

d表示文件夹,l表示连接文件,-表示文件

2.用户分组权限概念

从左至右:

1-3位数字代表文件所有者的权限

4-6位数字代表同组用户的权限

7-9数字代表其他用户的权限

3.数字概念解析

读(r)=4

写(w)=2

执行(x)=1

读+写+执行=4+2+1=7

通过4、2、1的组合,得到以下几种权限:

    0(没有权限)

    4(读取权限)

    5(4+1 | 读取+执行)

    6(4+2 | 读取+写入)

    7(4+2+1 | 读取+写入+执行)

4.rwx字符的概念

以755为例

1-3位7等于4+2+1,rwx,所有者具有读取、写入、执行权限

4-6位5等于4+1+0,r-x,同组用户具有读取、执行权限但没有写入权限

7-9位5,同上,也是r-x,其他用户具有读取、执行权限但没有写入权限

5.对ugoa的理解

ugoa简写的含义:

u user(文件的所有者)

g group(与文件相关联的组)

o other(所有其他用户)

a all(ugo的所有用户)

操作运算符:

operator 含义

+ 为指定的用户类型添加权限

- 为指定的用户类型删除权限

= 设定或重置指定用户类型的权限

chmod 777 file 所有人都可以对文件进行读写操作

chmod +x file.sh 这个文件可以执行

chmod u+x file.sh 当前用户添加执行权限

chmod g+x file.sh 这个组可以添加执行权限

chmod o+x file.sh 其他用户有执行权限

chmod -R  777 file 所有人对这个文件夹中的所有文件都可以操作

6.chown

chown xiaoyao:xiaoyao(用户:用户组) file 修改文件的用户与用户组

chown -R xiaoyao:xiaoyao(用户:用户组) file 修改文件的用户与用户组,进行递归操作子文件

你可能感兴趣的:(Linux基础)