Linux 文件权限、VIM、防火墙
Linux 文件权限、VIM、防火墙
SSH连接
无论是mac还是windows的同学都可以选择下载自己喜欢的远程登陆客户端工具,通过ssh协议连接到远程主机。
客户端的使用非常方便。但也有很多同学喜欢使用命令行的方式来进行连接(比如我自己)
使用root登陆1.1.1.1:(默认端口为22)
ssh root@1.1.1.1
也可以使用-p指定 ssh主机配置的端口
ssh -p 222 root@1.1.1.1
环境变量
和Windows不同,Linux环境变量配置需要使用
export
声明。如:
export PATH=${PATH}:java/bin:android/platform-tools
如果直接在终端中输入命令,则设置PATH环境变量的值,但其作用范围仅限于当前会话。即临时环境变量
profile、bashrc、bash_profile
在Linux中配置环境变量,可以但不限于使用上述三个文件。
首先读入
/etc/profile
,读取当前用户目录内的~/.bash_profile
;最后,根据用户帐号读取~/.bashrc
。
/etc/
是系统全局环境变量设定;~/
是用户私有环境变量设定。在修改配置文件后,可使用
source /etc/profile
刷新。
权限
Linux系统从诞生就被设计为多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统安全,Linux系统对不同的用户访问同一文件的权限做了不同而规定。
#在Linux中可以通过 `ls -l` 显示文件的属性以及文件所属的用户和组
total 1063044
drwxrwxr-x 13 root root 4096 Jun 7 16:12 android-ndk-r17b
-rw-r--r-- 1 root root 709381607 Jun 13 03:20 android-ndk-r17b-linux-x86_64.zip
-rw-r--r-- 1 root root 8799579 Feb 25 05:35 apache-maven-3.5.3-bin.tar.gz
drwxr-xr-x 9 root root 4096 Aug 15 17:58 apache-tomcat-8.5.32
-rw-r--r-- 1 root root 9584807 Jun 21 04:26 apache-tomcat-8.5.32.tar.gz
-rw-r--r-- 1 root root 693 Jul 22 14:22 build.sh
-rwxr-xr-x 1 root root 62299 Aug 24 07:35 certbot-auto
drwxr-xr-x 3 root root 4096 Jun 6 21:29 down
drwxr-xr-x 3 root root 4096 Jun 4 17:59 downfile
-rw-r--r-- 1 root root 2703579 Aug 15 17:19 dubbo-2.6.2.zip
-rw-r--r-- 1 root root 32099475 Aug 15 17:34 dubbo-admin-2.6.war
drwxr-xr-x 4 root root 4096 Aug 6 11:39 ffmpeg
-rw-r--r-- 1 root root 294240052 Oct 25 2014 gitlab_7.4.2-omnibus-1_amd64.deb
drwxr-xr-x 9 root root 4096 May 27 10:42 hexo-theme-material
上面的
android-ndk-r17b
显示的第一列表示文件类型与权限。'd'
在Linux中代表该文件是一个文件目录在Linux中第一个字符代表这个文件是目录、文件或者链接等等
类型 | 描述 |
---|---|
d | 目录 |
- | 文件 |
l | 链接(link file) :ln -s [raw][out] |
b | 块设备(I/O随机存取设备),如:硬盘 |
c | 字符设备文件( I/O传输过程中以字符为单位进行传输的设备 ),如:鼠标,键盘... |
...... | ...... |
然后是三个为一组的
rwx
, 其中r
表示可读,w
表示可写,x
表示可执行
对于每个文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。同时在Linux中用户都是按组来进行分类的,一个用户属于一个或多个组。
文件所有者之外的用户又分为文件所有者的同组用户和其他用户。可以使用以下命令查看当前使用的用户信息:
命令 | 说明 |
---|---|
whoami | 查看当前登陆的用户 |
groups [用户] | 查看指定用户分组,以及组内成员 |
groups | 查看当前登陆用户所属的分组 |
更改文件所属
#chgrp : 更改文件属组
#-R 递归更改目录文件
chgrp [-R] 属组名 文件名
-rw-r--r-- 1 root root 53 Aug 15 21:25 main.c
#更改main.c 属于git 组的用户
chgrp git main.c
-rw-r--r-- 1 root git 53 Aug 15 21:25 main.c
################################################################################################
#chown: 更改文件属于的用户与分组
chown [-R] 属组名 文件名
chown [-R] 属主名:属组名 文件名
#修改 main.c 属于 git组的git用户
chown git:git main.c
-rw-r--r-- 1 git git 53 Aug 15 21:25 main.c
更改文件权限
三组rwx分别代表:所属用户(user)、所属分组(group)、其他(other)
Linux文件权限使用
chmod
能够修改这三组权限。有两种设置方法。一种是数字,一种是符号。
使用数字修改权限
r 可读:4
w 可写:2
x 可执行 : 1
#设置文件权限
chmod 177 main.c
#之前使用 chown 将main.c 修改为属于git用户
#此处修改git用户对main.c的权限不可读写
使用符号改变权限
三组rwx可以分别由: u(ser)、g(roup)、o(ther) 来代表,另外a则代表all
#设置权限为 --x --x --x
chmod u=x,g=rx,o=r main.c
#chmod +x = chmod a+x
# + : 增加权限
# - : 减去权限
chmod +x xx : 添加执行权限
chmod +r xx : 添加读取权限
chmod +w xx :添加可写权限
su和sudo
su : 在已登陆的终端(命令行)会话中登陆到另一个用户。即 切换用户。
su [切换的用户名] 未输入用户名,默认切换到root用户
#在上面的操作中已经将main.c设置为对git不可读写
#切换到git用户
su git
#cat 文本输出命令
cat main.c
#输出: 没有权限读取main.c
cat: main.c: Permission denied
su 和 su -
两者的区别是,前者只切换了身份,而后者相当于重新登陆。su - 重新登陆后目录切换到用户配置的工作目录。
su
# 切换到/root/test目录
root@iZj6c3nmby8r3jqrqwiommZ:~# cd test/
# 切换到git用户
root@iZj6c3nmby8r3jqrqwiommZ:~/test# su git
$ su
Password:
root@iZj6c3nmby8r3jqrqwiommZ:~/test#
#当前仍然处于/root/test目录
su -
# 切换到git用户
root@iZj6c3nmby8r3jqrqwiommZ:~/test# su git
$ su -
Password:
root@iZj6c3nmby8r3jqrqwiommZ:~#
#当前处于/root目录
sudo: 用户普通用户使用root权限来执行命令(不切换用户)。即临时提升用户权限为root权限
sudo cat main.c
#输入当前用户的密码
包管理器
软件包管理系统,用于管理系统中安装的工具。
Mac: brew
Ubuntu: apt
Centos: yum
VI/VIM
所有的 类 Unix 系统都会自带 vi 文书编辑器,目前我们使用比较多的是 vim 编辑器。
Vim是从 vi 发展出来的一个文本编辑器。 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
分为三种模式,分别是命令模式,输入模式和底线命令模式
命令模式
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
常用的命令:
i 切换到输入模式,以输入字符。
x 删除当前光标所在处的字符。
: 切换到底线命令模式,以在最底一行输入命令。
输入模式
在输入模式中,可以使用以下按键:
字符按键以及Shift组合
,输入字符ENTER
,回车键,换行BACK SPACE
,退格键,删除光标前一个字符DEL
,删除键,删除光标后一个字符方向键
,在文本中移动光标HOME/END
,移动光标到行首/行尾Page Up/Page Down
,上/下翻页Insert
,切换光标为输入/替换模式,光标将变成竖线/下划线ESC
,退出输入模式,切换到命令模式
底线命令模式
在命令模式
下按下:(英文冒号)就进入了底线命令模式。
q
退出程序w
保存文件wq
保存并退出q! wq!
!:表示强制
iptables防火墙
Ubuntu:
1、Ubuntu 默认有装iptables,可通过which iptables确认
2、Ubuntu默认没有iptables配置文件,可通过iptables-save > /etc/iptables.up.rules生成
3、读取配置并生效可以通过 iptables-restore < /etc/iptables.up.rules
4、vim /etc/network/interfaces 增加
pre-up iptables-restore < /etc/iptables.up.rules #启动时应用防火墙
post-down iptables-save > /etc/iptables.up.rules #关闭时保存防火墙设置,以便下次启动时使用
iptables-save > /etc/iptables.up.rules 内容类似:
# Generated by iptables-save v1.6.0 on Mon Aug 27 12:34:05 2018
*filter
# DROP 表示关闭、ACCPET表示允许
:INPUT DROP [11:722]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [29:2664]
#开发 22和80801 端口
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
COMMIT
# Completed on Mon Aug 27 12:34:05 2018
Centos:
常用操作:
#查看当前防火墙配置并显示规则行号
iptables -L --line-numbers
#开启 8080 端口
iptables -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
#关闭 8888 端口
iptables -A INPUT -p tcp -m tcp --dport 8888 -j DROP
#删除 1 号 规则(行号)
iptables -D INPUT 1
Linux 文件权限、VIM、防火墙的更多相关文章
- linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)
文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...
- Linux 文件权限于目录配置
用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...
- Linux文件权限与属性详解 之 SUID、SGID & SBIT
Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...
- Linux文件权限与属性详解 之 一般权限
目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...
- Linux文件权限与属性详解 之 ACL
Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...
- Linux文件权限与属性详解 之 su & sudo
Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...
- linux文件权限多一个+啥意思
linux文件权限显示多了一个+,说明添加了acl权限 使用getfacl filename 能查看到 ower group other 还多了一个php 用户有rwx权限. acl详解 转: ht ...
- linux文件权限全面解析
目录 linux文件权限全面解析 一:linux文件的权限有哪些? 1,权限分为3个部分 2,权限位 3,每一个权限拥有一个数字编号 4,在添加权限的时候,可以将权限加起来 5,linux添加权限命令 ...
- 修改linux文件权限
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- Linux:文件权限
Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...
随机推荐
- 基于Hyper-V搭建免费桌面云
Hyper-V 是 Microsoft 的硬件虚拟化产品. 它用于创建并运行计算机的软件版本,称为"虚拟机". 每个虚拟机都像一台完整的计算机一样运行操作系统和程序. 如果需要计算 ...
- hv_balloon: Balloon request will be partially fulfilled. Balloon floor reached
windows 的hyper-v 安装了 centos 或者龙蜥 操作系统,会一直提示这个信息: hv_balloon: Balloon request will be partially fulfi ...
- 小知识:开启NTP服务并设置为开机启动
我的一套测试环境发现时间慢了10分钟,影响我做各类测试. 首先就想到NTP服务,发现已安装NTP安装包,也有默认的NTP配置文件,只是没有启用. 用到的相关命令参考如下: [root@bogon ~] ...
- 探索Web API SpeechSynthesis:给你的网页增添声音
Web API SpeechSynthesis是一项强大的浏览器功能,它允许开发者将文本转换为语音,并通过浏览器播放出来.本文将深入探讨SpeechSynthesis的控制接口,包括其功能.用法和一个 ...
- 【JS】一个思路搞定三道Promise并发编程题,手摸手教你实现一个Promise限制器
壹 ❀ 引 之前在整理手写Promise相关资料时,在文章推荐区碰巧看到了一道手写Promise并发控制调度器的笔试题(大厂可能爱考),结果今天同事又正好问了我一个关于Promise调度处理的场景问题 ...
- EmuELEC 4.3 安装和乐视手柄 LeWGP-201 evremap问题解决
一年多前安装了EmuELEC3.9之后, 就一直没有再更新过, 平时玩玩小游戏也很正常. 昨天心血来潮想把吃灰的乐视手柄用起来, 结果发现3.9里面没有evremap 命令. 猜测可能是这个版本的问题 ...
- 使用TensorFlow实现MNIST数据集分类
1 MNIST数据集 MNIST数据集由70000张28x28像素的黑白图片组成,每一张图片都写有0~9中的一个数字,每个像素点的灰度值在0 ~ 255(0是黑色,255是白色)之间. MINST数据 ...
- springboot集成腾讯cos实现文件上传
腾讯对象存储介绍 对象存储(Cloud Object Storage,COS)是腾讯云提供的一种存储海量文件的分布式存储服务,具有高扩展性.低成本.可靠安全等优点.通过控制台.API.SDK 和工具等 ...
- Java网络编程之使用URL类
Lesson: Working with URLs 使用URLs 整理自Oracle官方文档. URL is the acronym for Uniform Resource Locator. URL ...
- C++ 多线程的错误和如何避免(9)
有时候使用 std::atomic 比使用 mutexes 更高效 问题分析:使用多线程更新一些简单数据时,比如 int 型,bool 型等等,可以使用 std::atomic,这比 mutex 来得 ...