linux命令集

linuk安装教程:

下载下来的ubuntu镜像文件即使是压缩文件也不要解压,直接利用.iso压缩文件作为镜像文件建立虚拟机即可

vmware workstation player下载链接

下载使用版,后面用许可证即可。

ubuntu 下载

ubunt镜像下载

ubuntu桌面版和服务器版

ubuntu20服务器版安装教程

ubuntu20桌面版安装教程

桌面板安装教程



 

镜像选择服务器版本的,才能自己安装。

注意:

如果安装之后出现--Operatoe system cennot found,这是因为你下载的镜像文件错误,镜像文件一般是几个G。

linux安装之后需要进行的配置:

1:下载文本编辑器gedit:gedit 是一个自由软件。 这是 Linux 下的一个纯文本编辑器,

2:更新ubuntu的源,提高网速:网上教程

方法:a:用gedit   b:用nano   c(最简单):用vim

将国内源替换外国源,注意不要在命令行模式下粘贴,否则粘贴不完整,应该在输入模式下粘贴,保存文件并退出,记得执行:

sudo apt-get update进行源的更新。更新成功的标志:

Reading package list ... Done

(注意版本的对应)

源文件:

cd /etc/apt

复制和改变都要在root用户权限下。

阿里源:

centos可用以下源:

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

ubuntu20.04可用以下源 :

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

3:软件更新:sudo apt-get update

换源成功的标志:

4:下载编译器gcc:sudo apt install gcc

5:检查软件是否需要更新:sudo apt-get upgrade

蓝色为:目录            白色为:文件

ubuntu终端背景颜色设置

链接

怎么把软件添加到收藏夹或者显示应用程序

链接1

链接2

在应用程序中搜索就可以添加到收藏夹

虚拟机的中文路径问题

在虚拟机中不要使用中文路径,否则会出现一些问题,比如某些选项是灰色的,不可用。

ls

ll

ll是ls -l的缩写版,有的系统识别不了ll,需要用ls -l

ls -l:(l是long的首字母)列出某个目录中每个文件的详细资料

ls -a:访问当前目录下的所有目录和文件,包括隐藏和非隐藏。

ls -al:-l和-a的显示当前目录和文件的详细资料

drwxr-xr-x  2 pi   pi   4096 Apr  8  2019 Pictures

drwx------  3 pi   pi   4096 Sep 17 14:11 .pki

-rw-r--r--  1 pi   pi    675 Apr  8  2019 .profile

红的三个为文件和目录名

d:代表目录   -:代表文件

ls -f*:列出当前目录以f开头的文件

ls -lh:以人性化的方式显示文件大小

mv

mv dir1 dir2

dir2不存在,表示对dir1重命名;

dir2存在,表示将dir1移动到dir2下;

man 2 函数名:用于查看函数相关信息

Linux大量代码移动:

命令行模式按v进入VISUAL状态,上下键选中区域,shift+</>.

重启虚拟机网络配置:

当你修改了网络配置文件时,必须要重启网络,否则ifconfig看不到网络信息

ubuntu20.4重启命令:sudo netplan apply

vim/vi三种工作模式:

编辑模式

命令模式

末行模式

 运行文件输入错误,怎么删除:

ctrl+u

删除:

[n]x:删除光标后n个字符

[n]X:删除光标前n个字符

D:删除光标所在位置及之后的一行字符

dG:删除光标及之后所有文件的字符

d0:删除本行开始到光标前一个位置的字符

dgg:删除文件开始到光标前一个的所有字符

撤销:

u:撤销上一次操作,

按两次就是撤销上两部的操作

:再执行上一次操作,[n].就是执行上一次操作n次

和系统有关的命令

Linux系统文件的一般大小为多少

ulimit -a

查看系统信息

uname

显示操作系统信息,例如内核版本、主机名、处理器类型等

链接

linux文件系统的层次结构

绝对路径:

从根结点到目标文件或者目录的路径

相对路径:

从某一个目录到目标目录或者文件的路径

mkdir

mkdir 目录名-----要求目录一定要存在

mkdir -p 目录或者目录路径-----如果目录不存在就创建

touch

touch 目录或者文件名-----要求目录或者文件一定要存在

touch没有-p选项,touch指定的目录一定要存在

文件查找的四种方式

which命令

功能:查找某个可执行文件(命令)的绝对路径,可以查找文件,命令等,比find简单,好用。
备注:which只能够查找PATH环境变量中有的可执行文件。这个命令我们还是比较常用的,当我们不知道某个命令的绝对路径的时候,用which查找就很容易知道了。
命令格式:which 命令
命令参数:
-n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名
-p  与-n参数相同,但此处的包括了文件的路径
-w  指定输出时栏位的宽度
-V  显示版本信息

whereis 文件名

也是用来查找文件和目录的

比如查找MYSQL的安装路径

root@wujinyou:/home/wujinyou# whereis mysql
mysql: /usr/lib/mysql /etc/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

以上两种方式都寻找path记录的文件或者命令,如果是普通文件,用find.

find

 格式:find pathnames expressions actions

pathnames:指定要寻找的文件路径

expressions:指定要操作的类型:

 指定文件或者目录,或者其他行为:

注意:find后面直接加文件名是指在当前目录寻找

如果find后面直接加的文件名不在当前目录是找不到的,会报错的

find / -name mysql

如何查找一个词的所有有关文件

find / -name "*mysql*"

//使用通配符

realpath

给它一个文件的相对路径,返回一个文件的绝对路径。链接

 mktemp---创建临时文件或者目录

链接

Linux 使用 /tmp 目录来存放不需要永久保留的文件。使用 mktemp 可以在 /tmp 目录下创建一个tmp.开头的后接十个随机字符的临时文件或目录。

mktemp命令用于安全地创建一个临时文件或目录,并输出其绝对路径的名称。

 临时文件和目录会自动删除吗

linux三剑客

三剑客的作用:

文本处理无非是对文本内容做查看、修改等操作。本章将介绍Linux中常用的文本处理命令三剑客。

grep:

过滤

过滤出文件中存在指定字符串的

grep "struct student" ./SQ_copy.cpp

操作目录时,需要加上-r选项

用处

1,字符串查找;

需要忽略大小写 -i

sed

1,数据放入缓冲区处理,不是处理原文件,处理结果直接输出;

2,每次处理一行;

格式:

sed 选项 ""

用处

1,字符串替换;

awk

格式

awk '匹配规则{执行命令}'

匹配规则---匹配文本中行的规则

执行命令---对满足条件的行进行匹配的规则

整个脚本命令是用单引号('')括起,而其中的执行命令部分需要用大括号({})括起来。

在 awk 程序执行时,如果没有指定执行命令,则默认会把匹配的行输出;如果不指定匹配规则,则默认匹配文本中所有的行

awk的分隔符:

在 awk 中,默认的字段分隔符是任意的空白字符(例如空格或制表符)。 

awk读取一行文本,可以通过分隔符获取各个单词或者独立数据

awk多条执行命令怎么放在一起

要在命令行上的程序脚本中使用多条命令,只要在命令之间放个分号即可

awk执行命令中的字符串

awk中的字符串不同于shell特性,字符串中除了转义字符,其他的都是字符而已,不需要解析:

作用:

管道+awk

通过管道将

awk怎么输出一行的所有单词

用awk判断从文件读取的IP地址是否正确

-F指定awk以什么作为分隔符

awk统计一行有多少个单词

wc统计单词个数

awk用于数学计算

awk执行指令中可以定义变量和使用变量

[15:30:04][root@localhost:~]# awk 'BEGIN{print 2+3}'
5
[15:30:13][root@localhost:~]# awk 'BEGIN{print 2*3}'
6
[15:30:17][root@localhost:~]# awk 'BEGIN{print 2/5}'
0.4
[15:30:31][root@localhost:~]# awk 'BEGIN{print 5%2}'
1
[15:30:45][root@localhost:~]# awk 'BEGIN{print 5**2}'
25
[15:30:52][root@localhost:~]# awk 'BEGIN{x=5;y=2;print x-y}'
3
[15:31:27][root@localhost:~]# awk 'BEGIN{x=1;x++;print x}'
2
[15:31:46][root@localhost:~]# awk 'BEGIN{x=1;x+=1;print x}'
2
 

awk更多

Linux网络下载文件

wget:

这个命令用来从web网站上直接下载文件,有了这个文件,只要知道文件的网址,就可以直接在Linux上直接下载文件,而不用从windows上下载文件,再上传到Linux

详细链接

 linux打包和压缩文件和目录:

归档(打包)命令:tar 

归档就是将多个文件或者目录打包成为一个文件,存放再磁盘中,方便文件或者目录丢失时,可以恢复。

归档文件名使用相对路径

(注意区分归档文件和被归档文件)

tar 命令的语法格式:

tar [命令选项]   归档文件 [被归档文件...]

几个tar命令常用的选项:

f---只要有tar的地方必有f

c,v

t---查看归档文件中的内容

x---回复归档文件中的文件和目录

注意:回复只能回复归档时的文件状态,归档之后的修改会丢失。

ubuntu下载vscode

链接

一步步执行以下代码就行

sudo apt update
sudo apt install software-properties-common apt-transport-https curl

curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"

sudo apt update
sudo apt install code

压缩文件:gzip

如果gzip后跟文件名,那么压缩之后原文件就不在了

gzip后可以有多个文件,即同时压缩生成多个压缩文件,但是gzip之后不能直接是目录,如果要压缩目录中的文件  -r

解压命令:gunzip filename

文件解压

linux压缩文件有多种方式:链接

linux上的文件为什么不能在Windows上解压之后再传上去

如果tar -zcxf用不了,就不需要z;

gzip:invlaid magic

解压最好用 -v选项,因为可以看到解压的详细信息。

目录:

注意:根目录(/)下的home目录并不是家目录,home目录是用来存放用户家目录的一个目录,你的家目录就是你登录虚拟机所处的目录

目录重命名:

mv 原目录名  新目录名

文件操作命令

查看文件大小

文件重命名:

cp 原文件名  新文件名

wc

word conut

用于显式文件的行数,单词数和字符数,wc 文件名输出的就是行数,单词书,字符数。

用wc统计一个字符串的长度

wc加“-L”选择表示输出最长行

sed

读取文件某行,删除文件某行,替换文件某行

链接

sed只是读取某行放入临时缓冲区修改,输出到屏幕,并不会修改文件。

除非加上-i选项:

-i 表示的是替换并直接修改文件;

文件权限

chmod u+x file

+就是加入权限

chmod u-x file

-就是去除权限

sync

shell编程每一步需要写入磁盘的数据之后都要加sync,要不然保存不进去。

sync--synchronnization同步

sync 命令可以强制将内存中的文件缓冲写入磁盘,更新块信息。

Linux 系统中欲写入硬盘的资料有的时候为了效率起见,会写到 filesystem buffer 中,这个 buffer 是一块记忆体空间,如果欲写入硬盘的资料存于此 buffer 中,而系统又突然断电的话,那么资料就会流失了,sync 指令会将存于 buffer 中的资料强制写入硬盘中。

创建的文件不存在了

md5sum

生成文件校验码,查看文件是否被更改过。

链接

 head查看文件指定前n行

-n

-n[n]

 tail查看文件倒数第n行数据

同上

tail在大数据中查看一个文件动态变更的命令:

tail -f 文件名

 more

比cat更好用的命令

less

less可以用上下键向上向下移动一行。

more可以用来查找字符串,但是不会标记,但是less会标记。

选项:

g    到第一页

G   到最后一页

查找文件指定字符串

/字符串  (回车)

grep统计字符串在文件中出现的行数

怎么统计一个字符串在文件中出现在几行

软件包命令

apt

软件包管理工具-----下载,删除等

apt-get remove

会删除软件包而保留软件的配置文件


apt-get purge

会同时清除软件包和软件的配置文件

如果一个软件包的有关文件太多,不要用rm命令删除,直接用以上两个命令,使用通配符,直接删除:

apt-get remove "*mysql*"

//删除mysql所有文件

尽量使用rm,apt的这些命令少用,慎用。

apt--unable

原因:

没有办法修复缺失的软件包 。

说明你的镜像源太老了,需要换镜像源了。

ubuntu查看软件包,删除软件包

Ubuntu 中可以使用命令行和图形用户界面 (GUI) 两种方式来删除已安装的软件。

命令行方式:

1. 打开终端 (Terminal) 窗口

可以按下 `Ctrl + Alt + T` 快捷键,或者通过 Application Launcher 菜单 -> "System Tools" -> "Terminal" 打开终端窗口。

2. 确定要删除的软件包名称

你可以在终端中使用 dpkg 命令或 apt-get 命令来确定你要删除的软件包的名称,例如:

```
dpkg --list | grep <软件包名称>
```

```
apt list --installed | grep <软件包名称>
```

3. 删除软件包

在确定要删除的软件包的名称后,可以使用以下命令来删除软件包:

```
sudo apt-get remove <软件包名称>
```
该命令将删除已安装的软件包,但是保留其配置文件和依赖项。如果想完全删除软件包,可以使用以下命令:

```
sudo apt-get purge <软件包名称>

linux重定向:

(输出)重定向符号:>

实质:将输出到标准输出的内容再输入到目标文件

1,一个>代表覆盖

2,两个>>代表不要覆盖,追加

eg:

1,

wujingyou@laowu:~/testfile$ cat test1.c > cdx.c
wujingyou@laowu:~/testfile$ cat cdx.c
dfbch
sdfvdbdv
dfhbdd
2,

wujingyou@laowu:~/testfile$ cat test1.c >> cdx.c
wujingyou@laowu:~/testfile$ cat cdx.c
dfbch
sdfvdbdv
dfhbdd
dfbch
sdfvdbdv
dfhbdd
 

tree

tree命令用来查看文件和目录存储结构

tree 命令需要下载

编辑命令:

gedit:

如同window的记事本,gedit必须在Linux里面才能打开,inux外部打不开

mv:

mv -n  保留重复原文件,不要覆盖

cp:

cp -n  保留重复原文件,不要覆盖

当需要mv或者cp的目录下还有目录时,仅仅使用以上两个命令不足,会报错:

解决办法:加上目录操作的选项 -r

cp -nr

mv -nr

复制被改动的文件

cp -i

i:intractive--相互影响的

如果加上-i选项就是要求进行复制时,如果遇到可能被覆盖的文件或者目录时进行提示,如果用户输入n就是不要覆盖,输入y就是覆盖文件

mkdir

mkdir -p  后面多级目录

递归创建多级目录,即使目录不存在,也层层创建

touch

如果touch命令要生成的文件已经存在,touch命令不会覆盖存在文件,也不会生成新文件,只会修改当前文件的时间戳(修改文件的时间)

useradd

新建用户必须在root用户下

简历用户之后产生警告

方法

删除用户

userdel  -r 用户名

链接

su:

switch user

切换用户

第一次切换到root用户可能切换不了,执行以下:

sudo passwd root

输入密码---回车

再次输入密码--回车(记住自己的密码)

su - root 

就登陆了

退出:  exit

特别注意:当要关闭虚拟机时,一定要退出超级用户,否则可能会无法再登陆。

linux平台文件传输方式

1,scp(远程拷贝文件)

scp:scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。. 可能会稍微影响一下速度。

scp CLC@192.168.43.172:/home/CLC/filecc1.cpp .

链接

2,Linux和windows实现文件拖拽

安装vmware tools工具就可以

链接

注意:

执行sudo apt-get install open-vm-tools-desktop -y之后需要重启,vmware tools才有效。

NET网络模式下,无法在windows和ubuntu之间拖拽文件

在 VMware Workstation Player 中,如果虚拟机的网络适配器设置为 NAT 模式,那么虚拟机的网络客户端隔离选项可能会被禁用。这是因为 NAT 模式下,虚拟机使用主机的 IP 地址来进行网络通信,所以客户端隔离选项无法生效。

如果你想启用客户机隔离,可以尝试将虚拟机的网络适配器设置为桥接模式。在桥接模式下,虚拟机将直接连接到局域网中,并获得自己的 IP 地址,客户机隔离选项可以正常启用

怎么生成ubuntu桌面的显示应用程

sudo apt-get install open-vm-tools-desktop -y

telnet

linux中telnet命令用来登录远程开启telnet服务的设备,登录远程设备之后就可以操作远程设备了。

ping:

验证网络是否相通

显示行号和取消行号:

显示行号
:set nu

取消

:set nonu

sudo

更新:sudo apt upgrade

更新某个软件:sudo apt upgrade 软件名

find寻找文件或者目录:

格式:find pathnames expressions actions

pathnames:指定要寻找的文件路径

expressions:指定要操作的类型:

 指定文件或者目录,或者其他行为:

注意:find后面直接加文件名是指在当前目录寻找

如果find后面直接加的文件名不在当前目录是找不到的,会报错的

find / -name mysql

如何查找一个词的所有有关文件

find / -name "*mysql*"

//使用通配符

寻找linux原有目录

usr和etc从根目录找

cd  /etc

关于进程/线程的命令

kill命令杀死正在运行的进程:

kill -l查看所有kill发送的信号

 kill -9是什么意思:

发送结束指定进程的信号

ps--process status

1,查看正在运行的程序(查看当前进程),找出进程的ID号---pid

最常用的选项:

ps -ef

2,通过查看进程,查看文件的安装路径

查看mysql:

wujinyou@wujinyou:~$ ps -ef | grep mysql
mysql       1128       1  0 01:28 ?        00:00:36 /usr/sbin/mysqld
wujinyou    5136    1492  0 03:55 pts/0    00:00:00 grep --color=auto mysql

kill pid

就可以杀死进程

linux网络

netstat

查看端口号

# 先查看进程号
ps -ef | grep 进程名

# 查看进程占用的端口号
netstat -nltp | grep 端口号

-n:以数值的形式显示IP地址
-t:tcp
-p:进程

ping

ping有发送无接收

在linux下ping不通主机主要有两种原因

1.两个系统的ip不在同一个网段下
2.没有关闭被连接端的防火墙

链接

为什么两台虚拟机的IP不在一个网络地址也可以ping通

如果A ping通B,A就可以scp到B。如果B ping不通A,B就不能scp到A。

可能是因为你使用的是虚拟化软件(如VMware、VirtualBox等),它们支持网络地址转换(NAT)功能,可以通过NAT路由技术来实现虚拟机与宿主机之间的通信。NAT技术可以将虚拟机的私有IP地址映射为公共IP地址,使得虚拟机可以通过宿主机访问外部网络。

在这种情况下,如果两台虚拟机的IP地址处于不同的网络地址,它们之间的通信可能会被虚拟化软件的NAT技术所转换,使得它们在同一虚拟网络内,从而可以ping通彼此。但是需要注意的是,这种方式下通信的效率可能会比较低下,且不适用于所有的网络环境。

另外,如果两台虚拟机使用了桥接模式或直通模式进行连接,它们的IP地址必须在同一网络地址下,否则无法建立通信连接。

ubuntu几种网络连接方式的区别

vmnet0,vmnet1,vmnet8这些是虚拟机的虚拟交换机,用来实现虚拟机的网络连接。

net模式

局域网问题:

这种模式,虚拟机会创建属于自己独立的局域网(和主机不同),拥有自己独立的IP。

外网关系:

虚拟机在外部网络中不必具有自己的IP地址。从外部网络来看,虚拟机和主机在共享一个IP地址,默认情况下,外部网络终端也无法直接访问到虚拟机。这就是为什么使用这种模式时,外部ping不通虚拟机的原因。而net模式下,虚拟机和外网通信需要主机作为中间层,利用net网络地址转换技术帮助虚拟机和往外通信。

虚拟机向外部网络发送的请求数据"包裹",都会交由NAT网络适配器加上"特殊标记"并以主机的名义转发出去,外部网络返回的响应数据"包裹",也是先由主机接收,然后交由NAT网络适配器根据"特殊标记"进行识别并转发给对应的虚拟机

桥接模式

局域网问题:

配置桥接模式,让虚拟机和主机拥有一样的网络地址,也就是在同一个局域网中。虚拟机也会占用局域网中的一个IP地址,并且可以和其他终端进行相互访问。

和外网的关系:

将虚拟机的虚拟网络适配器(虚拟交换机)与主机的物理网络适配器进行交接,虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络。

vmnet0相当于什么

仅主机模式:

详细链接

链接

没有vmnet0桥接模式

方法1:

还没有就是受之前安装的vmware的影响:

方法2:

链接

修改IP

静态IP和动态IP的区别

静态 IP 和动态 IP 都是网络中的 IP 地址,两者主要的区别如下:

1. 分配方式不同:动态 IP 由 DHCP 服务器自动分配,而静态 IP 则需要手动设置。

2. 稳定性不同:静态 IP 地址是固定的,不会随意更改,因此在网络中的稳定性相对更高。而动态 IP 地址则会随着 DHCP 服务器的重新分配而变化,网络稳定性较低。

3. 安全性不同:由于静态 IP 地址不会随机更改,因此被攻击的概率比较高。而动态 IP 则可以通过重新分配 IP 地址来减少攻击风险。

4. 适用性不同:静态 IP 适用于需要远程连接的服务器、需要 DNS 解析的网站等需要 IP 地址稳定的场景,比如企业内部网。而动态 IP 适用于普通用户家庭使用等不需要 IP 地址稳定的场景。

总之,动态 IP 地址的分配方式更加方便,可以充分利用 IP 地址资源,适用于不需要 IP 地址稳定性的场景。而静态 IP 则适用于需要 IP 地址稳定性、需要远程连接、需要 DNS 解析等场景。

linux的IP是静态IP还是动态IP

无论是 Windows 还是 Linux 操作系统,都可以使用静态 IP 或动态 IP 进行网络连接。在默认情况下,两个操作系统都是使用动态 IP 地址分配方式,即使用 DHCP 自动获取 IP 地址。但是,用户可以手动设置为静态 IP 地址分配方式。

对于 Windows 操作系统,在控制面板中的“网络和共享中心”处选择“以太网”或“Wi-Fi”(根据实际网络连接情况选择),找到“属性” -> “Internet协议版本4(TCP/IPv4)” -> “属性”,可以选择“自动获取 IP 地址”或“使用下面的 IP 地址”进行设置。

在 Linux 操作系统中,可以通过编辑网络配置文件/etc/network/interfaces来设置静态 IP 地址,或者使用命令行工具ifconfig或ip来手动设置 IP 地址。

(动态IP还是静态IP,取决于系统IP是DHCP服务器自动配置--动态,还是用户手动配置--静态)

linux配置静态IP

tcpdump

什么是同一个网段

网络地址(网络号+子网号)相同

查看和改变进程,线程数量的命令

查看可创建的最大进程数

 查询已经使用的进程数量

 ulimit -a直接可以查看很多限制信息

 更多详细信息

rpm命令


可进行软件包的管理:安装、查找、卸载等。

1、安装 :
rpm -vih 软件包.  i--install

2、 查看已经安装的rpm包
rpm -qa  q--query查询 a--all

3、 查看特定的包,比如telnet
rpm -qa|grep telnet

4、 卸载:
rpm -e 包名(先用rpm -qa查找出特定的包名字)

top

它对于所有正在运行的进行和系统负荷提供不断更新的概览信息,包括系统负载、CPU利用分布情况、内存使用、每个进程的资源占用情况等信息。

管道|

管道操作符的作用:连接多个命令

实质:将前一个命令的输出作为后一个 命令的输入(将前一个名的输出重定向到后一个命令的输入)

who | wc

请解释以上命令:

who:

wc是用来查询文件的行数,单词数和字符数的,所以:

who | wc -l

统计当前用户数量 

-l 是wc的选项,只显式行数(line)

who

查看当前系统有哪些用户

who am i(whoami)

产看当前登陆这个系统的用户

w

和who差不多,只是信息更详细

users

显式系统登陆用户,只有用户,没有其他信息 

grep

按照指定的模式对过滤对象的内容进行过滤然后输出

输出的是满足条件的整行

语法:

grep 选项 模式 文件名

选项可以省略

^a:代表以字母a开头

78$:代表以78结尾

如果要匹配一个字符串,模式的位置直接输入字符串,引号可要,可不要

选项:

注意-i选项,因为grep默认模式中是区分大小写的 

 解释以上语句:

从delete_file.c文件中过滤出以1或者2开头,中间任意匹配两个字符,以4结尾的行

用户密码修改--passwd:

修改登录用户密码:

1,登陆用户--直接运行命令passwd

按照提示进行修改就可以了。

如果中途你发现不想修改,按回车键(enter)退出,你按ctrl+c是没有用的

2,如果passwd后面加用户名,则要修改后面指定的用户的密码。

修改root用户密码:

eg:sudo passwd root

直接运行sudo passwd也是修改root用户密码。

passwd和sudo passwd

passwd---修改当前用户(登录用户)密码;

sudo passwd---修改root用户密码。

显示用户密码状态:

passwd -S 用户名

添加用户--useradd:

useradd dapl

用户名为dapl

双杠--和单杠-的区别:

双杠--

后面加单词命令

单杠-

后面加字母

eg:

--status

-S

需要下载的命令:


make
这个命令不是ubuntu自带的,需要apt install 下载,才可以使用


 

Linux分屏:

末行模式下进行分屏:

水平分屏::sp     或者:split

垂直分屏::vp  或者:vsplit

退出:在每一个屏中:wq退出

屏幕切换:上下却换:ctrl+w,左右切换:ctrl+ww

sp 后面可以加要打开并分屏的文件名,如果是在本目录下,可以直接输入文件名,如果不是在本目录下,就要绝对路径,其他命令也一样

多行注释:

按ESC进入命令模式--->Ctrl+v进入visual block模式--->上下移动选择要注释的行--->选择完毕按大写的"I"进入输入模式--->输入//--->再按ESC退回命令模式,多行就被注释了

注意,一定要是大写的I,小写的不能再此情况下静进入输入模式

取消多行注释:

按ESC进入命令模式--->Ctrl+v进入visual block模式--->上下移动选择要取消注释的行,也可以左右移动选择两个//--->点击x就可以删除了

linux SSH协议:

ssh:SSH是Secure Shell Protocol的简写,先对联机数据包通过加密技术进行加密处理,加密后再进行数据传输,确保了传递的数据安全。

ps -e | grep ssh

如何只有ssh-agent,则说明没有启动server

如果看到sshd那说明ssh-server已经启动了。
如果没有则可以这样启动:sudo /etc/init.d/ssh start或sudo service ssh start

找不到ssh

就是没有下载ssh

下载链接

不同操作系统文件传输:

1,filezilla

传输方式:ftp

filezilla软件也是ftp文件传输的一种方式。

注意:

1,使用filezilla进行连接之前先ping以下,两端的网络是否相通

2,连接时首先使用ssh协议,注意点击连接时,弹出的窗口要选择那个框框。

3,连接不上先建站点,选好传输协议,再连接。

4,传输时,单机文件直接拖

filezilla安装教程

2,scp

如果对端refuse,就是没有ssh协议,或者没有开启ssh,看下面的ssh。

scp ubuntu到windows---connect refused

下载openssh客户端和服务端,开启ssh服务。---链接

scp windows用户名查看也使用以上链接。

RUID, EUID,SUID

表示实际用户ID,有效用户ID,设置用户ID。另外用户ID是shell脚本整形变量,保存整型数。

链接

EUID

linux文件挂载----mount

什么是挂载

mount -t nfs a b

将远端的a目录挂载到本端的b目录

就可以在本端的b目录下操作a目录下的文件和目录。

mount实现挂载的过程

链接1

链接2

链接3

什么是文件系统类型

链接1

链接2

文件系统不好理解,文件管理系统就好理解

操作系统中负责管理存储文件信息的软件机构称为文件管理系统

nfs-----network file system

#挂载
original_des_path=$des_path
is_web=0
if [[ $des_path == "web" ]]; then
# 挂载nfs文件系统,并打包到文件系统
des_path=$(mktemp -d)#生产临时挂载目录
echo "nfs 挂载到 ${des_path}"
mount -t nfs 192.168.33.100:/test/web $des_path        #通过nfs将远程的web挂载到指定的目录
is_web=1
fi

echo "tar --> ${des_path}"
tar -cf $des_path/cx_servo.tar.gz cx_servo    #在挂载目录下打包cx_servo目录为压缩文件,此时压缩文件将存在于远端。

if [[ $is_web -eq 1 ]]; then
# 取消挂载
umount $des_path
echo "umount $des_path"
echo "rm -rf $des_path"
rm -rf $des_path
fi

xshell

xshell链接linux

如果新建连接没有跳出用户名和密码界面,问题就出在以上的ssh问题中

linux防火墙

ubuntu

1, ---关于ufw

查看防火墙:

sudo ufw status

关闭防火墙:

sudo ufw disable

开启:

sudo ufw enable

2,firewalld

执行:

systemctl status firewalld
出现:

Unit firewalld.service could not be found.

表示防火墙没有安装

ubuntu yun改为sudo apt

iptables firewalld ufw 防火墙工具

防火墙对linux本身的影响

linux如果没有防火墙或者防火墙开启,无法网络通信

app安装

QQ

linux系统本身的知识

ubuntu中usr的lib和usr/local/lib的区别

链接

/usr/bin:几乎所有的系统可执行文件都会安装在这里
/usr/local/bin:则是可以存放一些系统用户自己特定的可执行文件,不用担心会被系统升级之类的行为覆盖,破坏,这个目录不是必须的

vi编辑器方向键和退格键问题

链接

sudo apt-get install 报错 Failed to fetch

网络问题。

1,可能是你配置的静态IP有问题,改为动态IP。

2,DNS问题,链接

.bashrc文件

bash shell(简称bash)

Bash shell 是一种在 Unix 和类 Unix 操作系统中广泛使用的命令行解释器,也是 Linux 操作系统默认的命令行解释器。Bash 是 GNU 项目中的一部分,其名称 Bash 是“Bourne-again shell”的缩写,是 Bourne Shell(sh)的升级版。

作为命令行解释器,Bash shell 可以解释和执行用户通过命令行输入的各种命令和脚本。

Shell 脚本程序可以通过在首行指定 shebang(也称为解释器调用),来告知操作系统用哪个解释器来执行该脚本。例如,指定 shebang 为 `#!/bin/bash`,则该 Shell 脚本程序将使用 Bash shell 来解释和执行。

为什么在.bashrc中定义命令别名之后就可以在任何目录下使用

当在 `.bashrc` 文件中定义命令别名之后,可以在任何目录下使用是因为在 Bash shell 中,系统会在启动时读取一些默认启动文件,包括 `.bashrc` 文件。也就是说,一旦 Bash shell 启动,并且`.bashrc` 文件中定义了命令别名,那么这些别名就会被自动加载执行,随时可用。

终端输入命令---回车---bash shell获取命令,执行.bashrc文件,查看命令知否在.bashrc文件中,以及其他相关文件中,如果存在,执行命令,不存在,connot found cpmmand。

linux有关网络查询命令

netstat

netstat 命令是一个监控 TCP / IP 网络的非常有用的工具,可以查看端口以及端口占用的情况。

链接

linux怎么输入中文

下载linux搜狗包

语言配置

重启 

安装搜狗输入法之后只能输入中文--链接

ubuntu22.04配置中文输入

链接

虚拟机不正常关闭----虚拟机似乎正在使用中

链接

linux内存

文件系统根目录磁盘空间不足---扩容

链接

如果出现带钥匙的项,先选择第一级目录扩容,再选择下一级目录扩容。

cannot resize read-only file system

解决办法

如果未分配的空间不足,需要先分配磁盘空间。

磁盘空间使用完,新增磁盘

可以将旧磁盘中的数据运动到新的磁盘中,然后在旧的磁盘中映射(链接)新磁盘中的数据。

打开linux,windows卡顿

链接

windows上编写的文件在linux上运行:解释器错误:没有那个文件或目录

原因和解决办法

linux库的加载和添加

linux上以及基于linux的其他系统上,比如arm,执行某个可执行文件,找不到所需的库文件,但是库文件是存在的,什么原因,怎么办?

linux有一个环境变量,用来存储库文件的文件路径,需要这个库时,需要设置库文件路径到环境变量中;

临时设置:

LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/root/iperf-arm/lib/

永久设置:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/root/iperf-arm/lib/

需要把整个命令设置进入文件中,才会永久有效。

root用户下强制关机重启无法登录

原因:root权限下操作的文件,Linux强制关机,这些文件的用户和所属的组会保持为root,需要找到你操作的这些文件,修改文件所属的用户和组。

1,

登录界面:crl+alt+F1

进入明令界面,登录进去,找到强制关机前操作的文件。

2,

ll  文件名

看看文件的用户和组是不是改为root了,如果是:

3,

sudo chown 登录用户名:登录用户名 文件名

登录用户名:登录用户名=(用户名:组)

4,reboot

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值