zoukankan      html  css  js  c++  java
  • Linux for python教程02

    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查看下一个)
  • 相关阅读:
    80X86常用汇编指令集(不断补充完善中)
    重温大师经典:Martin Fowler 的持续集成
    .NET Framework 将有限地向开发者公开源代码
    DotNet源代码中的模式Builder生成器模式
    Delphi内嵌汇编语言BASM精要(转帖)
    sealed关键字用法
    VS2008设置查看.NET源码的方法
    基于LINQ to SQL的WEB开发三层架构(1)
    拓扑排序
    HDU1495 非常可乐(BFS)
  • 原文地址:https://www.cnblogs.com/haochen273/p/10242853.html
Copyright © 2011-2022 走看看