Linux
https://www.runoob.com/linux/linux-tutorial.html
介绍
unix-linux
linux发行版本
用户和组
1、概述
- 用户即登录系统的角色,由用户名和密码组成,只有正确匹配的用户名和密码才能够登录系统
- Linux是多用户的分时操作系统,即可以通过多组用户名和密码登录系统,并且可以同时登录。注意用户名不能相同
- 组有组名和组id,在Linux中可以创建多个组,可以设置组的权限。可以在组中添加一个或多个用户角色,同一组中的用户具有相同权限。并且一个用户可以同时添加到不同组中
- root用户是系统自带的,拥有最高的权限
2、用户相关
1)添加新的用户
useradd 选项 用户名
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
2)删除用户
userdel 选项 用户名
常用的选项是 -r,它的作用是把用户的主目录一起删除。
3)修改用户
usermod 选项 用户名
4)修改用户密码
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
passwd 选项 用户名
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。
passwd
修改当前用户密码,其后输入旧密码和新密码
passwd sam
如果是超级用户,修改指定用户密码,其后直接输入新密码
3、用户组
1)添加新的用户组
groupadd 选项 用户组
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
2)删除用户组
groupdel 用户组
3)修改用户组
groupmod 选项 用户组
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
4)如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。
newgrp 目的用户组
4、相关文件
1)用户相关
/ect/passwd文件记录了所有用户的一些基本属性。
一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
2)用户组相关
/etc/group文件记录了用户组的一些基本属性
组名:口令:组标识号:组内用户列表
文件
1、系统目录结构
1)特殊的
/:表示根目录,系统中的所有文件和目录都直接或间接地挂载到根目录下
.:表示当前目录
..:表示上级目录
2)默认目录
为了方便管理,Linux在根目录下默认存在多个目录,分别用于存放不同功能的文件。
注意:默认目录并非不可更改,与普通目录一样可操作。同时,如果没有特殊情况,建议遵守相关规范。
- /bin:这个目录存放着最经常使用的命令
- /boot:存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
- /dev:该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
- /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
- /home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
- /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
- /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
- /media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
- /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
- /opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
- /proc:存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
- /root:该目录为系统管理员,也称作超级权限者的用户主目录。
- /sbin:这里存放的是系统管理员使用的系统管理程序。
- /srv: 该目录存放一些服务启动之后需要提取的数据。
- /sys:
- /tmp:这个目录是用来存放一些临时文件的。
- /usr:用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
- var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
- /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
2、文件操作
- ls(英文全拼:list files): 列出目录及文件名
- cd(英文全拼:change directory):切换目录
- pwd(英文全拼:print work directory):显示目前的目录
- mkdir(英文全拼:make directory):创建一个新的目录
- rmdir(英文全拼:remove directory):删除一个空的目录
- cp(英文全拼:copy file): 复制文件或目录
- rm(英文全拼:remove): 删除文件或目录
- mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
3、文件查看
- cat 由第一行开始显示文件内容
- tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
- nl 显示的时候,顺道输出行号!
- more 一页一页的显示文件内容
- less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
- head 只看头几行
- tail 只看尾巴几行
4、文件编辑
vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。
Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
5、文件基本属性
- chown (change ownerp) : 修改所属用户与组。
- chmod (change mode) : 修改用户的权限。
系统
1、网络
ping
2、进程
ps
kill
3、更新和安装
1)yum
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。
基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
-
列出所有可更新的软件清单命令:yum check-update
-
更新所有软件命令:yum update
-
仅安装指定的软件命令:yum install <package_name>
-
仅更新指定的软件命令:yum update <package_name>
-
列出所有可安裝的软件清单命令:yum list
-
删除软件包命令:yum remove <package_name>
-
查找软件包命令:yum search
-
清除缓存命令:
- yum clean packages: 清除缓存目录下的软件包
- yum clean headers: 清除缓存目录下的 headers
- yum clean oldheaders: 清除缓存目录下旧的 headers
- yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers
2)apt
apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。
apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
apt 命令执行需要超级管理员权限(root)。
-
列出所有可更新的软件清单命令:sudo apt update
-
升级软件包:sudo apt upgrade
列出可更新的软件包及版本信息:apt list --upgradeable
升级软件包,升级前先删除需要更新软件包:sudo apt full-upgrade
-
安装指定的软件命令:sudo apt install <package_name>
安装多个软件包:sudo apt install <package_1> <package_2> <package_3>
-
更新指定的软件命令:sudo apt update <package_name>
-
显示软件包具体信息,例如:版本号,安装大小,依赖关系等等:sudo apt show <package_name>
-
删除软件包命令:sudo apt remove <package_name>
-
清理不再使用的依赖和库文件: sudo apt autoremove
-
移除软件包及配置文件: sudo apt purge <package_name>
-
查找软件包命令: sudo apt search
-
列出所有已安装的包:apt list --installed
-
列出所有已安装的包的版本信息:apt list --all-versions
4、磁盘管理
- df:列出文件系统的整体磁盘使用量
- du:检查磁盘空间使用量
- fdisk:用于磁盘分区