Linux配置及指令

[TOC]

一、linux中常用软件的安装

yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop iftop iotop unzip telnet sl psmisc nethogs glances bc

二、主机名和网络

1、修改主机名

 hostnamectl set-hostname py3

2、设置网络

# 1.进入配置
vim /etc/hosts
# 2.光标移到最后一行
o
# 3.输入ip地址和主机名
10.0.0.100 py3
# 4.按Esc,冒号:wq,保存并退出

.png)

三、关闭防火墙

1、检查防火墙是否开启

iptables -L

2、清除策略

iptables -F

3、永久关闭第一个防火墙

systemctl disable firewalld

4、关闭第二个防火墙

# 1.查看防火墙
getenforce
# 2.临时关闭防火墙
setenforce 0
# 3.永久关闭,进入配置
vim /etc/selinux/config
# 4.修改配置,保存并退出
SELINUX = disabled

.png)

四、Linux命令

1、命令组成

命令体 			选项				参数(对象,文件)
ls -l /var

2、文件的分类

d :目录
f :普通文件
l :链接
b :块设备,磁盘 光驱
c :字符设备
p :管道
s :套接字

3、命令提示符

[root@oldboy ~]#        # '#'表示超级管理员用户
[oldguo@oldboy ~]$ # '$'表示普通用户

4、常用快捷键

ctrl + c	 # cancel 取消当前的操作
ctrl + l # (小写字母L) clear(命令),清空当面屏幕
ctrl + d # 退出当前用户
ctrl + r # 查找(历史命令)。 history|grep
[TAB]:
1.命令补全
2.参数补全
ctrl + a # 把光标移动到行首
ctrl + e # 把光标移动到行尾
ctrl+ u # 把光标到行首的内容删除/剪切
ctrl + y # 粘贴
delete # 光标所在处从前往后删除内容
ctrl + k # 把光标到行尾的内容删除/剪切
ctrl + → # 向右移动一个单词
ctrl + ← # 向左移动一个单词
ctrl + s # 锁屏
ctrl + q # 解锁

5、查看帮助

man ls      # 手册,查看ls的手册
ls --help # 简要手册
info ls # 查看详细的ls的手册

6、关机重启

shutdown -r n    # n分钟以后重启
shutdown -h n # n分钟以后关机
shutdown -r now # 立即重启
shutdown -c # 取消关机重启 # 常用关机重启命令
reboot # 重启
poweroff # 关机

五、linux管理命令

1、普通文件及目录的命令

ls
pwd
cd
tree
mkdir
touch
cp
mv
rm

2、目录

  • 绝对路径:从"/"开始一个具体路径
  • 相对路径:从当前目录开始的具体路径( pwd 可以查看当前所在目录)
# 1.创建目录
mkdir /oldboy # 在根目录下创建oldboy目录,利用绝对路径创建
mkdir old # 在当前目录下创建old目录,利用相对路径创建
mkdir -p a/b/c # 创建多层目录,创建a,a下的b,b下的c
mkdir a b c # 同时创建a、b、c
mkdir a{1..10} # 批量创建a1~a10目录 # 2.查询目录
ls -ld /oldboy # 查看oldboy目录是否存在,并查看其详细信息
ls -ld a b c # 同时查看a、b、c
tree /a # 查看多层目录,查看a下的所有目录,会以树状图的形式展示
tree -L 2 / # 查看根目录下的两次目录,如果是3,表示查看3层目录
ls -ld dir* # 产看以dir开头的所有文件 # 3.删除目录(慎用)
rm -rf /oldboy # 删除根目录下的oldboy
rm -rf a b c # 同时删除a、b、c
rm -rf dir* # 删除以dir开头的所有目录
# 通过文件句柄,有可能可以找回丢失数据(前提:不能重启,不能有大量数据写入) # 4.修改目录
mv /root/oldboy/ /tmp # 将oldboy文件移到tmp目录下
mv /root/oldguo/ /tmp/oldguo.bak # 将oldboy移到tmp中,并重命名
mv oldboy old # 当前目录下的oldboy重命名为old
cp -r /tmp/old / # 将old文件拷贝到根目录下
cp -a /tmp/old / # 带上源文件的属性权限拷贝 # 5.切换目录
cd / # 切换到根目录下
cd /oldboy # 切换到根目录下的oldboy目录
cd oldboy # 切换到当前目录下的oldboy
cd .. # 切换到上一层目录
cd - # 切换到上一次所在的目录

3、普通文件

(1)文件种类

ASCII TEXT:纯文本文件(操作最多的)
LSB Exe:二进制的可执行文件(命令,程序)
压缩文件:zip tar gz bz2 cpio iso
二进制数据文件:

(2)命令

  • linux中一切皆文件,不管是目录还是文件,名字都不能重复
# 1.创建文件
touch a.txt # 创建a.txt文件 # 2.删除文件
rm -rf a.txt # 删除a.txt文件 # 3.查看文件
ls -l a.txt # 查看文件属性
# (1)小文件内容查看
cat /etc/passwd # 查看passpwd文件的内容
cat /etc/passwd /etc/shadow # 同时查看两个文件的内容
cat -n /etc/passwd # 查看文件内容,每行内容都带上序号 # (2)分页显示大文件内容
more /var/log/secure # 使用空格下翻,只能往下翻,查看文件内容
less /var/log/secure # 既能往上翻,又能往下翻 # (3)文件前多少行
head /etc/passwd # 查看前10行内容,默认是10行
head -n3 /etc/passwd # 查看前3行内容,默认是10行
head -3 /etc/passwd # 查看前3行内容,默认是10行 # (4)文件后多少行
tail /etc/passwd # 查看后10行内容,默认是10行
tail -2 /etc/passwd # 查看后2行内容
tail -f /var/log/secure # 实时监控文件 # 4.复制、剪切文件
mv # 命令和目录的操作一样
cp # 命令和目录的区别不需要加-r (加上也不报错) # 5.修改文件内容
cat /etc/passwd >a.txt # > 覆盖重定向,如果文件没有,会自动创建
cat /etc/passwd >>a.txt # >> 追加重定向,如果文件没有,会自动创建
echo "10.0.0.100 python3" >>/etc/hosts # 将"10.0.0.100 python3"追加到hosts中

4、vim编辑

(1)命令模式

vim passwd 直接进入的就是初始模式,即命令模式

	↑↓←→   # 上下左右光标移动
page up page down # 翻页
G # 光标到达最后一行
1G # 光标到达第一行(gg)
10G # 第10行
^ # 光标到达行首
$ # 光标到达行尾
/ # 搜索关键字
yy # 复制光标所在行
Nyy # 复制N行
dd # 删除/剪切
Ndd # 删除/剪切N行
p # 粘贴
x(del) # 删除光标所在字符
dG # 删除光标到文本末尾
d$ # 从光标删除到行尾,包括贯标所在字符
d^ # 从光标删除到行首,不包括光标所在字符
r # 替换光标所在字符
ZZ # 保存退出
u # 撤销上次操作

(2)编辑模式

a    # 在光标之后录入数据
i # 在光标之前录入数据
o # 在光标下一行开启新行录入数据
A
I
O
ESC # 回到命令模式,建议每编辑完一行就ESC,退回到命令模式

(3)末行模式

在命令模式下,进入末行模式

:q!     # 强制不保存退出
:wq! # 保存退出
:set nu # 在编辑器中显示行号
:set nonu # 在编辑器中不显示行号
:%s/root/ROOT/g # 批量修改,将所有的root替换为ROOT,g表示全局

5、链接(快捷方式)

ln -s passwd passwd.lnk

6、磁盘和文件系统

[root@python3 ~]# ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 Jan 3 15:28 /dev/sda
brw-rw---- 1 root disk 8, 1 Jan 3 15:28 /dev/sda1
brw-rw---- 1 root disk 8, 2 Jan 3 15:28 /dev/sda2
brw-rw---- 1 root disk 8, 16 Jan 3 15:28 /dev/sdb
[root@python3 ~]# fdisk -l

(1)分区

# 1.分区
fdisk /dev/sdb # 进行分区
m
n # 新建分区
p # 打印先有的分区
w # 保存分区 # 2.格式化成文件系统(XFS)
mkfs.xfs /dev/sdb1 # 3.挂载设备
mkdir /data # 格式化以后创建新的目录
mount /dev/sdb1 /data # 把新的分区,挂载到data中 # 4.查看挂载的磁盘使用情况
df -h

(2)自动挂载

# 自动挂载文件系统
vim /etc/fstab # 进入文件进行配置 /dev/sdb1 /data xfs defaults 0 0 # 在配置文件中添加内容,挂载的分区、挂载位置、类型、默认参数、不检查系统

.png)

  • 挂载的分区使用UUID更加安全
# 获取UUID
blkid # 自动挂载,使用uuid
UUID=R2PoCI-tOiD-Mksr-fsiW-5tBV-YIbV-pVYwfP /data xfs defaults 0 0

7、Raid

(1)功能特性

1.将多块磁盘合并成一块磁盘,提供更大的存储空间
2.可以提供更高的IO能力
3.数据物理层面的高安全

(2)Raid的工作级别

# 1.raid0
条带化功能,性能极高,安全性和单盘一样
至少两块盘,理论上盘越多性能越高 # 2.raid1
镜像功能,性能没有明显提升,安全性高.
浪费一半空间 # 3.raid10
镜像+条带化 ,至少四快盘,性能和安全兼顾
浪费一般空间 # 4.raid5
带有校验功能的条带化
存储数据时,根据数据计算校验值,存储到第三块盘.
写入性能较低
读数据性能较高
至少三快盘,只允许一块盘损坏,浪费1/n的磁盘空间
适合于读多写少的场景

8、用户、组、权限

(1)用户的定义

​ 用户名(uid),密码,家目录(/home/oldboy),家目录下会有环境变量文件等.
​ 每个用户都必须有一个工作组,创建时没指定,自动创建一个同名的组

(2)组的定义

​ 组名字,GID(1001~65535)

(3)用户和组的管理

a.组的管理
# 1.创建组
groupadd -g 1001 dev # 创建分组,组id从1000开始
groupadd -g 1002 sa
groupadd -g 1003 dba # 2.查看组
cat /etc/group
tail -3 /etc/group # 3.删除组
groupdel dba # 删除组dba # 修改组(不建议改)
groupmod -g 10086 dev # 修改组的id
b.用户的管理
# 创建用户(普通用户)
useradd oldguo # 其余自动创建
useradd -u 10011 -g dev oldguo # 指定id,指定组,用户名 # 查看用户
id oldguo # 设置密码
passwd oldguo # 切换用户
su - oldboy # 切换到oldboy用户
exit # 退出用户 # 删除用户
userdel -r oldboy # 修改用户(id)
usermod -u 3000 oldguo

(4)权限

a.权限的分类
r   4    # 读
w 2 # 写
x 1 # 执行
b.权限的管理
[root@py3 ~]# ls -l /a

# drwxr-xr-x 3 root root 14 Jan  4 04:12 b
drw ----> root用户权限
xr- ------> 文件所属组root组的权限
xr- -------> 文件的进行操作
c.权限对应命令
               目录                 				文件
r ls cat more ,vim
w 目录下的修改 vim >
x 目录下所有操作都依赖于x 可执行程序
d.设置权限
# 设置权限
chmod -R 755 /data # 755相当于 rwxrx-rx-
chwon -R oldguo:dev /data # 设置oldguo和dev的权限

9、程序管理

# 查看进程状态
ps -ef # 查看所有进程的状态
ps -ef|grep mysql # 查看mysql的状态 # 关闭进程
kill 1234(pid) # 安全的结束
kill -9 1234 # 如果进程崩了,也可以关闭
pkill mysqld # 批量关闭,关闭mysqld的所有进程 # 服务的启动与关闭
systemctl start httpd(服务的名字) # 开启服务
systemctl restart httpd # 重启服务
systemctl stop httpd # 关闭服务

10、网络管理

# 查看ip地址
ip a
或者
ifconfig # ping命令 # 网络配置
vim /etc/sysconfig/network-scripts/ifcfg-eth0 # linux中默认的网卡位置,可以修改IP地址
systemctl restart network # 改完IP地址以后要重启 # 查看已启动端口
netstat -tulnp # 查看启动的端口
netstat -tulnp |grep 80 # 过滤查看端口
ss -tulnp|grep 80 # 查看端口对应的详细信息

11、查看yum源

[root@py3 ~]# cd /etc/yum.repos.d/
[root@py3 yum.repos.d]# ls

Linux(二)—— Linux配置及指令的更多相关文章

  1. Linux配置及指令

    目录 Linux配置及指令 一.linux中常用软件的安装 二.主机名和网络 1.修改主机名 2.设置网络 三.关闭防火墙 1.检查防火墙是否开启 2.清除策略 3.永久关闭第一个防火墙 4.关闭第二 ...

  2. 阿里云服务器Linux CentOS安装配置(二)yum安装svn

    阿里云服务器Linux CentOS安装配置(二)yum安装svn 1.secureCRT连接服务器 2.先创建一个文件夹,用来按自己的习惯来,用来存放数据 mkdir /data 3.yum安装sv ...

  3. STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解)

    目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) 前面 ...

  4. 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录

    目录 沁恒CH32F103C8T6(一): Keil5环境配置,示例运行和烧录 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录 StdPeriphLi ...

  5. 沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置

    目录 沁恒CH32V103C8T6(一): 核心板焊接和Windows开发环境配置 沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置 硬件准备 CH32V103 开发板 ...

  6. 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇

    上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...

  7. 【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介

    作者 : 韩曙亮 转载请出名出处 : http://blog.csdn.net/shulianghan/article/details/38636827 一. Linux 内核简介 1. 内核功能简介 ...

  8. Vsftp的PASV mode(被动模式传送)和Port模式及 Linux下VsFTP配置全方案

    什么叫做PASV mode(被动模式传送)?他是如何工作的? FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个是数据传送的连接.FTP服务程序一般会支持两种不同的模式,一种是Po ...

  9. linux下IPTABLES配置详解 (防火墙命令)

    linux下IPTABLES配置详解 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 24000 -j ACCEPT ...

随机推荐

  1. python使用消息队列RabbitMq(进阶)

    import pika connection = pika.BlockingConnection(pika.ConnectionParameters( 'localhost')) channel = ...

  2. 基于名称快速定位文件和文件夹的搜索工具Everything和dll依赖查询工具Dependency Walker

    在工作中有时需要定位头文件.lib库文件.dll文件等的路径,自己去一个个盘符查找实在太麻烦,最近发现使用Everything这款工具很方便,下载地址为:下载 Everything 1.4.1.935 ...

  3. Scrapy框架——安装以及新建scrapy文件

    一.安装 conda install Scrapy   :之后在按y 表示允许安装相关的依赖库(下载速度慢的话也可以借助镜像源),安装的前提是安装了anaconda作为python ,   测试scr ...

  4. redis-3.0.0安装

    redis-3.0.0安装 前言 redis是常用的no-sql数据库,常用于缓存数据,同时,他也可以持久化数据.他是C语言开发的,所以安装的时候需要编译. 单机版redis yum install ...

  5. go 语言结构控制

    if  else 结构: #第一种 if condition { // do something } #第二种 if condition { // do something } else { // d ...

  6. how to prevent lowmemorykiller from killing processes

    Hi there, I've upgraded a number of test systems to the latest Saucy beta. I've seen quite a few cas ...

  7. Codeforces Breaking Good

    Breaking Good time limit per test 2 seconds memory limit per test 256 megabytes Breaking Good is a n ...

  8. android SharedPreferences 存储文件

  9. 【记录】vue相关知识点

    let let是es6新引入的命令,与var命令类似,但是let是声明的局部变量,只在所在代码块中有效. ES5 只有全局作用域和函数作用域,没有块级作用域,这带来很多不合理的场景. var s = ...

  10. eclipse中创建的spring-boot项目在启动时指定加载那一个配置文件的设置

    步骤如下:鼠标点击项目右键—>Run As—>Run Configurations—>Java Application (如下图) 鼠标右键点击Java Application——— ...