Linux(二)—— Linux配置及指令
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配置及指令的更多相关文章
- Linux配置及指令
目录 Linux配置及指令 一.linux中常用软件的安装 二.主机名和网络 1.修改主机名 2.设置网络 三.关闭防火墙 1.检查防火墙是否开启 2.清除策略 3.永久关闭第一个防火墙 4.关闭第二 ...
- 阿里云服务器Linux CentOS安装配置(二)yum安装svn
阿里云服务器Linux CentOS安装配置(二)yum安装svn 1.secureCRT连接服务器 2.先创建一个文件夹,用来按自己的习惯来,用来存放数据 mkdir /data 3.yum安装sv ...
- STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解)
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) 前面 ...
- 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录
目录 沁恒CH32F103C8T6(一): Keil5环境配置,示例运行和烧录 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录 StdPeriphLi ...
- 沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置
目录 沁恒CH32V103C8T6(一): 核心板焊接和Windows开发环境配置 沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置 硬件准备 CH32V103 开发板 ...
- 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇
上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...
- 【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介
作者 : 韩曙亮 转载请出名出处 : http://blog.csdn.net/shulianghan/article/details/38636827 一. Linux 内核简介 1. 内核功能简介 ...
- Vsftp的PASV mode(被动模式传送)和Port模式及 Linux下VsFTP配置全方案
什么叫做PASV mode(被动模式传送)?他是如何工作的? FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个是数据传送的连接.FTP服务程序一般会支持两种不同的模式,一种是Po ...
- linux下IPTABLES配置详解 (防火墙命令)
linux下IPTABLES配置详解 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 24000 -j ACCEPT ...
随机推荐
- python使用消息队列RabbitMq(进阶)
import pika connection = pika.BlockingConnection(pika.ConnectionParameters( 'localhost')) channel = ...
- 基于名称快速定位文件和文件夹的搜索工具Everything和dll依赖查询工具Dependency Walker
在工作中有时需要定位头文件.lib库文件.dll文件等的路径,自己去一个个盘符查找实在太麻烦,最近发现使用Everything这款工具很方便,下载地址为:下载 Everything 1.4.1.935 ...
- Scrapy框架——安装以及新建scrapy文件
一.安装 conda install Scrapy :之后在按y 表示允许安装相关的依赖库(下载速度慢的话也可以借助镜像源),安装的前提是安装了anaconda作为python , 测试scr ...
- redis-3.0.0安装
redis-3.0.0安装 前言 redis是常用的no-sql数据库,常用于缓存数据,同时,他也可以持久化数据.他是C语言开发的,所以安装的时候需要编译. 单机版redis yum install ...
- go 语言结构控制
if else 结构: #第一种 if condition { // do something } #第二种 if condition { // do something } else { // d ...
- 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 ...
- Codeforces Breaking Good
Breaking Good time limit per test 2 seconds memory limit per test 256 megabytes Breaking Good is a n ...
- android SharedPreferences 存储文件
- 【记录】vue相关知识点
let let是es6新引入的命令,与var命令类似,但是let是声明的局部变量,只在所在代码块中有效. ES5 只有全局作用域和函数作用域,没有块级作用域,这带来很多不合理的场景. var s = ...
- eclipse中创建的spring-boot项目在启动时指定加载那一个配置文件的设置
步骤如下:鼠标点击项目右键—>Run As—>Run Configurations—>Java Application (如下图) 鼠标右键点击Java Application——— ...