Linux是一个开源的操作系统
因为使用不要钱,效率也比 win 高,所以,大量服务器都是使用 linux 的
作为后端程序员,我们一般用linux去部署项目,所以需要会的指令不会太复杂
一般使用 Linux 的方式有三种
具体安装方式我就不介绍了,网上绝对有人比我讲的更好
我这里演示的方式,是使用阿里云服务器
输入如下命令:
ssh root@阿里云公网ip
输入密码:
bin (binaries)存放二进制可执行文件 sbin (super user binaries)存放二进制可执行文件,只有root才能访问 etc (etcetera)存放系统配置文件 usr (unix shared resources)用于存放共享的系统资源 home 存放用户文件的根目录 root 超级用户目录 dev (devices) 用于存放设备文件 lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块 mnt (mount)系统管理员安装临时文件系统的安装点 boot 存放用于系统引导时使用的各种文件 tmp (temporary)用于存放各种临时文件 var (variable)用于存放运行时需要改变数据的文件
.:代表当前目录 也可以用 ./ 表示 ..:代表上级目录 也可以用 ../ 表示
开发人员关注目录:
配置目录etc:软件安装后配置文件选择放入的地址。
软件安装目录:usr/local
安装应用程序目录:opt,部署的API程序一般放在这个目录。部署的API放入用户的目录:/home/用 户名
注意:Linux系统的文件系统是以斜杠“/”开始,不是windows中的盘符概念。
用户账户一般非为两大类:超级管理员和普通用户。 超级管理员:用root表示,root用户在系统中拥有最高权限。 普通用户:除了root之外的用户。例如我们之前创建的lina用户,就是普通用户。
#语法 cat /etc/passwd
# 创建一个用户 #语法:useradd 选项 用户名 #选项: -c comment 指定一段注释性描述。 -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组 指定用户所属的用户组。 -G 用户组,用户组 指定用户所属的附加组。 -s Shell文件 指定用户的登录Shell。 -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 #案例1: useradd lina02
# 删除一个用户 #语法:userdel 选项 用户名; 其中-r是常用的选项,表示将用户的主目录一起删除。 #案例: userdel -r lina02
# 用户口令的管理 #语法:passwd 选项 用户名 可使用的选项: -l 锁定口令,即禁用账号。 -u 口令解锁。 -d 使账号无口令。 -f 强迫用户下次登录时修改口令。
# 语法: ls :查看当前路径下的文件名称 ls -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用) ls -d :仅列出目录本身,而不是列出目录内的文件数据(常用) ls -l :长数据串列出,包含文件的属性与权限等等数据;(常用) ll : 等价于ls -l ls -al :目录下的所有文件列出来(含属性与隐藏档)
语法: cd [相对路径或绝对路径] #使用绝对路径切换到 local 目录 cd /usr/local/ # 表示回到自己的家目录,亦即是 /root 这个目录 cd ~ # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思; cd ..
# 语法:mkdir [-mp] 目录名称 -m :配置文件的权限喔!直接配置,不需要看默认权限的脸色 -p :直接将所需要的目录(包含上一级目录)递归创建起来! 查看帮助 mkdir --help
# 语法: rmdir [-p] 目录名称 -p :连同上一级『空的』目录也一起删除
语法:cat 由第一行开始显示文件内容
一页一页翻动 语法: more 文件名称 例如:more /etc/man_db.config ....(中间省略).... --More--(28%) <== 重点在这一行喔!你的光标也会在这里等待你的命令 在 more 这个程序的运行过程中,你有几个按键可以按的: 空白键 (space):代表向下翻一页; Enter :代表向下翻『一行』; :f :立刻显示出档名以及目前显示的行数; q :代表立刻离开 more ,不再显示该文件内容。
语法: less 文件名称 例如:less /etc/man.config ....(中间省略).... : <== 这里可以等待你输入命令! less运行时可以输入的命令有: 空白键 :向下翻动一页; [pagedown]:向下翻动一页; [pageup] :向上翻动一页; q :离开 less 这个程序;
语法:touch 创建一个空白的普通文件
#示例: [root@centoslina01 /]# cd kkb [root@centoslina01 kkb]# touch lina01.txt [root@centoslina01 kkb]# ll total 0 -rw-r--r--. 1 root root 0 Mar 11 10:08 lina01.txt [root@centoslina01 kkb]#
语法: echo '内容'>文件名称 覆盖模式 echo '内容'>>文件名称 追加模式
语法: cp [-adfilprsu] 来源档(source) 目标档(destination) -a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用) -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身; -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次; -i:若clear问动作的进行(常用) -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身; -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用); -r:递归持续复制,用於目录的复制行为;(常用) -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件; -u:若 destination 比 source 旧才升级 destination !
语法: mv [-fiu] source destination -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖; -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖! -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
示例:
示例:复制一文件,创建一目录,将文件移动到目录中 cd /tmp cp ~/.bashrc bashrc mkdir mvtest mv lina mvtest 将刚刚的目录名称更名为 mvtest2 [root@www tmp]# mv mvtest mvtest2
语法: rm [-fir] 文件或目录 -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息; -i :互动模式,在删除前会询问使用者是否动作 -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
linux中,打包和压缩有区别
多个文件打包后,文件大小不变,但是压缩后,文件大小会缩小
一般Linux 上常用的压缩方式是选用tar 将许多文件打包成一个文件,再以 gzip压缩命令压缩成紧 xxx.tar.gz(或者xxx.tgz)的文件。 常用参数: -c:创建一个新tar文件 -v:显示运行过程的信息 -f:指定文件名 -z:调用gzip 压缩命令进行压缩 -t:查看压缩文件的内容 -x:解开tar 文件 打包:tar -cvf xxx.tar '要打包的文件或目录的列表,用空格隔开' 打包并且压缩:tar -zcvf xxx.tar.gz '要打包的文件或目录的列表,用空格隔开' 解压:tar -xvf xx.tar tar -zxvf xx.tar.gz -C /usr/kkb 注意-C大写,防止拆包解压的路径找不到
ps : - axu 显示当前进程的快照
查看Java进程:ps - axu | grep java
查看MySQL进程 ps - axu | grep mysql
这里的 ‘|’ 是管道,可以同时让多条指令执行
管道是Linux中比较重要且常用的一个内容,其作用是将一个命令的输出作为另一个命令的输入,组合使用。
ls --help | more #分页查看帮助信息,按q退出
vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode) 和 底线命令模式(Last line mode)
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被 当作了一个命令。 以下是常用的几个命令: i 切换到输入模式,以输入字符。 x 删除当前光标所在处的字符。i : 切换到底线命令模式,以在最底一行输入命令。 若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。 命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键: 字符按键以及Shift组合,输入字符 ENTER,回车键,换行 BACK SPACE,退格键,删除光标前一个字符 DEL,删除键,删除光标后一个字符 方向键,在文本中移动光标 HOME/END,移动光标到行首/行尾 Page Up/Page Down,上/下翻页 Insert,切换光标为输入/替换模式,光标将变成竖线/下划线 ESC,退出输入模式,切换到命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。 在底线命令模式中,基本的命令有(已经省略了冒号): q 退出程序 w 保存文件 按ESC键可随时退出底线命令模式。
r: 读 w: 写 x: 执行
chown 是change owner的意思,主要作用就是改变文件或者目录所有者. chmod 修改文件和文件夹读写执行属性。 使用权限:所有使用者 chown 修改文件和文件夹的用户和用户组属性。使用权限:root
hostname :显示主机名 hostname XXX :修改主机名,不推荐,临时生效 永久生效修改主机名需要修改/etc/sysconfig/network文件
uname -a :显示完整的系统信息
查看IP地址:ip addr
修改IP地址:修改/etc/sysconfig/network-scripts/
重启网络服务
service network restart
修改 /etc/hosts文件
查看网络服务状态:systemctl status network 启动网络服务:systemctl start network 停止网络服务:systemctl stop network 重启网络服务:systemctl restart network 设置开机启动:systemctl enable network
查看防火墙状态: systemctl status firewalld 启动防火墙: systemctl start firewalld 关闭防火墙: systemctl stop firewalld 查询防火墙服务是否开机启动:systemctl is-enabled firewalld 开机时启用防火墙服务:systemctl enable firewalld 开机时禁用防火墙服务:systemctl disable firewalld 查询已经启动的服务列表:systemctl list-unit-files|grep enabled 查询启动失败的服务列表:systemctl --failed