Linux从入门到进厂的晋升之路(持续更新中)
纸上得来终觉浅,绝知此事要躬行
前言
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
一、Linux系统目录结构
![Alt]https://www.runoob.com/wp-content/uploads/2014/06/d0c50-linux2bfile2bsystem2bhierarchy.jpg
1.1 /bin
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令
1.2 /boot
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件
1.3 /etc
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录
1.4 /home
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
1.5 /lib
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库
1.6 /root
该目录为系统管理员,也称作超级权限者的用户主目录
1.7 /usr
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录
1.8 /tmp
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的
1.9 /var
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
二、Linux文件基本属性
当为 d 则是目录
当为 - 则是文件
若是 l 则表示为链接文档(link file)
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置)
若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)
rwx r(read)可读 w(write)可写 x(execute)可执行
2.1 更改文件属组
chgrp [-R] 属组名 文件名一个具有注脚的文本(-R递归更改文件属组)。
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
2.2 更改文件权限
Linux文件属性有两种设置方法,一种是数字,一种是符号。
Linux 文件的基本权限就有九个,分别是 owner/group/others(拥有者/组/其他) 三种身份各有自己的 read/write/execute 权限
r:4
w:2
x:1
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:
owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0
chown [-R] xyz 文件或目录
-R:进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更
xyz:就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加
eg:chmod 662 data.txt(将data.txt 由rw-rw-r–修改为rw-rw–w-)
三、Linux文件与目录管理相关命令
linux的目录结构为树状结构"/"为根目录
绝对目录:从"/"开始到目标文件路径 例如:cd /usr/bin (即为转到usr目录下的bin目录中)
相对路径 不是从"/"写起 例如:cd ./id(即由/usr/bin目录转到/usr/bin/id) cd …/bin (即由/usr/bin/id返回到/usr/bin)
“.”当前目录
“…”上一级目录
3.1 ls命令(列出文件)
ls [-a/l/d/h] 目录路径
-a:全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
-d:仅列出目录本身,而不是列出目录内的文件数据(常用)
-l:列表形式列出,包含文件的属性与权限等等数据;(常用配合-a/h)
-h:以可读性较高的形式展现(体现在文件大小上)
3.2 cd命令(切换目录)
cd 绝对/相对路径路径
3.3 mkdir(创建目录)
mkdir [-mp] 文件目录
-m :配置文件的权限
-p :帮助你直接将所需要的目录(包含上一级目录)递归创建
eg1:在tmp目录下创建权限等级为rwxrwx–x的data.log文件
eg2:在tmp目录下一次性创建名为1 2 3三个文件夹
eg3在tmp目录下创建cache/cache1/cache2的目录结构
3.4 rmdir命令(删除空目录)
rmdir [-p] 文件目录(只用于删除空目录,非空用rm命令)
-p:从该目录起,一次删除多级空目录
3.5 cp命令(复制文件/目录)
cp [-afipr] 来源档/复制的文件路径(source) 目标档/粘贴的文件路径(destination)
-a:相当於 -pdr 的意思(常用)
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-r:递归持续复制,用於目录的复制行为;(常用)
3.6 rm命令(删除文件/目录)
rm [-rf] 目录路径
-f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
-r :递归删除(慎用,从入门到入狱)
3.7 mv命令(移动/重命名 文件/目录)
mv 来源档 目标挡
3.8 cat/tac命令 (显示文件)
cat [-bnv] 文件路径 (从第一行开始展示)
tac [-bnv] 文件路径 (从最后一行开始展示)
-b :列出行号,仅针对非空白行做行号显示,空白行不标行号
-n :列印出行号,连同空白行也会有行号,与 -b 的选项不同
-v :列出一些看不出来的特殊字符
3.9 less命令
less 文件路径
less运行时可以输入的命令有:
空白键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字串 :向下搜寻『字串』的功能;
?字串 :向上搜寻『字串』的功能;
q :离开 less 这个程序;
四、Linux用户和用户组管理
4.1 添加用户
useradd [-cdgGsu] 用户名
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
eg:添加一位用户(Charlotte)目录位于/home/Charlotte 属于group主组,同时有属于adm和root的附加组
useradd -d /home/Charlotte -m -g group -G adm,root Charlotte
验证:
/etc/passwd存放用户信息
cat /etc/passwd
用户名:密码:用户id:用户组id:注释:家目录:解释器shell
4.2 删除用户
userdel -r 用户名
4.3 修改用户
usermod [-cdgGsu] 用户名
4.4 口令管理
passwd [-ludf] 用户名
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。
非管理员只能修改自己的口令
4.5 新增用户组
groupadd [-go] 用户组
eg:添加一个新组linux001 用户组id设置为101
groupadd -g 101 linux001
4.6 删除用户组
groupdel 用户组
4.7 修改用户组
groupmod [-gon] 用户组
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
eg:修改linux001,用户组id修改为10086 名称改为linux10086
groupmod -g 10086 -n linux10086 linux001
五、Linux磁盘管理
5.1 df
df [-ahT] [目录或文件名]
-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
六、vim
七、yum命令
yum 常用命令
1.目录所有可更新的软件命令:yum check-update
2.更新所有软件命令:yum update
3. 只需安装指定的软件命令:yum install 软件名称
4. 只更新指定的软件命令:yum update 软件名称
5.归属所有可安装的软件命令:yum list
6.删除软件包命令:yum remove 软件名称
7. 查找目标命令:yum search 关键字
8.清除缓存:
yum clean packages:清除缓存目录下的包装
yum clean headers : 清除缓存目录下的 headers
yum clean oldheaders : 清除缓存目录下旧的标题
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存下目录的包头及旧头文件
八、SSH链接
首先需要勾选SSH协议
其次查找ip地址 ifconfig
然后打开Xshell进行相关配置
连接成功
扩展(一)sudo
sudo命令可以使普通用户使用root已经授予其权限的命令
eg:使Charlotte用户拥有添加的权限和修改密码的权限(但不可以修改root用户密码)
①切换为root用户 su命令
②visudo命令打开/etc/sudoers.tmp配置文件
root:root用户
ALL:运行登录的主机
(ALL):以谁的身份执行,当前为root用户
ALL:可执行的命令
③进行配置
④切换回Charlotte,用sudo命令添加zhangsan用户
⑤修改zhangsan密码
(持续更新中…………)