1. Linux用户及权限管理

1.1. who

查看当前谁登录了我

who - q: 一共有多少个人登录了我

  • 先ping通电脑: ping IP address
  • 远程登录电脑: ssh haoch@IP address
  • 查看谁登录了我的电脑: who

1.2. 查看当前用户: whoami

查看当前系统当前账号的用户名

1.3. 添加用户账号: useradd

useradd [参数] 新建用户账号
参数 含义
-d 指定用户登录系统的主目录
-m 自动创建目录
-g 指定组的名称
useradd -d /home/abc abc -m 创建abc用户,如果/home/abc目录不存在,就自动创建这个目录
useradd -d /home/abc abc -g test -m 创建abc用户,如果/home/abc目录不存在,就自动创建这个目录,同时用户属于abc组
cat /etc/passwd 这个文件下就可以看到注册的用户名

注意: 每个用户都要有一个主目录,主目录就是第一次登录系统,用户的默认当前目录(/home/用户);

  • 查看现有电脑的用户: cd /home/ + ls 或者ls /home/
  • 切换到管理员:sudo -s
  • 管理员新建用户: useradd laowang -m
  • 管理员修改用户名的密码: passwd laowang
  • 从管理员退回普通用户: exit
  • 从普通用户到另外一个普通用户: su - laowang
  • 自己改自己的秘密:passwd
  • 删除用户: userdel -r laowang

1.4 切换用户 su

  • su - laowang: 切换账户及路径名
  • su laowang:只切换账户,不切换到其目录
  • sudo -s:切换到管理员

2.用户组

  • 查看有哪些用户组: cat /etc/group 或者 groupmod+两次Tab
  • 添加组: groupadd abc
  • 删除组: groupdel abc
  • 查看当前用户所在的用户组: groups laowang
  • 查看用户组的当下存在的用户: cat /etc/group | grep 'sudo'
  • 修改用户所在的组:
    • 新建三个组: groupadd AAA BBB CCC
    • 新建一个用户: useradd lili -m 在lili自己的组里面
    • 切换到AAA组: usermod -a -G AAA lili
  • 将普通用户拥有切换到管理员权限的能力:
    • 添加到adm和sudo用户组: usermod -a -G adm laowang + usermod -a -G sudo laowang

3. 修改文件权限: chmod

chmod修改文件权限有两种格式:字母法和数字法

字母法: chmod u/g/o/a +/-/= rwx 文件

参数 含义
u user表示该文件的所有者
g group表示与该文件的所有者属于同一组者,即用户组
o other表示其他以外的人
a all表示这三个都是
+ 增加权限
- 撤销权限
= 设定权限

  • 添加拥有者的执行权限: chmod u+x 123.py
  • 添加其他人可以写的权限: chmod o+w 123.py
  • 直接设置权限: chomod g=w 123.py
  • 同时设置几个权限: chmod u=x, g=x, o=x 1.py
  • 删除全部权限: chmod u=, g=, o= 1.py

数字法: rwx这些权限也可以用数字代替

参数 数字代号
r 4
w 2
x 1
- 0(无权限)
  • 快速添加权限: chmod 761 1.py (7=4+2+1, 6=4+2, 1=1)

(1). 修改文件所有者 chown

chown laowang 1.py

(2). 修改文件所属组: chgrp

chgrp AAA 1.py

3. 编辑器

3.1. gedit编辑器

类似window的记事本和word文档

3.2. sublime编辑器

快捷键 数字代号
Ctrl+Shift+D 快速复制
Ctrl + 字体变大
Ctrl + F 选中替换代码
Ctrl + L 选中一行

3.3. 安装软件

快捷键 数字代号
sudo apt-get update 更新源
sudo apt-get install softwarename 安装包
sudo apt-cache search softwarename 搜索软件包
sudo apt-cache show softwarename 获取包的相关信息
sudo apt-get remove package 删除包
sudo apt-get remove package --purge 删除包,以及配置文件等
sudo apt-get dist -upgrade 升级系统
sudo apt-get source package 下载该包的源代码
sudo apt-get clean && sudo apt -get autoclean 清理无用的包
  • 查看更新: sudo apt -get update
  • 下载安装软件: sudo apt -get install softwarename
  • 删除包: sudo apt -get remove package

4. Linux常用服务器构建-ftp服务器

FTP: 文件传输协议

  1. 安装vsftpd服务器
sudo apt-get install vsftpd
  1. 配置vsftpd.conf文件

用于谁可以登录我的电脑啊,指定上传路径啊,允许本机登录啊, 允许哪一个用户可以登录,允许上传文件到FTP服务器啊

sudo vi /etc/vsftpd.conf
  • 打开配置文件: sudo vi /etc/vsftpd.conf

    1. 不允许匿名登录: anonymous_enable = NO
    2. 指定上传的路径: local_root = /home/laowang/ftp
    3. 允许本地登录:local_enabled = YES
    4. 允许vsftpd.chroot_list文件中的用户登录FTP服务器: chroot_list_enable = YES + CHROOT_LIST_FILE = /ETC/VSFPD.CHROOT_LIST
    5. 允许上传文件到FTP服务器: write_enable = YES
  • 建立list文件,将一个用户名放进去: sudo vi /etc/vsftpd.chroot_list

  • 添加一个新的用户名进去

  • 将文件夹的拥有者权限减去w权限

  • 在ftp文件夹中新建一个文件夹,这个文件夹就是使用ftp客户端进行下载,上传时的文件夹

  • 重启FTP服务器: sudo /etc/init.d/vsftpd restart

  • 上传命令: put somefile

  • 下载命令: get somefile

  1. 图形化的FTP服务器软件

FileZilla-window

5.Linux常用服务器搭建-ssh和scp

SSH

SSH是建立在应用层和传输层基础上的安全协议

SSH是目前较为可靠,专门为远程登录回话和其他网络服务提供安全性的协议,常常用于远程登录,以及用户之间的资料拷贝

使用SSH服务,需要安装相应的服务器和客户端,服务器和客户端的关系:如果,A机器想要被B机器远程控制,那么A机器需要安装SSH服务器,B机器需要安装SSH客户端

(1). 安装SSH

A.安装SSH服务器

sudo apt-get install openssh-server

B.远程登录

ssh 用户名@IP

(2). 使用SSH链接服务器

先查看ip地址:

ifconfig

在直接远程登录

ssh 用户名@IP

SCP: linux之间互相拷贝

# 上传文件(本地->远程)
scp Filename RemoteUserName@RemoteHostIP:Remotepath
# 上传文件夹
scp -r Foldername RemoteUserName@RemoteHostIP:RemoteFile
# 下载文件(远程->本地)
scp RemoteUserName@RemoteHostIP:Remotepath Filename
# 下载文件夹
scp -r RemoteUserName@RemoteHostIP:RemoteFile Foldername

6. vim编辑器

vi 123.py
  • 打开vi以后,默认进入到一种状态->命令模式
  • 输入小写i, 由命令模式转为->编辑模式,在这种模式下才可以编辑
  • 按ESC键,输入:wq, 编辑模式->末行模式,保存并自动退出

快捷键 含义
88G 快速定位到第88行
1G 快速定位到文件首行
G 快速定位到文件末尾行
dd 删除光标所在行
5dd 从当前光标算,删除5行
x 删除光标前的一个字符
X 删除光标后的一个字符
D 删除光标后本行所有内容
d0 删除光标前本行所有内容
dw 删除光标开始位置的字
u 撤销命令
Ctrl +r 反撤销
yy 复制当前行
19yy 复制19行
p 粘贴
2dd + p 剪切2行
v 整体选中,可以选中多行
v +>>/<< 实现整体移动
r 替换
:%s/main/MAIN/g 整个文本将main替换为MAIN
:5,15s/main/MAIN/g 文本第5-15行将main替换为MAIN
/print 查找print(n查看下一个)

Linux for python教程02的更多相关文章

  1. 极简python教程02:基础变量,删繁就简

    python极简教程已经开赛,如果错过说明可以回翻: 极简python教程:赛前说明 借这个机会,我再讲讲我的教程和其他网上的教程的区别: 1 我分享的内容,是我在工作中会高频使用的语法,是精华内容 ...

  2. Linux for Python教程01

    目录 1. Linux和操作系统 1.1. 什么是操作系统 1.2. 现有操作系统 1.3. Linux用户目录 1.4. Linux文件权限 2. Linux命令 2.1 文件管理相关 (1).ls ...

  3. 大爽Python入门教程 0-2 什么是IDE?python选什么IDE好?

    大爽Python入门公开课教案 点击查看教程总目录 一 感受IDE 什么是IDE? 在这里,我并不想直接给出一个回答, 因为这个回答对初学者来说,可能有些抽象. 我想先带大家感受下IDE. 1 比较不 ...

  4. python教程与资料

    网上有个人写的python快速教程,非常好.比看书好多了.猛击下面的链接地址 http://www.douban.com/group/topic/30008503/ python文档资料收集 pyth ...

  5. CTF必备技能丨Linux Pwn入门教程——PIE与bypass思路

    Linux Pwn入门教程系列分享如约而至,本套课程是作者依据i春秋Pwn入门课程中的技术分类,并结合近几年赛事中出现的题目和文章整理出一份相对完整的Linux Pwn教程. 教程仅针对i386/am ...

  6. 学习Linux系列--Python资源收集

    本系列文章记录了个人学习过程的点点滴滴. 回到目录 玩Linux,不懂一门脚本语言是不行的,我这里选择的是Python. 10.入门资源 下面前三遍是比较系统的文档,后面是一些心得,我看了好几天,终于 ...

  7. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  8. linux,python 常用的处理log的命令

    一般的log文件都是需要过滤 ps:管道符| 管道符前面的输出值 grep 过滤查找 将是error的log过滤显示 grep '221.2.100.138'  web.access.log   gr ...

  9. Linux Shell系列教程之(十三)Shell分支语句case … esac教程

    本文是Linux Shell系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell系列教程 分支语句非常实用,基本上高级语言都支持分支语句(python 没有),大多数都使 ...

随机推荐

  1. iPhone屏幕尺寸说明及iPhone在微信上的一些表现

    很久没有更新博客了,由于自己的水平一般,能力有限,这种情况下的知识点可能过于薄弱,所以不好分享给大家,注意是怕误导大家了,最近学习移动端的东西,有点心得,分享给大家,希望对大家有所帮助,如果有什么地方 ...

  2. 另类爬虫:从PDF文件中爬取表格数据

    简介   本文将展示一个稍微不一样点的爬虫.   以往我们的爬虫都是从网络上爬取数据,因为网页一般用HTML,CSS,JavaScript代码写成,因此,有大量成熟的技术来爬取网页中的各种数据.这次, ...

  3. 【转载】阿里云ECS Linux服务器禁止某些IP访问

    在阿里云ECS Linux服务器运维过程中,如果发现某些IP访问异常,如怀疑有攻击行为或者怀疑是别人写的爬虫程序长时间占用你的服务器资源,则可以通过相关的设置来禁止这些IP段的访问,拒绝这些IP的请求 ...

  4. C#操作DataReader类

    一.常用属性 名称 说明 Depth 获取一个值,用于指示当前行的嵌套深度 FieldCount 获取当前行中的列数 HasRows 获取一个值,该值指示 SqlDataReader 是否有行 IsC ...

  5. IDEA更换主题

    更换IDEA主题只需要3步 1. 下载主题 在主题网站上IDEA Color Themes 上浏览喜欢的主题并下载该主题.(如果网址有变更,google IDEA themes即可.)  2. 导入主 ...

  6. yarn install npm install (转载)

    解决 npm i 及 yarn install 都无法进行安装的问题和node-sass安装太慢的问题 2018年03月31日 19:49:07 Johnny丶me 阅读数:2906更多 所属专栏:  ...

  7. github 遇到的问题

    目录 1.遇到的问题关联远程仓库,操作顺序如下:2.解决方法3.git merge 与 git rebase4.git pull 与 git pull --rebase5.更多参考 博客逐步迁移至 极 ...

  8. linux服务器重启指令

    一.Linux 的五个重启命令 1.shutdown 2.poweroff 3.init 4.reboot 5.halt 二.五个重启命令的具体说明 shutdown reboot 在linux下一些 ...

  9. 将Y-m-d转换为Y年m月d日

    自己编写的,不能直接套用,理解后可自行变化: $var=explode(' ',$res['act_starting']); $var1=$var[0];          $time=explode ...

  10. canvas-8searchLight2.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...