Linux开端---Centos
Linux-Centos
虚拟化所需工具:https://pan.baidu.com/s/1643-kYcx9oPGnGEZM1pLOw?pwd=g0v5 提取码:g0v5
问题解决
正常注册网络适配器
主要原因:原先已经安装过虚拟机,卸载后存在注册表残留,使得安装的新虚拟机无法正常注册网络适配器。
下载软件:ccleaner
下载地址:https://www.ccleaner.com/ccleaner/download/standard
使用该软件清理注册表即可
WARNING!The remote SSH server rejected X11 forwarding request.
- 截图
解决
X11 forwarding依赖xorg-x11-xauth软件包,安装xorg-x11-xauth软件包。
yum install xorg-x11-xauth -y
,安装后重新连接即可
基础包
# 解决在7的版本中没有ifconfig命令,加上-y不用手动确认
yum install net-tools
yum install net-tools -y
# 两下tab自动补齐
yum install bash-completion -y
# 联网下载文件
yum install wget -y
wget file_addr # 有-O参数,指定下载地址
# 以树状显示目录结构命令tree
yum install tree -y
# 解决报错:WARNING!The remote SSH server rejected X11 forwarding request.
yum install xorg-x11-xauth -y
# 文件编辑工具
yum install vim -y
# 上传下载
yum install lrzsz -y
快捷键
Ctrl + a # 光标跳转至正在输入的命令行的首部
Ctrl + e # 光标跳转至正在输入的命令行的尾部
Ctrl + c # 终止前台运行的程序
Ctrl + d # 在shell中,ctrl-d表示推出当前shell。
Ctrl + z # 将任务暂停,挂至后台
Ctrl + l # 清屏,和clear命令等效。
Ctrl + k # 删除从光标到行末的所有字符
Ctrl + u # 删除从光标到行首的所有字符
Ctrl + r # 搜索历史命令, 利用关键字,Tab建选中,只能找到最近的一条
Ctrl + w # 按单词或空格进行向前删除
Ctrl + 左右建 # 按单词或空格进行向前向后跳
# 在命令行前加面加 "#" 则该命令不会被执行
基础命令
# 查看Linux内核版本
cat /proc/version
or
uname -a
# 查看Linux系统版本
cat /etc/redhat-release
# 查看主机名
hostname
井号:通常指超级管理员
$:普通用户
# 创建用户
useradd username
passwd password
# 切换用户
su - username
# 当前用户的家目录
~
# 回到家目录
cd
# 查看当前路径
pwd
# 切换目录
cd *
# 查看当前目录下的文件
ls
ls -a # 查看隐藏文件 或 ls --all
# 查看详细
ll
ll -a
# 命令缩写用-,全写用--
# 查看命令历史
history
!数字 # 快速执行数字那一行
!yum # 快速执行最近一条yum命令
history -c # 清空所有记录(连到人家服务器,操作完了,执行一下)
history -w # 可以把 历史记录写到用户家路径的.bash_history文件中
> filename # 清空文件
# 重启网卡
systemctl restart network
# 查看硬盘使用情况
df -h
# 统计文件夹使用情况及空间大小
du -sh /usr/
# 查看登录日志
cat /var/log/secure
# 查看所有程序
ps aux
ps aux | head -n5 # 查看前五条
# 下载
wget -O 路径(可选) 地址
# 测试连通性
curl www.baidu.com
# 文本查看,分页
less、more(百分比):less /etc/services
# 查找命令
grep 'nq' /etc/services # 查看文件中有nq的行
# 翻页
ctrl+b:下翻页,ctrl+f:上翻页
# 上传下载 (4g以内)
rz:上传,选择文件直接上传
sz:sz 文件路径 可以下载到当前主机
# 排序
sort 文件名 # 对文件内容排序
# uniq 去重,连续挨着的才能去,所以要跟sort连用
sort 文件名 | uniq
# 分割截取
cut -d " " -f2,5 文件名 # 把字符串按“ ” 分割,取出第2和第5个
"""文件属性和类型"""
# 以人性化显示,kb,gb
ll -h, ll /etc/services -h
# 文件类型
- # 普通文件(文本, 二进制, 压缩, 图片, 日志等)
d # 目录文件
# 查看详细的文件类型
file /etc/services
"""软连接,硬链接"""
软链接新建了一个inode(相当于快捷方式),硬链接指向同一个inode
软:ln -s 链接到的路径 哪个文件/文件夹
硬:ln
# 取消软连接
rm -rf /sbin/nginx # 最后不能加/
"""vim"""
# 普通模式:
ctrl+b上翻页,ctrl+f下翻页
yy 复制一行
p 粘贴
dd 剪切
p 把上面剪切的粘贴上
# 编辑模式
i insert插入
a append追加
o 换行插入
esc回到普通模式
# 命令模式:
w 表示保存
q 退出
! 强制退出
:set nu 显示行号
:set nonu 不显示行号
/字符串 搜索这个字符串
:%s#ctrl#control#g # 替换文本(:%s###g)
# 查看上一次的命令是否有误,无误显示0
echo $?
# 清空文件内容
cat /dev/null > 文件名
用户
who # 当前有哪些用户登录了
whoami # 当前登录用户
w # 检查用户登陆情况
# id root
uid=0(root) gid=0(root) groups=0(root)
# 用户信息路径
cat /etc/passwd
# 密码存放路径
cat /etc/shadow
# 用户增删改
# 增(一个用户只能属于一个主组,可以属于多个附加组)
groupadd 组名 # 新增一个组
useradd -u 5001 -g 组名 -G 附组名1,附组名2 -c "可以写注释" -s /bin/bash lqz1
# 应用场景
创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户无法登陆系统
useradd mysql -M -s /sbin/nologin
# 改
usermod -c "注释" -md /用户目录 -s /bin/sh -l 用户名 新用户名 # -md,把环境也带过去
usermod -L 用户名 # 锁定后会无法登陆系统
usermod -U 用户名
passwd root # 修改密码
# 删
userdel 用户名 # 删除用户,不删家目录
userdel -r 用户名 # 删除用户,删家目录(慎用)
# 组的增删改
groupadd no_gid # 新增组
groupmod -g 1111 组名 # 改组id号
groupmod 组名 -n 新组名 # 改组名字
groupdel new_student # 删除组(组下如果有人,把人删除,再删)
# 用户UID,系统中约定的含义
0 超级管理员,最高权限,有着极强的破坏能力
1~200 系统用户,用来运行系统自带的进程,默认已创建
201~999 系统用户,用来运行用户安装的程序,所以此类用户无需登录系统
1000+ 普通用户,正常可以登陆系统的用户,权限比较小,能执行的任务有限
# finger查询用户信息以及登录信息
yum install finger -y
finger 用户名
# 切换用户
su user # 不加载环境变量
su - user # 加载环境变量
权限
# 修改权限: d r-x r-x r-x
7=4(r)+2(w)+1(x)
r:read写权限
w: write写权限
x:可执行
chmod 777 文件夹/文件
# 特殊权限chattr
# 选项: + 增加权限 -减少权限 =等于某个权限
# a:让文件或目录仅可追加内容
# i:不得任意更动文件或目录
chattr +i 文件名
chattr -i 文件名
解压缩
# gzip(只能压一个文件,不能压文件夹,会把原来的删除)
gzip 文件名
gzip -d 解压文件名
# zip的压缩和解压
yum install zip unzip -y
zip filename.zip filename # 压单个文件
zip -r filename.zip /home/ # 把home文件夹压缩
unzip filename.zip # 解压
unzip -l filename.zip # 不解压,看内容
unzip filename.zip -d /home/ # 解压到home路径
# tar打包与压缩
tar czf 文件名.tar.gz 文件名
tar xf 文件名.tar.gz
tar xzvf xx.tar.gz # 解压tar.gz,详细过程列出来
tar czf etc.tar.gz --exclude=etc/services etc/ # 排除文件
tar xf /etc/local.tar.gz -C /home # -C指定解压到哪个路径
软件下载和安装
# rpm
rpm -ivh tree-1.6.0-10.el7.x86_64.rpm # 安装rpm的软件
rpm -q # 查看这个软件是否安装********
rpm -qa |grep tr # 列出所有安装的软件
rpm -ql # 查询指定软件包所安装的目录、文件列表rpm -ql unzip *****
rpm -qc unzip # 查看这个软件的配置文件位置
rpm -qf /etc/pam.d/vsftpd # 查看配置文件属于哪个软件
rpm -qlp trace-cmd-2.6.0-10.el7.x86_64.rpm # 查看该软件包安装后会释放哪些文件
rpm -ivh https://*.rpm # 远程地址下载
rpm -Uivh # 升级软件需要用 U
rpm -e zabbix-agent
# yum配置源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 阿里源
# 源码安装nginx(其他软件步骤类似)
安装编译依赖
yum install -y make pcre-devel gcc gcc-c++ zlib zlib-devel openssl openssl-devel
1.下载
https://nginx.org/en/download.html
2.解压
tar xf ...
3.cd进入nginx目录,通过configure 生成配置信息,配置相关的选项,并生成Makefile,软件安装的信息
./configure --prefix=/usr/local/nginx
4.make && make install # 按照Makefile生成的安装软件&&将二进制文件拷贝至对应的目录中
5.在任意路径敲nginx都能执行
建立软链接:ln -s /usr/local/nginx/sbin/nginx /sbin/nginx
把/usr/loacl/nginx/sbin/路径加入环境变量
想使用systemctl管理(制作系统服务)
6.nginx命令介绍
nginx # 启动
nginx -s reload # 重新加载,修改配置文件
nginx -s restart # 重启
nginx -s stop # 停止
进程管理
1.ps aux 用它,[系统进程]
2.ps ef
3.ps aux|grep id,进程名字,
4.top # 实时看状态
5.kill -l # 列出当前系统所支持的信号
6.kill -9 进程id号 # 强行关闭
7.pkill -9 nginx # 关闭nginx所有进程
8.killall nginx # 关闭nginx所有进程
# screen管理后台进程
yum install screen -y
screen -S myjobs # 创建了一个窗口,执行耗时任务,进程
ctrl+a+d 退出当前bashshell但是耗时任务还在后台运行
screen -r myjobs 调到前台执行
screen -list 查看所有任务
系统服务
# 关闭防火墙
systemctl stop firewalld
# 关闭自启
systemctl disable firewalld
# 重新加载单元
systemctl daemon-reload
# 制作nginx服务
1.cd /usr/lib/systemd/system/
2.vim nginx.service
3.写入文件
[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
# 修改文件权限
chmod 745 nginx.service
# 查看服务状态:
systemctl status nginx.service
# disabled表示没有开机自启动
Loaded: loaded (/usr/lib/systemd/system/nginx.service; `disabled`; vendor preset: disabled)
# 其他命令
# 启动nginx服务
systemctl start nginx.service
# 设置开机自启动
systemctl enable nginx.service
# 停止开机自启动
systemctl disable nginx.service
# 查看服务当前状态
systemctl status nginx.service
# 重新启动服务
systemctl restart nginx.service
# 查看所有已启动的服务
systemctl list-units --type=service
paramiko模块的使用
import paramiko
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='', port=22, username='root', password='')
# 执行命令
stdin, stdout, stderr = ssh.exec_command('ls') # 传入要执行的命令
# 获取命令结果
result = stdout.read()
print(result.decode('utf-8'))
# 关闭连接
ssh.close()
centos 7 安装git并配置ssh
# 1.安装git
yum install git
# 2.查看git版本
git version
# 3.配置帐户和密码
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
# 4.配置SSH用于拉取远程仓库
# 本地生成ssh key,生成公钥和私钥
ssh-keygen -t rsa -C "your_email@youremail.com"
# 一路回车,生成的密钥存放路径 /root/.ssh/
# 5.查看公钥
cat /root/.ssh/id_rsa.pub
# 6.配置github
https://github.com/settings/keys
# 新建密钥,名字随便起,刚才的公钥复制进去
# 7.done
Linux开端---Centos的更多相关文章
- Windows主机里利用VMware安装Linux(CentOS)虚拟机,Host-only连接上网方式详解
关于Host-only指的是主机与虚拟机之间的互联,因此虚拟机是不能连网的,若需要连网则需要使用NAT模式: Host-only模式实现联网得考虑如下配置过程: 附:VMware虚拟机三种网络模式(B ...
- 玩转Linux之- CentOS 7.0,启用iptables防火墙
原文 玩转Linux之- CentOS 7.0,启用iptables防火墙 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall:sy ...
- linux虚拟机CentOS 7完整安装流程截图
安装VMware虚拟机过程此处省略,只介绍在虚拟机上安装linux系统CentOS 7过程截图. 1 新建虚拟机 2 命名虚拟机,选择linux安装位置 3 选择虚拟机处理器数量和处理器核心数 4 分 ...
- 如何设置Linux(Centos)系统定期任务(corntab详细用法)
如何设置Linux(Centos)系统定期任务(crontab详细用法) 1.Crontab简介 Linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非 ...
- linux(centos)上安装mysql教程,为需要远程登录的用户赋予权限
最近把之前学生时代的win server换成了linux(centos)系统,因为win对于部署一些项目时候比较麻烦,直接入正题 1.准备阶段 我使用xshell工具管理服务器,相应下载和安装自行百度 ...
- VMware 安装Linux系统 CentOS
VMware 安装Linux系统 CentOS 1. 下载镜像系统 centos镜像下载地址:https://www.centos.org/download/ 选择DVD下载即可 linux各版本下 ...
- Asp.Net Core 程序部署到Linux(centos)生产环境(二):docker部署
运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 ...
- Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署
运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的 ...
- linux(CentOS)磁盘挂载数据盘
linux(CentOS)磁盘挂载数据盘:第一步:查看是否存在需要挂载的磁盘: sudo fdisk -l 第二步:为需要挂载的磁盘创建分区: sudo fdisk /dev/vdb 执行中:依次选择 ...
- 【Linux】-NO.5.Linux.1.CentOS.1.001-【CentOS7 Foundation Configuration】-
1.0.0 Summary Tittle:[Linux]-NO.5.Linux.1.CentOS.1.001-[CentOS7 Foundation Configuration]- Style:Lin ...
随机推荐
- [转帖]VMware-ovftool命令行部署与导出镜像
ESXI6.0之后管理为WEB,OVF导出/部署是个渣渣,如果虚拟机文件过大,一般会报网络异常中断而失败,可使用官方ovftool工具解决,快而方便,支持linux和Mac OSX,可脚本操作,批量处 ...
- 【图论】CF1508C Complete the MST
Problem Link 有一张 \(n\) 个点的完全图,其中 \(m\) 条边已经标有边权.你需要给剩下的边都标上权值,使得所有边权的异或和为 \(0\),并且整张图的最小生成树边权和最小. \( ...
- Fabric网络升级(三)
原文来自这里. 如果不熟悉capability,那么操作前可以查阅Capabilities.需要注意的是在启用capabilities前,需要升级归属该通道的peer节点和排序节点. 更多关于最新版F ...
- [P9253 [PA 2022] Ornitolog 2] 题解
题目 P9253 [PA 2022] Ornitolog 2 题目描述 给你一个长度为 \(n\) 的数列,求至少要修改多少个数才能让数列成为交替鹡鸰鸟鸣的音高序列. 思路 这道题有两种情况. 第一种 ...
- 我为什么从Windows转到Linux?
本文来自读者投稿! 大家好!我是 Guide 哥,Java 后端开发.一个会一点前端,喜欢烹饪的自由少年. 如果文章有任何需要改善和完善的地方,欢迎在评论区指出,共同进步! 喔,看到这个标题千万不要以 ...
- 强化学习从基础到进阶-常见问题和面试必知必答[7]:深度确定性策略梯度DDPG算法、双延迟深度确定性策略梯度TD3算法详解
强化学习从基础到进阶-常见问题和面试必知必答[7]:深度确定性策略梯度DDPG算法.双延迟深度确定性策略梯度TD3算法详解 1.核心词汇 深度确定性策略梯度(deep deterministic po ...
- 【八】强化学习之DDPG---PaddlePaddlle【PARL】框架{飞桨}
相关文章: [一]飞桨paddle[GPU.CPU]安装以及环境配置+python入门教学 [二]-Parl基础命令 [三]-Notebook.&pdb.ipdb 调试 [四]-强化学习入门简 ...
- 【栈和队列】栈和队列的相互实现OJ练习【力扣-232、力扣-225】超详细的保姆级别解释
[栈和队列]栈和队列的相互实现OJ练习[力扣-232.力扣-225]超详细的保姆级别解释 先赞后看好习惯 打字不容易,这都是很用心做的,希望得到支持你 大家的点赞和支持对于我来说是一种非常重要的动力 ...
- ABP vNext系列文章和视频
<Mastering ABP Framework>图书目录 第一部分 企业级软件开发和ABP框架 ABP框架入门 ABP应用开发(Step by Step)-上篇 ABP应用开发(Step ...
- 教你用Java实现动态调色板
案例介绍 欢迎来到我的小院,我是霍大侠,恭喜你今天又要进步一点点了!我们来用Java编程实战案例,做一个动态调色板.案例界面会出现三个滑动组块以及对应的数值,通过移动滑块可以改变颜色区域的显示.通过实 ...