linux基础 超级笔记

1.Linux系统的组成

· Linux系统内核:提供系统最核心的功能,如软硬件和资源调度。

· 系统及应用程序:文件、任务管理器。

2.Linux发行版

通过修改内核代码自行集成系统程序,即封装。比如Ubuntu和centos这种。不过基础命令是完全相同的。

3.虚拟机

给虚拟的计算机硬件配置新的os,虚拟的电脑称为虚拟机。

4.虚拟机快照

通过快照将虚拟机状态保存,以后可以恢复到这个状态。

二、基础命令

1.linux目录结构

Linux没用盘符的概念,只有一个根目录"/",所有文件都在它下面。

路径之间的层级关系使用:/来表示。eg:/usr/bin/hello.txt

2.命令基础

命令格式:command [-options] [parameter]

-op:命令的选项,控制命令的行为细节。选项可以组合使用。

para:命令的参数,用于命令的指向目标。

Linux的命令本质是可执行二进制程序。

3.ls命令

以平铺的形式,列出目录下(默认home目录)的内容。

ls [-a -l -h] [Linux路径]

-a:all展示,包括隐藏文件。

-l:竖向展示。

-h:需要和-l搭配使用,展示文件大小单位。

ls --help:

4.目录切换命令

cd:更改工作目录,change directory。

cd [linux path]

· 不写参数默认回到home目录。

pwd:查看当前所在的工作目录,print work directory。

无选项无参数。

5.文件操作命令

touch path:创建文件。

cat path:输出文件内容。

more path:分页输出文件内容,空格翻页,q退出。

mv:移动文件/夹,改名字。mv 1 2,将1移到2,如果2不存在则将1改名为2。

cp:复制,cp oldname newname。不必在同一目录中,可以加path。

rm [-r -f] p1 p2 p3...:删文件,-r表示删除文件夹,支持多个参数。支持通配符 * 模糊匹配。

ctrl + l:清屏。

rmdir:删空目录。

mkdir:创建目录。

6.查找命令

which:查看所使用的命令程序文件存放在哪里。

find path -name "filename":搜索指定文件。filename支持通配符查找。

find path -size +- n [k, M, G]:

· +-表示大于小于。

· n表示大小。

· kmg表示大小单位。

7.grep、wc和管道符

grep [-n] "关键字" 文件路径:从文件中通过关键字过滤文件。

· -n:在结果中显示匹配的行的行号。

· 文件路径:可作为内容输入端口。

wc [-c -m -l -w] 文件路径:

· -c统计bytes数

· -m统计字符数

· -l统计行数

· -w统计单词数

管道符:|

将左边命令的输出结果作为右边命令的参数。

echo "":输出。

echo ``:将内容作为命令执行,然后输出。

重定向符:

· >,将左侧命令结果,覆盖写入右侧文件。

· >>,~,追加写入。

tail [-f -num] path:查看文件尾部内容,默认查看10行。

head:同上,查看文件首部内容。

· -f:持续跟踪。

· -num:查看倒数num行的内容。

9.vim编辑器

vim path:使用vim编辑器编辑文件。

· 命令模式:所有按键都被视为命令,以命令驱动执行不同的功能。

具体指令可以自己搜。

· 输入模式:对文件内容自由编辑。

· 底线命令模式:以冒号开始,用于文件的保存退出。

三、Linux用户和权限

1.root用户

su - 用户名。switch user。

exit:退回上一个用户。

sudo 命令:为这条命令临时赋予root授权。但是普通用户没有权力使用sudo,我们需要配置sudo认证。

· 切换到root,执行visudo命令。在最后一行添加:username ALL=(ALL) NOPASSWD: ALL。然后wq。

2.用户、用户组

Linux中的权限管控分为:

· 针对用户的权限。

· 针对用户组的权限。

在root用户下:

· groupadd 组名:创建用户组。

· groupdel 组名:删除。

· useradd [-g -d] username:创建用户。-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g。-d指定用户H0ME路径,不指定,HOME目录默认在:/home/用户名。

· userdel[-r]用户名。-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留。

· id [用户名],查看用户所属组。用户名,被查看的用户,如果不提供则查看自身修改用户所属组。

· usermod -aG:用户组 用户名。指定用户加入指定组。

· getent passwd:查看系统中用户。共有7份信息,分别是:

用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)。

· getent group:查看所有组。组名:组认证:组id。

3.权限信息查看

ls -l,显示权限细节。

第一部分

权限分为10个位置

· r是读,w是写,x是执行。

第二部分是所属用户,第三部分是所属用户组。

4.修改权限

只能是所属用户或root有权修改。

chmod [-R] 权限 文件或文件夹

· -R表示对文件夹内所有文件应用相同的操作。

eg:chmod u=,g=,o= test.txt

· u代表用户,g代表组,o代表其他。

chown [-R] [用户] [:] [用户组] 文件/文件夹

· 只能root用户执行。

· -R同上。

四、

1.软件安装

必需root权限。

apt [-y] [install | remove | search] 软件名

· -y:自动确认安装

2.控制软件

systemctl start | stop | status | enable | disable 服务名

· disable / enable:关闭/打开 开机自启动。

服务包括:

· NetworkManager,主网络服务

· network,副网络服务

· firewalld,防火墙

· sshd,ssh

3.软链接

将文件、文件夹链接到其他位置。

类似快捷方式。

ln -s 参数1 参数2

把1链接到2。

4.日期和时区

date [-d] [+格式化字符串]

· 格式化字符串:控制显示的日期格式

· -d:进行日期计算

修改时区:

rm -f /etc/localtime

sudo ln -s /usr/share/zoneinfo/Asia/Shanghai/etc/localtime.

自动校准时间

apt -y install ntp

设置开机自启动:systemctl start ntpd, systemctl enable ntpd.

5.IP地址

ifconfig查看ip

主网卡:ens33

hostname查看主机名

hostnamectl set-hostname 主机名:修改主机名,需root。

域名解析:

就是通过主机名找到ip地址。

先查看本机的记录,再联网去DNS服务器。

6.配置固定IP

7.网络传输

检查指定服务器是否可联通:

ping [-c num] ip或主机名

· num是检查的次数

下载网络文件:

wget [-b] url下载链接

· -b:后台下载。

发送http网络请求,用于下载文件、获取信息:

curl [-O] url

· -O用于下载文件。

8.虚拟端口

锁定计算机上具体的程序

nmap安装:apt -y install nmap

nmap ip:查看端口占用。

9.进程管理

关闭进程

kill [-9] 进程ID

· -9强制关闭。

10.主机状态监控

top

11.环境变量

以键值对方式存储。

env查看~

echo $键:获取环境变量的工作目录。

设置环境变量:

· 临时设置,export 名=值

· 永久生效

vim修改文件

五、other

ctrl c:停止命令。

history:查看历史命令。

ctrl r:输入内容去匹配历史命令。

ctrl a:光标移动到命令开始。

ctrl e:~结束。

ctrl <-:光标左跳一个单词。

ctrl ->:右跳。

ctrl l:清屏。

.其他

· 一个dot代表当前目录,两个dot代表上级目录。

· ~:代表home目录的路径,可以直接~ls 或者 cd~。

· man + command:查看操作文档。

相关推荐
皓月盈江17 分钟前
Linux Debian安装ClamAV和命令行扫描病毒方法,以及用Linux Shell编写了一个批量扫描病毒的脚本
linux·运维·ubuntu·debian·clamav·开源杀毒
boy快快长大21 分钟前
【NebulaGraph】查询案例(六)
java·服务器·数据库
steveqobs23 分钟前
Debian-linux运维-locale配置(locale failed)
linux·运维·debian
hahaqi952732 分钟前
uniapp生成h5后发布到服务器碰到的问题解决
运维·服务器·uni-app
女王の专属领地44 分钟前
产品初探Devops!以及AI如何赋能Devops?
运维·devops
isolusion1 小时前
Springboot配置嵌入式服务器
服务器·spring boot·后端
m0_748235951 小时前
【rustdesk】客户端和服务端的安装和部署(自建服务器,docker,远程控制开源软件rustdesk)
运维·服务器·docker
m0_748239331 小时前
Linux下C++轻量级WebServer服务器 框架梳理
linux·服务器·c++
Channing Lewis1 小时前
服务器广播算法
运维·服务器·算法
Dan淡淡的心1 小时前
软路由系统 iStoreOS 中部署 Minecraft 服务器
运维·服务器·docker·我的世界