Linux学习笔记(一)

如果有自己的物理服务器请先查看这篇文章

文章目录

      • 网卡配置
      • Linux基础指令
        • ls:列出目录内容
        • cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)
        • cp:复制文件或目录
        • mv:文件/文件夹移动
        • cat:查看文件
        • vi:文件查看编辑
        • man:查看命令手册
        • more: 查看文件内容
        • less : 查看文件内容
        • nano: 文件查看
      • ps: 显示当前进程的状态
          • 参数:
          • 扩展
        • top: 监控linux的系统状况
          • 一、top前五条信息解释
          • 二、进程信息
        • df: 显示文件系统磁盘空间
        • du: 显示目录空间使用情况
      • 关于用户操作
        • whoami:显示当前登录用户名
        • useradd: 创建用户
        • uesrmod: 加入用户组
      • chmod: 权限管理
      • 挂载新硬盘
      • 别名: alias

网卡配置

如果ssh连接和yum都报错,可以查看这篇文章进行网卡配置(注意这个是CentOS的网络配置,一些属性不一样的话请参考其他系统的属性含义)

Linux基础指令

ls:列出目录内容

ls : 列出目录内容

ls

扩展:
查询文件目录中所以的文件

ls -a

查询文件中的权限,所属用户,所属组,文件大小,创建时间,文件名

ls -l

有时可以简写成ll如果不能请老实写ls -l

cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)

cd: 切换文件夹

#cd /root/dir
#cd dir
cd 文件夹路径

mkdir:创建文件夹

mkdir 想要创建的文件夹名称

rmkdir:删除文件夹(文件夹中内容必须是空的)

rmdir 想要删除的文件夹名称

扩展
关于切换文件夹(拓展)
查询当前文件夹从根目录开始的全部路径

pwd

文件路径可以是当前文件夹中的文件夹,也可以是根目录开始的全部路径
关于创建文件夹(拓展)
递归创建文件夹

# mkdir -p dir1/dir2
mkdir -p 想要创建的文件夹名称

关于删除文件夹(拓展)
如果你的文件夹中存在文件夹或者文件,是会删除报错,如何删除文件夹中有文件的文件夹

rm -r 想要创建的文件夹名称

确认删除

rm -ri 想要创建的文件夹名称

强制删除

rm -rf 文件夹名称/文件名
cp:复制文件或目录

cp:复制文件

# cp test.txt test02
# cp test /root/test/
cp 文件名 目标文件夹名称

cp -r:复制目录

# cp -r test2 test1(意思是将test2文件夹复制到test1文件夹中)
cp -r 想要复制的文件夹 想要放入的目标文件夹

注意:用户使用该指令复制目录时,必须使用参数 -r 或者 -R

复制文件,并在目标文件已存在时进行确认

#cp -i file.txt /path/to/destination/
cp -i 文件名.扩展名 目标文件夹路径

拓展
touch: 需要复制文件,肯定要有文件,所以下面是创建文件(txt文件为例)

# touch test.txt
touch 文件名称.扩展名

linux cp命令的其他指令可以查看这里

mv:文件/文件夹移动

mv:文件/文件夹移动

# mv test3 ../(将test3目录移动到上一级目录)
# mv test3 /root/dir1(将test3目录移动到指定目录)
# mv test3/test1.txt ./(将test3目录中的test1.txt文件移动到当前目录)
mv 文件夹(文件) 目标文件夹

拓展
将一个文件夹下的所有文件移动到指定文件夹

mv 源文件夹/* 目标文件夹

linux mv命令的其他指令可以查看这里

cat:查看文件

cat:查看文件

#cat file.txt
cat 想要查看目标文件.扩展名

注意: cat是查看文件中的文件内容,并不会参与编辑, 所以比如如果cat file.txt,但里面什么都没写,就不会显示内容,注意这并不是查询失败,而是没有内容所以显示什么都没看到
一般我们使用cat指令都是用来查看的, 详情请看

vi:文件查看编辑

vi: 文件查看编辑

vi 文件名.扩展名

这是linux自带的查看编辑

vim: 文件查看编辑
这是也是文件查看器

vim 文件名.扩展名

如果你的控制台报bash:vim:Not Found(bash:vim:未找到命令)错,则你需要执行以下操作

rpm -qa |grep vim

如果这条指令执行不了

yum -y install vim*

操作方式和vi一致。
常用的有ESC键推出编辑;i键进入编辑;:q退出文件;:q!强制退出;:wq:退出并保存;:wq!强制退出并保存

man:查看命令手册

man:查看命令手册

#man vi
man linux命令

q键退出查看

more: 查看文件内容

逐页显示 文件 文档内容

more -s 文件

从第 n 行开始显示文件文档内容。

#more +20 test.txt (从20行开始显示)
more +n 文件

详细指令请看

less : 查看文件内容

lessmore 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。
查看文件

# less test.txt
less 文件名.文件扩展名

ps查看进程信息并通过less分页显示

ps -ef |less

详细指令请看

nano: 文件查看

没有nano指令command not found

#centOS
yum -y install nano

可以查看这篇

ps: 显示当前进程的状态

Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。

ps -ef | grep 进程关键字

打比方查询mysql的运行状态

ps -ef | grep mysql

在这里插入图片描述
从左到右看一次是行程拥有者,PID,占用的 CPU 使用率,占用的记忆体使用率,占用的虚拟记忆体大小,占用的记忆体大小,终端的次要装置号码 (minor device number of tty),该行程的状态:,行程开始时间,执行的时间,所执行的指令

显示进程信息

ps -A

Linux学习笔记(一)_第1张图片

显示指定用户信息

#ps -u root
ps -u 用户名

Linux学习笔记(一)_第2张图片

显示所有进程信息,连同命令行

ps -ef

Linux学习笔记(一)_第3张图片

参数:

ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义

  • -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: 无法中断的休眠状态 (通常 IO 的进程)
    • R: 正在执行中
    • S: 静止状态
    • T: 暂停执行
    • Z: 不存在但暂时无法消除
    • W: 没有足够的记忆体分页可分配
    • <: 高优先序的行程
    • N: 低优先序的行程
    • L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
  • START: 行程开始时间
  • TIME: 执行的时间
  • COMMAND:所执行的指令

详细指令请看

扩展

关闭进程

kill -9 PID
top: 监控linux的系统状况

top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。

top

Linux学习笔记(一)_第4张图片

一、top前五条信息解释

top - 14:49:28 up 1:33, 1 user, load average: 0.00, 0.00, 0.00

内容 含义
14:49:28 表示当前时间
up 1:33 系统远行时间,格式为时:分
1 user 当前登陆用户数
load average: 0.00, 0.00, 0.00 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值

Tasks: 80 total, 2 running, 78 sleeping, 0 stopped, 0 zombie

内容 含义
Tasks: 80 total 进程总数
2 running 正在运行的进程数
78 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数

Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

内容 含义
0.0%us 用户空间占用CPU百分比
0.0%sy 内核空间占用CPU百分比
0.0%ni 用户进程空间内改变过优先级的进程占用CPU百分比
100.0%id 空闲CPU百分比
0.0%wa 等待输入输出的CPU时间百分比
0.0%hi 硬中断(Hardware IRQ)占用CPU的百分比
0.0%si 软中断(Software Interrupts)占用CPU的百分比
0.0 st 用于有虚拟cpu的情况,用来指示被虚拟机偷掉的cpu时间

Mem: 1922488k total, 406936k used, 1515552k free, 11940k buffers

内容 含义
1922488k total 物理内存总量
406936k used 使用的物理内存总量
1515552k free 空闲内存总量
11940k buffers 用作内核缓存的内存量

Swap: 835576k total, 0k used, 835576k free, 111596k cached

内容 含义
835576k total 交换区总量
0k used 使用的交换区总量
835576k free 空闲交换区总量
111596k cached 缓冲的交换区总量
二、进程信息
列名 含义
PID 进程id
USER 进程所有者的用户名
PR 优先级
NI nice值。负值表示高优先级,正值表示低优先级
VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR 共享内存大小,单位kb
S 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比
TIME+ 进程使用的CPU时间总计,单位1/100秒
COMMAND 命令名/命令行

Ctrl + c退出实时查看
详细指令请看

df: 显示文件系统磁盘空间
df

Linux学习笔记(一)_第5张图片

详细指令请看

du: 显示目录空间使用情况

方便阅读的格式显示的目标目录所占空间情况

# du -h test1
du -h dirName

在这里插入图片描述

详细指令请看

关于用户操作

whoami:显示当前登录用户名
whoami

在这里插入图片描述

useradd: 创建用户
#useradd username
useradd 用户名

为添加的用户指定相应的用户组

#useradd -g root tt
useradd -g 用户组 用户

创建一个系统用户

#useradd -r tt
useradd -r 用户名

为新添加的用户指定home目录

# useradd -d /home/myd tt
useradd -d 目标目录 用户名

建立用户且制定ID

# useradd caojh -u 544
useradd 用户名 -u 用户id

详细指令请看

拓展
查看所有用户

ls /home

查看用户名和密码
用户名在/etc/passwd这个文件中;

cat /etc.passwd

密码在/etc/shadow

cat /etc/shadow

如果没有访问权限,请重新启动服务器,以root用户登录
Linux学习笔记(一)_第6张图片
为了安全,系统将明文密码进行了加密。接下来我们看看系统使用了什么加密方式:

authconfig --test | grep hashing

在这里插入图片描述
Linux实用命令authconfig和authconfig-tui(备忘)

  1. 查看 autoconf、automake 是否已安装
rpm -qa|grep autoconf
rpm -qa|grep automake

Linux学习笔记(一)_第7张图片
2. 查看 autoconf、automake 对应的包

yum whatprovides autoconf automake

Linux学习笔记(一)_第8张图片
3. 安装

#按照第2部查到的源来写,不一定一定要是是这个
yum -y install autoconf-2.69-30.oe1.noarch
yum -y install automake-1.16.1-6.oe1.noarch

其实我们要安装的并不是autoconf,这只是介绍了另一种安装方式
安装authconfig

sudo yum install authconfig --skip-broken

如果安装不上也没关系,因为这只是1查询系统加密方式,一般会用SHA256加密方式
因为linux系统是单项加密所以要么暴力破解要么破解不了,所以忘记密码的小伙伴请重新设置密码

passwd 用户名

扩展
su:切换用户

# su chen(管理员切换成普通用户)
#sudo su root(普通用户切换成管理员)
su 用户名

用户名 is not in the sudoers file.
因为普通用户没有像root一样的运行权限,所以,凡是指令都要先使用sudo来执行,执行之后需要输入密码,但是出现了用户名 is not in the sudoers file.问题,解决办法

vi /etc/sudoers

增加配置, 在打开的配置文件中,找到root ALL=(ALL) ALL, 在下面添加一行

#其中xxx是你要加入的用户名称
xxx ALL=(ALL) ALL

su:拒绝权限
查看日志:tail -f /var/log/secure|grep su: 在这里插入图片描述
root为例子在这里插入图片描述

vi /etc/pam.d/su

注释这段auth required pam_wheel.so use_uid
查看
Linux学习笔记(一)_第9张图片
当前如果是是普通用户时,切换回root用户输入用户密码即可

sudo su root

如果没有访问权限,请重新启动服务器,以root用户登录
passwd:设置密码

passwd 用户名

详细指令请看

uesrmod: 加入用户组

首先要确认你的Linux有哪些组

cat /etc/group

Linux学习笔记(一)_第10张图片
root是用户组 ,x是用户组指令,1002是用户组id
注意: 创建一个用户后,linux自动会创建相关用户名的组名,比如我创建了一个没有用户的chen用户,与之对应的linux会帮我们一起创建一个不存在的chen的组名
实例

useradd chen
su chen
sudo cd test

如果非root用户使用sudo cd 目录切换不了目录(首先使用sudo su root切换到root下)

which cd 

如果出现/usr/bin/cd是正确的
那就要看文件夹的权限了

#ll /root/test
 ls -l 查看想要的文件夹(文件)

查看关于关键字的组名

# cat /etc/group|grep chen
cat /etc/group|grep 组名

在这里插入图片描述

chmod: 权限管理

#chmod 777 fileName
chmod 777 文件夹名(文件)

这个是对全部人进行开放
详细指令请看
Linux学习笔记(一)_第11张图片

挂载新硬盘

原文

  1. 使用命令查看新的硬盘是否添加成功:
fdisk -l
  1. 我们接下来对新的硬盘进行分区:
fdisk /dev/sdb
  1. 格式化磁盘分区
    再次查看一下刚刚建好的分区,使用fdisk -l命令
    开始格式化
mkfs -t ext4 /dev/sdb1
  1. 对分区进行挂载
mount -t ext4 /dev/sdb1 /挂载目录

5, 开机自启动

vim /etc/fstab

扩展:卸载磁盘

umount /dev/sdb

如果有进程在这个目录中,是卸载不了的

别名: alias

可查看

你可能感兴趣的:(linux,linux,学习,笔记)