赞
踩
三个不得不学习
课程需要:Docker开发最好在Linux环境下。
开发需要:作为一个后端程序员,是必须要掌握Linux的,这是找工作的基础门槛。
运维需要:在服务器端,主流的大型服务都是跑在Linux服务器上。
今天各种场合都有使用各种Linux发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用LAMP(Linux+Apache +MySQL+PHP)或LNMP(Linux+Nging+MySQL+PHP)组合。
linux下一切皆文件
ls /
查看根目录下的文件
树状目录结构
/bin:bin是Binary的缩写,这个目录存放着最经常使用的命令。
/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev:dev是Device(设备)的缩写,存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。
/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。·/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/opt:这是给主机额外安装软件所摆放的目录,比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:5就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/srv:该目录存放一些服务启动之后需要提取的数据。
/sys:这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统sysfs.
/tmp:这个目录是用来存放一些临时文件的。
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/usr/bin:系统用户使用的应用程序。
/usr/src:内核源代码默认的放置目录。
/var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
cd
切换目录命令cd ..
切换上级目录, 相对目录cd ./
当前目录cd ~
回到当前的用户目录,或者直接cd
mkdir test1
创建test1文件夹mkdir -p test1/test2/test3
递归创建层级文件夹rmdir test1
删除空的文件夹rmdir -p test1/test2/test3
层级删除文件夹cp a b
-f参数,强制删除
-r递归删除
-a参数,交互,询问是否删除
cat由第一行开始显示文件内容
tac从最后一行开始显示
nl显示的时候,顺道输出行号!
more一页一页的显示文件内容<空格翻页,回车往下看一行
less与more类似,但是比more更好的是,他可以往前翻页!上下键,使用q退出
head只看头几行 head -n 20 a.txt
tail只看尾巴几行 tail -n a.txt
touch
echo
输入w,保存文件,输入q退出文件,输入wq保存并退出文件
输入q!强制退出文件
输入/字符,查找字符
输入 :set nu显示行号,输入:set nonu取消显示行号
Linux链接分为两种:软链接和硬链接
硬链接:比如有一个文件A,给A创建一个和硬链接B,此时即便删除文件A,通过B也可以再次访问到文件中的内容。这样可以防止误删。
软连接:类似windows上的快捷方式,删除源文件,快捷方式也访问不了。
创建一个硬链接:ln
ln a.txt b.txt #给a.txt创建一个硬链接b.txt, b.txt是一个文件
创建一个软链接:-s soft
ln -s a.txt c.txt #给a.txt创建一个软连接,c.txt, c.txt不是一个真实的文件,只是一个快捷键
linux是多用户的操作系统,使用系统资源都必须拥有一个用户账号,普通账号由管理员root账号分配,然后以普通账号登录系统。
yoghurt管理相关命令分两部分:用户相关,用户组相关
# 添加用户 useradd -选项 用户名
useradd -m jack #自动创建jack这个账号,用户的主目录 /home/jack
# 查看用户的配置文件 cat /etc/passwd
# 删除用户
userdel -r jack # 删除用户并删除用户的目录
# 修改用户 usermod 修改内容 用户
usermod -d /home/111 jack # 修改用的目录,目录不存在先创建目录,检查配置文件/etc/passwd
# 用户设置密码,添加账号时添加密码
useradd jack
passwd jack
# 修改自己的密码
passwd
# 冻结账号,一旦冻结,就无法在使用该账号登录
[root@liuxu home]# passwd -l jack
Locking password for user jack.
passwd: Success
# 1.切换用户的命令为:su jack # 切换到jack这个用户
[root@liuxu home]# who am i
root pts/0 2021-07-24 20:04 (101.229.117.193)
[root@liuxu home]# su jack # #表示root用户
[jack@liuxu home]$ # $表示普通用户
# 2.从普通用户切换到root用户,继续使用命令:sudo su
[jack@liuxu home]$ su root # 要输入root账号密码
Password:
[root@liuxu home]#
# 3.在终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户,其实ctrl+d也是执行的exit命令
[root@liuxu home]#
[root@liuxu home]# su jack
[jack@liuxu home]$ exit
exit
[root@liuxu home]# su jack
[jack@liuxu home]$ exit
[root@liuxu home]#
# 创建一个用户组 groupadd
groupadd jack # 新建组, 组id自增,cat /etc/group
groupadd -g 1100 mack #指定组id是1100
# 删除用户组
groupdel jack # 删除后,配置文件中就没有这个组的信息
# 修改组
groupmod -g 2200 -n mmm mack # 将mack组重命名为mmm id改为2200
# 给用户分配组
useradd -G 分配用户组
ls -l
或者ll
查看文件或者文件夹的属性、以及文件所属的用户和组。
上面列出的文件属性中,第一个字母常用的有三种:d
表示文件夹、-
表示文件、l
表示软链接
后面9个字母,3个为一组rwx
,分别是属主可读可写可执行权限、属组可读可写可执行权限、其他用户的权限。每组的三个全下位置固定,如果没有对应的操作权限,则用中划线-
标识。
接着是文件的属主是root,文件的属组是root
# 1 修改文件属组 chgrp [-R] 属组名 文件名, -R表示递归修改文件夹内文件属组
# 2 修改文件属主 chown [-R] 属主名 文件名
# 3 修改文件属性 chmod [-R] xyz 文件或文件夹 chomd 777 a.txt
- xyz分别设置属主、属组和其他用户的可读可写可执行权限
- x=7,表示属主就有可读可写可执行权限,7表示4+2+1, r:4, w:2, x:1
- 每个组的三个权限就是三个权限对应数字的累加
- 可读可写可执行:4+2+1==7
- 可读可写: 4+2==6
- 可读可执行: 4+1 ==5
- 可执行: 1==1
- chmod 777 a.txt # 表示a.txt属主、属组和其他用户都具有可读可写可执行的权限
- chmod 764 a.txt # 表示a.txt属主具有可读可写可执行,属组具有可读可写,其他用户具有可读权限
# 列出文件系统整体的使用情况 df
df
df -h # 人性化显示
# 检查磁盘空间使用量 du
du
du -a # 影藏的文件也可以查看,还可以看到子文件夹的量
du -h # 人性化显示
ps
ps -a # 显示当前终端运行的所有进程信息
ps -u # 以用户的信息显示进程
ps -x # 显示后台运行进程的参数
ps -aux | grep mysql
ps -ef grep python
pstree
pstree -p # 显示父id
pstree -u # 显示用户组
kill -9 进程id # 强制结束进程
# 备份:
mkdir repobak
mv *.repo repobak/
# 下载CentOS-Base.repo 到路径/etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
# 清除缓存
yum clean all
# 重建缓存
yum makecache
# 编译安装 nginx
./configure
make
make install
# nginx安装下载示例 http://nginx.org/en/download.html
# rmp安装
wget rmp包 # 使用wget命令下载一个rpm包
rpm -ivh rpm包 # rmp安装软件
rmp -e 软件报名 # rmp删除软件
# yum安装
yum install -y 软件
yum remove 软件包
yum search 软件包 # 查找
# yum安装net-tools工具包等
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。