学习安排:
1,认识Linux
2,学习基本命令(文件操作,目录管理,文件属性,vim编辑器,账号管理,磁盘管理)
3,软件的安装和部署(java,tomcat,docker)
一,认识Linux
1,为什么要学习Linux:很多的大型项目都是部署在Linux服务器上的
2,Linux一般用来做服务器端的操作系统。
3,Linux比windows安全
4,常用的Linux有:ubantu,CentOS,RedHat等
5,Linux是一个自由的,免费的,源码开放的操作系统。
二,基本命令
-
ls : 列车当前目录所有的文件(蓝色的是文件夹,白色是普通文件)
-
ls -l : 以列表的形式列出所有文件,包含文件的属性权限,当没有列出隐藏文件
-
ls -a : 显示隐藏文件(all)
-
ls -al:上两条语句的组合使用
-
ls -l -h : 显示文件的大小
-
ls *.txt : 模糊查找(×对应任意字符)
-
ls ???.txt : 模糊查找(?对应一个字符)
-
ls [1234abcd] a.txt : 模糊查找(?便利【】中的数字在前面,查找文件)
-
所有的隐藏文件是以 . 开头的
-
cd : 用来打开文件夹,切换目录的路径
-
cd.. :用来返回上一级目录
-
./ :当前目录
-
cd ../usr:通过相对路径进入usr目录
-
cd /home/test :绝对路径跳转
-
cd ~:回到当前的用户目录
-
pwd :显示当前所在的目录
-
使用cd进行目录跳转的时候,输入目录名的前几个字母按table建可以进行自动补全
-
clear : 命令用来清空目录
-
mkdir test :创建文件夹test
-
mkdir -p test1/test2/test3:创建多级目录test1/test2/test3
-
rmdir test:删除文件夹test,如果目录中有文件不能删除,需要先删除文件
-
rmdir -p test1/test2/test3:移除多级目录test1/test2/test3
-
cp test.sh study:将test.sh文件复制到study文件夹下
-
rm:移除文件或者目录
-
rm -f:目录中有文件不会提示你,直接删除文件
-
rm -r: 递归删除目录
-
rm -i:删除的时候会询问你是否删除
-
rm -rf:系统中所有的文件被删除(删库跑路)
-
mv :移动文件(mv test.sh study/ 把test.sh文件移动到study文件夹 )
-
mv study study2:重命名文件夹
-
mv -f:强制移动文件
-
mv -u:只替换语句更新过的文件
-
sync:将数据同步到硬盘中
-
shutDown:关机指令
-
reboot:重启
三,常用的目录:
-
/bin:Binary的缩写,存放最常用的命令
-
/boot:存放启动Linux的一些核心文件,包括一些连接文件和镜像文件(不要动)
-
/dev:dev是Device的缩写,存放Linux的外部设备,在Linux中访问设备的方式和访问文件一样
-
/etc:存放所有所有系统管理所需要的配置文件和子目录
-
/home:用户的主目录,在Linux中,每个用户都有自己的目录,一般目录名和账户名一致
-
/lib:存放系统最基本的动态链接共享库,类似于Windows中的DLL文件
-
/lost+found:一般情况下为空,当系统非法关机,这里就存放一些文件
-
/media:Linux会自动识别一些设备,如U盘,光驱,当识别后就把识别的设备挂到这个目录下
-
/mnt:系统提供这个目录是给用户临时挂载别的文件系统
-
/opt:给主机额外安装软件所摆放的目录,比如你安装了一个MySQL数据库就可以放到这个目录下。默认为空
-
/proc:这个目录是一个虚拟的目录,是系统的内存映射,我们可以通过这个文件来获取系统信息
-
/root:管理员主目录
-
/sbin:存放管理员使用的系统管理程序
-
/srv:存放一些启动服务器之后需要提取的数据
-
/sys:该目录安装了Linux2.6内核中新出现的一个文件系统sysfs
-
temp:存放一些临时文件
-
/usr:用户的很多应用程序和文件都存放在这个目录下,类似于Windows下的program file目录
-
/usr/bin:系统用户使用的应用程序
四,文件属性的查看和修改:
查看:
-
通过ls -ll 命令列出所有的文件
-
第0个字符为 d表示他是目录,l表示他是一个链接,-表示是一个文件,b表示可存储接口,c表示串行接口设备
-
第123个字符是管理员权限控制,rwx表示可读,可写和可执行的权限
-
第456个字符是用户组权限控制,r-x表示可读,不可写和可执行的权限
-
第789个字符是其他用户权限控制,r-x表示可读,不可写和可执行的权限
修改:(你没有权限操作此文件)
-
chmod [-R] xyz 文件或者目录
-
Linux属性设置的方式:1,数字。2,符号
-
数字:r=4,w=2,x=1 例如设置rwx 可以用7表示,rw-可以用6表示
-
chomd 777表示管理员,用户,其他用户的权限都为rwx
五,文件内容的查看
-
cat:从第一行开始显示内容(用来读文章,读配置文件)
-
tac:倒着显示内容
-
nl:显示内容的时候,把行号显示出来(看代码的时候希望显示行号)
-
more:一页一页的显示文件内容(空格代表翻页,enter往下一行)
-
less:一页的显示内容并且可以向前翻页(空格代表翻页,上下键翻动,/字符串 可以向下查找字符串,?字符串 表示向上查询字符串,q表示退出)
-
head:只看头几行(head -n 20 test.sh 表示看test.sh文件的前20行)
-
tail:只看尾巴几行
-
man cp:查看使用文档
-
网络配置目录:cd /etc/sysconfig/network--scripts/(CentOS 7)
-
ifconfig:查看网络配置
六,Linux连接
-
硬链接:假设B是A的硬链接,那么他们两个指向的是同一个文件,允许一个文件有多个路径。文件本身有一个计数器来记录有多少个链接,当删除B时,文件不会删除,而是计数器中的值减一,当计数器的值为0的时候文件才会被删除
-
软链接:存的是f1文件的地址,当f1文件删除时,它也就不能访问了(f1,f2,f3本身是一个文件地址)
-
touch f1 :创建文件f1
-
ln f1 f2:创建一个f1到f2的硬链接
-
ln -s f1 f3:创建一个f1到f2的软链接
-
echo "I love jianjiang" >>f1:将字符串写入f1中,f2和f3内容会发生改变
七,Vim编辑器
-
vim test.txt:使用vim打开test.txt文件,如果test.txt文件不存在就创建一个test.txt文件
-
i:进入insert模式,可以输入或者修改文件中的内容
-
按Esc键退出编辑进入底线命令模式
-
:wq:保存并退出命令
-
:set nu:显示文本的行号
-
/字符 或者 ?字符:搜索字符
-
数字+空格键:按字符跳转
-
数字+回车键:按行跳转
-
我们可以使用 cat test.txt命令来查看是否保存文件
-
如果创建的文件没用了,可以使用rm test.txt命令删除文件
八,账号管理
-
useradd -m 用户名 -G 用户组:自动添加一个用户,需要在root目录下才可以,如果当前不是管理员使用su root切换到管理员
-
cat /etc/passwd:查看是否添加成功
-
userdel -r 用户名:删除用户
-
usermod -修改代号 用户名:修改用户
-
su jianjiang :切换个到jianjiang账户
-
hostname:查看主机名
-
passwd 用户名:回车后设置密码(密码不能太简单)
-
passwd -l 用户名:冻结用户
-
passwd -d 用户名:冻结用户密码,也不能登录了
九,用户组管理
-
groupadd 用户组名称:添加用户组
-
groupdel 用户组名称:删除用户组
-
group -g 666 -n jj 用户组名称:修改组id为666,名字改为jj
-
拓展:
-
/etc/passwd:文件结构——》用户名:口令(用户密码,不可见):用户标识号:组标识号:注释性描述:主目录:登录shell
-
这个文件的每一行都代表一个用户,我们可以在这里看到这个用户的主目录在哪里,可以看到它属于哪一个组
-
登录密码被加密后放在/etc/shadow文件中,保证了密码的安全性。
-
/etc/group:这个文件存放用户组的信息
十,磁盘管理
-
df -h:查看系统整体的磁盘使用情况
-
du:查看当前磁盘空间使用情况
十一,进程管理
-
ps -字符 :查看当前系统正在执行的各种进程信息(字符功能如下):
-
-a:显示当前终端运行的所有进程信息
-
-u:以用户信息显示进程
-
-x:显示后台运行进程的参数
-
-aux:查看所有的进程
-
ps -aux|grep mysql:查看MySQL相关的信息
-
ps -ef:查看父进程的信息
-
pstree -pu :显示进程树
-
kill -9 进程的id:强制结束进程