Linux基础全整理 从入门到放弃,一些想说的话

news2024/11/17 17:49:45

阅读目录

      • 断更后一些想说的话
      • 用户
        • useradd
        • passwd
          • passwd文件详解
        • chage
        • usermod
        • userdel
        • shadow 文件格式
        • 切换用户
      • 用户组
        • groupadd
        • group文件格式
        • groupmod
        • groupdel
        • 登陆远程机器
      • 磁盘
      • RAID
        • raid0(安装系统)
        • raid1(存放数据)
        • raid 5(目前比较流行)
        • raid6
        • raid10(土豪)
        • raid01
      • 包管理工具
        • yum 参考的配置文件
        • yum源的url
      • 编译

断更后一些想说的话

(1)今天是2023年11月19日,之前最后一次更新是停留在了2020年8月28日;自己很喜欢编程,加之又喜欢学习英语,所以总是想系统的搞懂一些更加深奥的原理;但自己大学学的专业和毕业从事的工作也并非计算机这块。学习编程纯粹是爱好,开始我是找一些课程来看,和大家一样,兴致满满;但后面总是断断续续,于是我逼自己有空就学习,同时做笔记。因为csdn可以无限地插入图片,可以大大减少一些没必要的打字,所以我非常喜欢用这个平台来记录。
在这里插入图片描述
(2)关于我想利用空闲学点编程,我开始选择的是被鼓吹的“比较容易入门,易学”的Python,于是了解后,便系统的制定了学习路线;但很快就发现,学习前面的知识点太无聊了,因为编程语言都有个特性,就是前面语法“万变不离其宗”,因为大学课程也安排了点Java,所以再次听课时,感觉有点烦,所以学完函数,就有点无聊的感觉。这时我突然想直接学点算法,因为已经掌握了基本的语法,想去尝试实现点高深的东西。
(3)面对算法,开始只觉得高深,像是要从大量的书本开始学习;我的做法是直接从做题目开始,搜课程,跟着老师讲题,然后用已经会的语法,敲几遍,再做笔记;我发现这样“跳级”的做法,非但没有消退学习热情,反而对前面学些的语法知识点融会贯通;真的可以试试,学些编程时,学会基本语法后,直接是学习算法,真能打开新思路;尤其是循环、判断、函数这块,有质的提升。
(4)因为课程学完基础语法后,都是学些前端(所谓的全栈编程),这时我又觉得非常无聊;本来都要中断了,但是突然又有点想系统学习下数据库,于是便开始学习数据库,然后写了近半个月的数据入门知识点…
(5)学习数据库中,发现如果要深入,还得学习Linux,于是又开始学习Linux,便是现在写的内容,写到这一篇时,然而…
(6)因为自己本职工作和编程可以说是毫无关系,8月28日,晚上,突然被家长叫回家相亲,于是就开始断更了…之后大概两年多没碰过编程,也没有写过文章…知识点都遗忘了…
(7)成功相亲,然后结婚后,开始专心本职工作,空闲时时常有点不舍;因为学习编程,尤其是算法,真的能拓宽一个人的思维,心中也一直想系统的学好一门编程语言。但是,时间已经开始不允许了…好可惜啊,不过我有空肯定会再系统补回来的…Python也好,算法、数据库、Linux也好…
(8)突然就想写点啥,主要是看到很多小伙伴点赞我之前写的文章,我也深知自己写的东西,都是些皮毛,也没有深入下去,这让我有点受宠若惊;但也希望之前写的东西能帮助到你,同时我希望你能坚持下去,养成写笔记,记录的学习过程的习惯;不要在乎写的好不好,只要开始,你就已经成功了.
(9)因为偏离编程太久了,最近开始学习PPT了,想系统的整理些内容,于是久违的热情又开始了!不断出发又何妨,每个时间点,都有自己的选择,不需要后悔,只需要迈出第一步;开始写东西,开始学习,一切都在悄然改变…
(10)现在开始吧!坚持坚持再坚持,自己也有幸坚持了玩微博,每天能有个稳定、坚持更新的“坚持点”,微博@荐影视 是我,有空可以一切聊聊,当然不知道有没有小伙伴能看到这篇“彩蛋”,能读到这里!大家加油,一起坚持记录自己学习的过程吧!
(11)好了,我要开始学习新内容了,出发~~

用户

  • 分类

(1)超级管理员 root (uid 0)

(2)普通用户

系统用户: 一般情况下用来启动服务或者运行进程,一般情况下系统用户是不可以登陆

  uid 1-999(centos7) 1-499(centos6)

可登陆用户:可以登陆系统的用户

  uid 1000-65535(centos7) 500-65535(centos6)
useradd

只能用root账号来创建用户
在这里插入图片描述

  • -d 指定用户的家目录,不能创建在/tmp,默认用户的家目录不需要手动创建
    在这里插入图片描述

  • -g 组信息 主组有且只能有一个

  • -G 指定附加组 可以有多个

  • -M 不创建家目录

  • -N 不创建组,默认继承至user组

  • -r 创建一个系统用户,id从1000依次递减
    在这里插入图片描述

  • -s 登录以后使用的shell /sbin/nologin 可以登录看到提示,但是会立马被踢掉
    在这里插入图片描述
    在这里插入图片描述

  • -u 指定uid
    /etc/default/useradd 默认的配置文件
    在这里插入图片描述
    在这里插入图片描述

  • -D 显示默认配置
    在这里插入图片描述

    (1)useradd -D -s /sbin/nologin 修改默认的登录后的shell
    在这里插入图片描述

    (2)useradd -D -b /opt/ 修改默认的家目录
    在这里插入图片描述

    (3)useradd -D -g 3000 修改默认的组
    在这里插入图片描述

  • 创建完的用户放在了哪里?
    /etc/passwd

passwd

passwd [options] username 用来设置密码
在这里插入图片描述

  • -d 删除用户的密码 不能登录
  • -l 锁定用户
  • -u 解锁用户
  • -e 强制用户下次登录的时候修改密码
  • -x maxdays 密码的最长有效期
  • -n mindays 密码的最短有效期
  • -w wandays 提前多长时间开始警告用户
  • -i days 密码过期多长时间以后账户被禁用
    –stdin 从标准输入读入数据 echo “password” |passwd --stdin username
passwd文件详解

进入/etc/passwd 每条包含的内容
在这里插入图片描述
用户名:密码占位符(x):用户的id:组id:描述信息:家目录:登录后shell

chage

交互式的修改密码的策略

-d 将密码修改时间设置为执行的时间
-E 设置用户的过期时间
-I 密码过期多长会时间以后账户被禁用
-l 显示密码的策略
-m 密码的最短使用期限
-M 密码的最长使用期限
-W 密码过期的警告天数
usermod

在这里插入图片描述

  • -L锁定

  • -U 解锁

  • -d 新的家目录不会自己创建,要想创建要使用-m选项
    usermod -md /usr/local/alex alexdsb
    在这里插入图片描述

  • -g 修改主组

  • -G 修改附加组
    在这里插入图片描述

  • -a 追加附加组
    usermod -a -G root alexdsb1
    在这里插入图片描述

  • -l 改名

  • -s 修改登录后的shell

  • -u 修改uid

userdel

删除用户
在这里插入图片描述

  • -r 删除用户的时候删除用户的家目录

在这里插入图片描述
在这里插入图片描述

shadow 文件格式
  • 用户名
  • 密码:一般情况是sha512加密 加密方式 加密方式 加密方式盐$加密之后的字符串
  • 从1970年1月1日到密码最近一次被修改的时间
  • 密码的最少使用期限
  • 密码的最大使用期限
  • 密码过期多长时间提示用(默认是7天)
  • 密码过期多长时间之后被锁定
  • 从1970年1月1日算起,多少天之后账户失效
切换用户
  • su

    • su username 切换用户,切换用户要输入切换到用户密码
    • su - username 完全切换,会切换用户的目录还会切换用户的环境变量
    • root 切换到别的用户不需要输入密码
  • su [-] username -c “command” 切换用户执行命令后再退回

  • sudo command

    用root用户修改/etc/sudoers文件
    加上
    xiaofeng ALL=(ALL(命令))      NOPASSWD(不需要输入密码): ALL
    表示一个组
    %wheel  ALL=(ALL)       ALL
    

用户组

  • 超级用户组 root 0
  • 普通用户组
    • 系统组 gid 1-999(centos7)1-499(centos6)
    • 可登陆用户组 gid 1000-65535(centos7) 500-65535(centos6)
groupadd
-g 用来指定gid
-r 用来指定系统组
group文件格式
  • 组名
  • 密码占位符
  • gid
  • 以当前组为附加组的用户
groupmod
-g 修改gid
-n 修改组的名称
groupdel

删除用户组

登陆远程机器

两种认证方式:

  • 用户名+密码
  • 用户名+key

使用key登陆

ssh-keygen 生成key
公钥
私钥
非对称加密
ssh-copy-id 复制key到远程机器
公钥加密私钥解密

磁盘

mount 用来查看挂载信息

df 查看磁盘占用

​ -h 显示人类可读的信息

du 显示的目录的占用空间

​ -h 显示人类易读的信息

​ -s 显示的是目录本身

du -sh / 显示根的占用情况

du -sh /* 显示根下的每一个目录的占用情况

dd 复制文件生成文件

dd if=/dev/zero of=/dev/null bs=10M count=2
if input file  
of  output file
bs block size 只能用整数,单位可以是K、M、G、T
count 次数

RAID

raid0(安装系统)
  • 读写速度提升
  • 可用空间 N*个数
  • 没有容错能力
  • 最少需要2块磁盘
raid1(存放数据)
  • 度的能力提升,写的性能稍微有点下架
  • 可用空间N
  • 有容错能力
  • 最少要两块
raid 5(目前比较流行)
  • 读写性能提升
  • 可用空间N*(个数-1)
  • 有容错能力
  • 最多可以坏1块(同时)
  • 最少要3块
raid6
  • 读写性能有提高
  • 可用空间N*(个数-2)
  • 有容错能力
  • 最多可以坏2块(同时)
  • 最少需要4块
raid10(土豪)

先做raid1 在做raid0

  • 读写性能有提升
  • 可用空间N*个数/2
  • 有容错能力:一个组里面只能坏一块
  • 最少需要4块
raid01

先做raid0,在做raid1

包管理工具

介绍

windows exe

redhat rpm

rpm redhat package manager

yum 自己解决依赖关系

    • 安装包 yum install
    • 清除缓存 yum clean
    • 列出所有的包 yum list
    • 更新包 yum update
    • 搜索 yum search
    • 详细信息 yum info
    • 列出yum仓库信息 yum repolist
    • 重新安装 yum reinstall
    • 卸载包 yum remove
    • 检查的依赖关系 yum deplist
    • 重建缓存 yum makecache
    • 搜索指定的命令由那个包生成 yum provides
  • 包组

    • 列出包组 yum group list
    • 安装包组 yum group install
    • 查看包组信息 yum group info
    • 卸载包的信息 yum group remove

rpm 命令

rpm -q package 检查这个包是否安装
-a 列出所有已经安装的包
-f 查询文件由那个包生成
rpm -qf /etc/redis.conf 
-l  查询包生成的文件
rpm -ql redis
-i 查询包的信息
rpm -qi redis
-c 查找包生成的配置文件
rpm -qc redis

包的命名规范

python-2.7.5-80.el7_6.x86_64
name-version(大版本.小版本.修订版)-制作者的修订次数.应用系统.架构
noarch 不区分架构
架构
	x86_64
	Amd64
	i386,i486,i586,i686
	ppc(powerpc)

rpm 卸载包

rpm -e Package 卸载
yum 参考的配置文件

位置:/etc/yum.repos.d/

后缀:repo

[epel] #名字                                                                                                           
name=Extra Packages for Enterprise Linux 7 - $basearch #描述信息
baseurl=http://mirrors.aliyun.com/epel/7/$basearch #仓库的地址 可以是http:// https:// ftp:// file://(本地)
failovermethod=priority # 设置访问规则
enabled=1  #是否禁用 0表示禁用 1表示启用
gpgcheck=0  # 要不要检查key,1表示检查 0表示不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 
$release 系统版本
$basearch 架构

yum 选项

-y yes

-q 静默模式

yum源的url
  • 阿里云
  • 网易
  • 华为云
  • 搜狐
  • 腾讯云 https://mirrors.cloud.tencent.com/
  • 各大高校

编译

  • 优点:可以自定义功能
  • 缺点:安装比较耗时
yum install zlib-devel
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
tar xf Python-3.6.8.tar.xz
cd Python-3.6.8
./configure --prefix=/opt/python36  检查环节预处理
make 释放makefile文件
make install 安装

错误整理

configure: error: in `/root/test/Python-3.6.8':
configure: error: no acceptable C compiler found in $PATH
yum install gcc

添加环节变量

vim /etc/profile.d/python.sh
PATH=$PATH:/opt/python36/bin

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1226673.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

盘点54个Python实用工具源码Python爱好者不容错过

盘点54个Python实用工具源码Python爱好者不容错过 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 链接:https://pan.baidu.com/s/1OXyEh-Yy3JI90jvn6d6wRw?pwd8888 提取码:8888 项目名称 7z辅助破解工…

基于冠状病毒群体免疫算法优化概率神经网络PNN的分类预测 - 附代码

基于冠状病毒群体免疫算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于冠状病毒群体免疫算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于冠状病毒群体免疫优化的PNN网络5.测试结果6.参考文献7.Matlab代码 …

漂亮的pyqt6皮肤 PyOneDark_Qt_Widgets_Modern_GUIPublic

大家先看看界面图,真的很漂亮: github地址:GitHub - Wanderson-Magalhaes/PyOneDark_Qt_Widgets_Modern_GUI 作者还录了教程: TUTORIALS: Tutorial 01: https://youtu.be/QQGlTGYCMg0 Tutorial 02: https://youtu.be/LwKre2proDk…

Halcon (4):如何开始自学

文章目录 文章专栏前言Halcon文档Halcon基础案例文档英语阅读建议 结论 文章专栏 Halcon开发 前言 在我完成上一篇代码,halcon基础窗口事件写完了之后,我已经基本掌握了如何写一个简单的halcon程序。后面我学习新的知识的时候感觉遇到了瓶颈。因为网上没…

【C++】:模板进阶

朋友们、伙计们,我们又见面了,本期来给大家解读一下有关C模板进阶的知识点,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入门到精通 数…

『亚马逊云科技产品测评』活动征文|借助AWS EC2搭建服务器群组运维系统Zabbix+spug

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道。 本文基于以下软硬件工具: aws ec2 frp-0.52.3 zabbix 6…

Web之JavaScript(jQuery)笔记

Web之HTML、CSS、JavaScript 三、JavaScriptJS调试变量自定义函数数据类型及转换运算符优先级内置函数数组事件DOM(Document Object Model 文档对象模型)jQuery Web之HTML笔记 Web之CSS笔记 三、JavaScript JavaScript(简称“JS”)是一种轻量级的面向对…

心怀祖国放眼世界 爱国人士华国中应邀参加美国旧金山2023(APEC)峰会

据相关媒体美国旧金山报道:2023亚太经合组织(APEC)领导人非正式会议将于11月15日至17日在美国旧金山召开。11月11日,本年度APEC高级财政官员和部长会晤在旧金山率先启动,APEC CEO峰会将于11月14日至16日开幕。著名爱国人士、亚太一…

《向量数据库指南》——亚马逊云科技向量数据库揭秘:点亮数据未来!

在我们讨论亚马逊云科技向量数据库之前,我们必须先搞懂向量数据库。 那么,向量数据库是什么呢?简单来说,向量数据库就是一种专门用于处理和查询向量数据的数据库。与传统数据库以表格形式组织和存储数据不同,向量数据库采用多维数值数组的形式处理和存储数据。它的主要目标…

和解电话(匿名电话)/情侣拉黑联系电话/虚拟号/虚拟中间号/拉黑联系项目代码

和解电话&#xff0c;又名匿名电话 使用中间号转接到被叫人&#xff0c;不显示呼叫人号码&#xff0c;类似美团隐私号 呼叫人A->中间号B->被叫人C 演示地址&#xff1a;微信打开(http://sms.test.4php.top/sms/phone) 实现代码如下 <section class"section&q…

图像分类(四) 全面解读复现GoogleNet_InceptionV1-V4

论文解读 InceptionV1 前言 论文题目: Going Deeper with Convolutions Googlenet论文原文地址:https://arxiv.org/pdf/1409.4842.pdf 之前看过VGG的论文&#xff08;VGG精读直达&#xff09;。当时VGG获得了 2014 ILSVRC 图像分类的第二名&#xff0c;今天来看一下第一名…

【linux网络】解读FTP文件传输服务器配置,揭秘百度云下载限速原理

目录 一、FTP文件传输协议 1.1FTP工作原理 1.2两种模式介绍 1.3FTP状态码 1.4FTP的三种用户分类 二、vsftpd软件的介绍 2.1服务端介绍 2.2不同操作系统下的客户端登录操作 三、vsftpd的常见配置 3.1修改默认的命令端口 3.2限制匿名用户登录&#xff08;系统原本是默…

鸿蒙:实现两个Page页面跳转

效果展示 这篇博文在《鸿蒙&#xff1a;从0到“Hello Harmony”》基础上实现两个Page页面跳转 1.构建第一个页面 第一个页面就是“Hello Harmony”&#xff0c;把文件名和显示内容都改一下&#xff0c;改成“FirstPage”&#xff0c;再添加一个“Next”按钮。 Entry Compone…

[每周一更]-(第73期):介绍容器监控工具-CAdvisor

CAdvisor是Google开源的一款用于展示和分析容器运行状态的可视化工具。通过在主机上运行CAdvisor用户可以轻松的获取到当前主机上容器的运行统计信息&#xff0c;并以图表的形式向用户展示。 命令行监控Docker容器-docker stats 访问地址 http://localhost:8080/containers/ …

ADS村田电感.mod(spice netlist文件)和.s2p模型导入与区别

ADS村田电感.mod&#xff08;spice netlist文件&#xff09;和.s2p模型导入与区别 简介环境过程s2pspice netlist&#xff08;.mod文件&#xff09;导入和结果对比 简介 记录了ADS村田电感.mod&#xff08;spice netlist文件&#xff09;和.s2p模型导入与区别 环境 ADS2020 …

安顿APP3.0全新升级,引领智能穿戴健康革新,专注预警疾病风险

随着人们生活水平的提高和工作压力的增加&#xff0c;心脑血管疾病已经成为现代社会的严重问题&#xff0c;特别是心梗、脑卒中等疾病已经开始夺去年轻人的生命。 据报道&#xff0c;近年来&#xff0c;多位年轻人因心脑血管疾病突发去世&#xff0c;如42岁的知名男演员、30岁的…

基于猕猴Spike运动解码的不同解码方法性能对比

公开数据集中文版详细描述 参考前文&#xff1a;https://editor.csdn.net/md/?not_checkout1&spm1011.2124.3001.6192神经元Spike信号分析 参考前文&#xff1a;https://blog.csdn.net/qq_43811536/article/details/134359566?spm1001.2014.3001.5501神经元运动调制分析 …

【MATLAB源码-第83期】基于matlab的MIMO中V-BALST结构ZF和MMSE检测算法性能误码率对比。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 在多输入多输出&#xff08;MIMO&#xff09;通信系统中&#xff0c;V-BLAST&#xff08;垂直波束形成层间空间时间编码技术&#xff09;是一种流行的技术&#xff0c;用于提高无线通信的数据传输速率和容量。它通过在不同的…

遥感数据

在研究中&#xff0c;我们常需要遥感数据。在下面的网站中&#xff0c;可以得到遥感数据。 EarthExplorer (usgs.gov)https://earthexplorer.usgs.gov/登陆网站&#xff1a; 通常&#xff0c;在Additional Criteria中&#xff0c;可以下载遥感数据。 不过&#xff0c;这个选项…

集合框架面试题

一、集合容器的概述 1. 什么是集合 集合框架&#xff1a;用于存储数据的容器。 集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。 任何集合框架都包含三大块内容&#xff1a; 对外的接口、接口的实现和对集合运算的算 法。 接口&#xff1a;表示集合的抽象数据…