🎉前言
🌀 你还不会捣鼓Linux吗 ~ 🤭 ~ 别着急 ~看完这篇你就OK了 ~ 。
🌀 Linux是一种非常强大的操作系统,被广泛应用于服务器、嵌入式系统等领域。随着云计算、虚拟化等新技术的出现和普及,Linux的应用越来越广泛。对于应届生来说,学习Linux具有以下几个重要性:
【提升就业竞争力】:Linux是IT行业最重要的操作系统之一,对于从事系统管理员、运维工程师等职业的应届生来说,掌握Linux技能会大大提升求职竞争力。
【增强IT技能】:Linux不仅是操作系统,还包括很多开源软件,涉及到网络、存储、数据库、安全等多个方面。学习Linux可以扩展IT技能树,提高自己的能力和水平。
【提高工作效率】:Linux具有很强的灵活性、可定制性和稳定性,可以通过脚本、命令行等方式实现自动化管理,大大提高工作效率。
【掌握开源思想】:Linux是一种开源软件,学习Linux可以深入理解开源软件的思想,了解开源社区的运作方式,从而更好地融入开源社区。
🌀总之,学习Linux对于应届生来说非常重要,具有长期的职业发展前景和广泛的应用可能性。
🌀 所以,Linux 是很重要的噢~
接下来就开始入门Linux咯 ~
🧑🎓 【Linux】 历史背景与环境搭建
🧑🎓🧑🎓🧑🎓
当然了,这篇文章是通过购买云服务器使用xshell远程连接来搭建环境的,这个好处在于方便且Linux系统在某些地方比虚拟机的好,并且出了问题随时可以在服务器上重装系统,唯一一点劝退的可能就是要付费~不过学生和新用户可以免费试用,时间还挺久的。另外一种方法当然就是使用虚拟机来搭建,网上有很多教程,随便搜都有噢 ~
🧑🎓🧑🎓🧑🎓
🧑🎓 在 【Linux】下对文件和用户的理解【浅浅了解一下】
① 对文件
- 在
Linux
系统中,所有的文件都被组织成了一个树形结构,即Linux
文件系统。- 你可以这样理解,Linux以下皆是文件~
在Linux中,所有的东西包括硬件、驱动程序、进程、网络连接等都被当做是文件来对待。这是因为Linux采用了一种文件系统的概念,将所有的硬件设备、进程、网络连接、目录与文件都以文件的形式呈现出来,用户可以像访问普通文件一样,对它们进行读取、写入和修改等操作。
这种文件系统的优点在于简化了管理和操作,用户只需要用相同的命令和方式处理所有的事物,而不必牢记不同的管理命令。Linux中所有的命令都是文件,并且都存储在硬盘上。同时,文件系统也提供了强大的权限机制和用户管理,保证了系统的稳定和安全性。
如下图是Linux文件系统概览:
总之,Linux文件系统是一个庞大的树形结构,由目录、文件和链接等各种元素组成。了解Linux文件系统的结构以及其中各种类型的文件是理解Linux系统的基础。(这些需要小伙伴们学到后面慢慢体会,这里大概知道这个意思就OK啦 ~)
② 对用户
在
Linux
操作系统中,用户是系统安全的重要组成部分,操作系统需要利用用户来管理和控制系统访问和资源的分配。Linux
的用户体系呈现出一个树形结构,由root
节点为根节点,普通用户为子节点。
① Linux
用户系统的主要功能包括:
【用户认证】:Linux 提供了多种用户认证方式,如基于密码的认证、基于密钥的认证等。
【用户权限管理】:Linux 使用基于权限的访问控制模型来控制用户的权限。每个文件和目录都具有所有者和所属组的概念,并为每个文件和目录定义了权限,可以通过 chmod 命令来管理用户的权限。
【用户组管理】:在 Linux 用户组管理中用户可以以组的方式进行授权,允许系统管理员将用户划分为不同的组。可以使用 addgroup、delgroup 等命令来管理用户组。
【自动化任务管理】:由于 Linux 是一个高度自动化的系统,多数任务都由系统自动执行。因此,用户需要使用“自动化任务管理程序”来确保一些预定的操作可以在预定的时间自动化执行。
② Linux
用户分类如下:
【Root用户】:也称为超级用户,具有系统最高权限,在系统中可以执行任何操作。但是,为了保证系统安全,使用root用户应该非常小心。
【系统用户】:这些用户是为系统运行服务而创建的用户,包括一些自动化任务。每个系统用户都有一个具体的功能,并被限制仅执行这个功能。
【普通用户】:这些用户是普通的系统用户,只有一定权限,不能执行系统管理员权限的操作。一般来说,Linux系统的大部分用户都属于普通用户。
【需要特别权限的用户】:这类用户通常是为了满足特殊的需求于是被赋予某些特别的权限,例如FTP用户、web服务器用户等。这些用户通常不具备管理员权限,但可以访问某些特定的文件或目录。
【注意】:
小伙伴们现在只需要知道
root
用户和普通用户就可以了。当然,一开始,我们可以使用root
用户,因为使用普通用户的话,可能会出现一些权限问题造成困扰~
⭐关于常用的用户管理命令
我们以root
用户登录系统,然后通过终端窗口打开命令行界面。
useradd
:用于添加一个新用户账户;
添加一个新用户,命名为testuser1
。命令如下:
useradd testuser1
passwd
:用于为用户设置或更改密码;
设置新用户的密码。命令如下:
passwd testuser1
usermod
:用于修改现有用户的信息,例如修改用户的家目录、用户的组身份等;userdel
:用于删除一个用户账户
【演示】:
当我们创建一个用户后,对应的用户文件会在根目录下的家目录里面,也就是/home
下:
设置密码:也就是 passwd
[用户名]:
这样一个普通用户就创建好了 ~ 而普通用户的用户文件就是自己的家目录~
那么如何切换用户呢?
使用 su [用户名] 命令 :如果是从root
切换到普通用户,那么直接就切换了,如果是从当前普通用户切换到另一个普通用户,则需要输入另一个用户的密码,如果是普通用户切换到root
用户,那么则需要root
用户密码。
再次强调,刚开始的小伙伴最好先是用root
~
🧑🎓 【Linux】 入门的一群基本指令
在进入指令学习之前,需要对Linux文件有这样的理解:普通文件是指可以通过文本编辑器、编译器等工具打开和编辑的,包括了文本文件、二进制文件等。而目录文件是可以包含普通文件,其他文件和目录的。所以目录文件是可以进去的,它下面还有普通文件和目录文件;而普通文件不可以进去,只可以编辑或者编译。当然,还有一些其它的文件,例如可执行文件,管道文件等等,这些后面再慢慢了解~
Linux指令繁多,选项也是一样,所以这里只选一些常用的指令和选项给小伙伴们讲解,其他的指令的选项啥的,大家自己可以多敲敲练练手哈~
clear
这个指令简单,就是清屏~
ls
【语法】: ls [选项] [目录或文件]
【功能】:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
【常用选项】:
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
-i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
-k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
-l 列出文件的详细信息。
-n 用数字的 UID,GID 代替名称。
-F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=” 表示套接字(sockets)。(目录类型识别)
-r 对目录反向排序。
-t 以时间排序。
-s 在文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R 列出所有子目录下的文件。(递归)
-1 一行只输出一个文件。
例如:
whoami
【语法】:whoami
【功能】:告诉你现在你再用哪一个用户:
【常用选项】:无
pwd
【语法】: pwd
【功能】:显示用户当前所在的目录
【常用选项】:无
cd
【语法】: cd
[目录名]
【功能】:改变工作目录。将当前工作目录改变到指定的目录下。
【例如】:
cd ..
: 返回上级目录cd /home/jianliao/test/
: 绝对路径cd ../test2/
: 相对路径。【关于绝对路径和相对路径】cd ~
:进入用户家目cd -
:返回最近访问目录
touch【重要】
【语法】: touch
[选项]… 文件…
【功能】:touch
命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
【常用选项】:
-a 或 --time=atime 或 --time=access 或 --time=use 只更改存取时间。
-c 或 --no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决 BSD 版本 touch 指令的兼容性问题。
-m 或 --time=mtime 或 --time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。
直接touch
就相当于创建普通文件,例如:
mkdir【重要】
【语法】:mkdir
[选项] dirname...
【功能】:在当前目录下创建一个名为 “dirname”
的目录
【常用选项】:
-p
, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
例如:
rmdir与rm【重要】
rmdir
是一个与mkdir
相对应的命令。mkdir
是建立目录,而rmdir
是删除目录。
【语法】:rmdir
[选项][dirName
]
【适用对象】:具有当前目录操作权限的所有使用者(这个可以先不深究,后面讲权限的时候会说~)
【功能】:删除空目录(要注意噢,是空目录~)
【常用选项】:
-p
当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
rm
命令可以同时删除文件或目录
【语法】:rm
[选项][dirName/dir]
【适用对象】:所有使用者
【功能】:删除文件或目录
【常用选项】:
-f
即使文件属性为只读(即写保护),亦直接删除-i
删除前逐一询问确认-r
删除目录及其下所有文件
【注意】:可千万不敢在root
下执行:rm -rf /*
,到时候说删库跑路,那个人就是你咯 ~
man【重要】
Linux
的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux
手册页的命令是man
【语法】: man
[选项] 指令
【常用选项】:
-k
根据关键字搜索联机帮助;num
只在第num
章节找;-a
将所有章节的都显示出来;
man
手册分为7
章:
是普通的命令;
是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件) ;
是库函数,如printf,fread是特殊文件,也就是/dev下的各种设备文件;
是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义;
是给游戏留的,由各个游戏自己定义;
是附件还有一些变量,比如向environ这种全局变量在这里就有说明;
是系统管理用的命令,这些命令只能由root使用,如ifconfig;