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文件 ...
随机推荐
- 时间减去一个小时怎么做 delphi 很方便 看代码
procedure TfrmTongBuTid.Button1Click(Sender: TObject); begin TopStartModifiedTime_dtp.Time := TopSta ...
- 传统.NET应用向微服务架构迁移的实践经验--学习笔记
摘要 在本次分享中,演讲嘉宾将基于真实项目案例,剖析 .NET 应用向微服务..NET Core 等技术栈迁移的具体收益,并且分享在迁移中技术和非技术的众多考量.以及保证业务连续性的一些方法论. 议题 ...
- Hbase-执行hbase shell命令时提示:ERROR: KeeperErrorCode = NoNode for /hbase/master
1.问题描述 执行hbase shell命令时提示: ERROR: KeeperErrorCode = NoNode for /hbase/master 2.问题原因 这是与因为服务器重启后Hado ...
- MySQL 报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket
MySQL 报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket 一.错误现场还原: 下面我们通过三种方式 ...
- maven源修改
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://mav ...
- 使用RegSetValueEx创建键值
#include <iostream> #include <string> #include <sstream> #include <fstream> ...
- kafka学习笔记01-kafka简介和架构介绍
一.kafka介绍 kafka 最开始是 Linkedin 用来处理海量的日志信息,后来 linkedin 于 2010 年贡献给了 Apache 基金会并成为了顶级项目. 后来开发 kafka 的一 ...
- dpt-shell 抽取壳实现原理分析(加壳逻辑)
开源项目位置(为大佬开源精神点赞) https://github.com/luoyesiqiu/dpt-shell 抽取壳分为两个步骤 加壳逻辑: 一 对apk进行解析,将codeItem抽出到一个文 ...
- 项目实战:Qt西门子PLC通讯调试和模拟工具(包含PLC上位机通讯,PLC服务器)
前言 西门西PLC.台达触摸屏.法兰克机床等等多年以前玩得比较多,改造机床.维修机床.给机床编程等等,没事还能车个零件啥的,对于多年以前的研发改造,有时间就重新整理下. 先上点有历史年代感的 ...
- django学习第六天---shell指令,单表基于双下划线的模糊查询,distinct注意点,字段的choices属性,url反向解析,orm多表操作创建表
shell指令 命令 python manage.py shell 在Terminal,执行上面这个指令会进入到python解释器环境中,并且加载了我们当前django项目配置环境,所以可以在当前sh ...