Linux用户权限指令, 定时任务等指令
一. 网卡配置详解
网络配置文件:
/etc/sysconfig/network 网络接口配置文件:
/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME # 这个INTERFACE_NAME 就是 ens33 如下图
DEVICE=: 关联的设备名称,要与文件名的后半部“INTERFACE_NAME”保持一致;
BOOTPROTO={static|none|dhcp|bootp}: 引导协议;要使用静态地址,使用static或none;dhcp表示使用DHCP服务器获取地址;
IPADDR=: IP地址
NETMASK=:子网掩码
GATEWAY=:设定默认网关;
ONBOOT=:开机时是否自动激活此网络接口;
HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;
USERCTL={yes|no}: 是否允许普通用户控制此接口;
PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定的DNS地址;
# 有的刚装好Linux的时候,网卡默认没启动
#编辑网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0 # 我的是ens33
#修改配置参数
ONBOOT=yes # 这个样就默认启动了
ifup, ifdown命令
ifup ens33 #启动ens33网卡
ifdown ens33 # 关闭ens33网卡
二 . 用户管理权限篇
root与其他用户的信息
在Linux系统中,用户也有自己的UID身份账号且唯一
系统管理员UID为0 # root
系统用户UID为1~999 # Linux安装的服务程序都会创建独有的用户负责运行。
普通用户UID从1000开始:# 由管理员创建
创建普通用户
# 添加用户
useradd attila
# 设置密码
passwd 666
# 修改密码
passwd attila # root可以修改所有用户的密码,且不需要验证
切换用户
su命令可以切换用户身份的需求,
su - username # su命令中间的-号很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息
Tip:
1.超级用户root切换普通用户无需密码,例如“群主”想踢谁就踢谁
2.普通用户切换root,需要输入密码
3.普通用户权限较小,只能基本查看信息
4.$符号是普通用户命令提示符,#是超级管理员的提示符
5.~ 表示在家目录,比如root用户在 /root下 就显示~
userdel删除用户
-f 强制删除用户
-r 同时删除用户以及家目录
userdel -rf attila
sudo命令
sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。
若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
参数
# sudo 【选项】【参数】
-b:在后台执行指令;
-h:显示帮助;
-H:将HOME环境变量设为新身份的HOME环境变量;
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l:列出目前用户可执行与无法执行的指令;
-p:改变询问密码的提示符号;
-s<shell>:执行指定的shell;
-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v:延长密码有效期限5分钟;
-V :显示版本信息。
想要给普通用户root的权限,必须编辑sudoers文件
# visudo # 后面不用加文件路径自己去找 /etc/sudoers 使用visudo编辑出错会告诉你
写入
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
attila ALL=(ALL) ALL #允许attila在任何地方,执行任何命令
授权之后就可以做一些只有root才能做的事情了,如:
# 先切换到attila用户
su - attila
# 原来只有root才能看/root
sudo ls /root # 前边要写sudo
三 . 文件与目录权限
# Linux文件主要有三种身份,每种身份有三种权限
# 身份
u(user), g(group), o(others)
# 权限
r(可读)w(可写)e(可执行)
# 权限信息三个为一组,如rw-就是一组 # 文件类型的参数与解释
- 一般文件
d 文件夹
l 软连接(快捷方式)
b 块设备,存储媒体文件为主
c 代表键盘,鼠标等设备
权限数字转化
查看用户权限命令(id)
id指令查看用户所属群主
# id root
uid=0(root) gid=0(root) 组=0(root)
修改属主为attila
# chown (change owner)
chown attila 校花的故事.txt
修改属组为attila
# chgrp (change group)
chgrp attila 校花的故事.txt
文件权限用数字计算
# chmod
chmod 754 校花的故事.txt
# 754对应的位置分别是u g o
# 7 = 4+2+1 也就是user 的权限是 r w e
软连接
# 建立软连接的格式
ln -s 你要连接的文件的绝对路径 软连接的绝对路径(名字地址随便给)
# 把/tmp/校花的故事.txt软连接到/home/天龙.txt
ln -s /tmp/校花的故事.txt /home/天龙.txt
# 然后cat /home/天龙.txt 就直接可以看到校花的故事.txt里面的内容了, 天龙.txt相当于快捷方式,删除不影响校花的故事.txt
PS1变量
[root@oldboy_python ~]# echo $PS1
[\u@\h \W]\$ 可以自行调整全局变量/etc/profile文件用于永久生效 PS1='[\u@\h \W\t]\$'
\d 日期
\H 完整主机名
\h 主机名第一个名字
\t 时间24小时制HHMMSS
\T 时间12小时制
\A 时间24小时制HHMM
\u 当前用户账号名
\v BASH的版本
\w 完整工作目录
\W 利用basename取得工作目录名
\# 下达的第几个命令
\$ 提示字符,root为#,普通用户为$
PS1 > 变量名
$PS1 > 查看变量内容
PS1=新内容 重新赋值 变量赋值,查看
name='chaoge'
echo $name PS1显示ip地址
export PS1="[\u@\h `/sbin/ifconfig ens33 | sed -nr 's/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'` \w]\$"
四 . 常用命令
tar命令
tar(选项)(参数)
-A或--catenate:新增文件到以存在的备份文件;
-B:设置区块大小;
-c或--create:建立新的备份文件;
-C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
-d:记录文件的差别;
-x或--extract或--get:从备份文件中还原文件;
-t或--list:列出备份文件的内容;
-z或--gzip或--ungzip:通过gzip指令处理备份文件;
-Z或--compress或--uncompress:通过compress指令处理备份文件;
-f<备份文件>或--file=<备份文件>:指定备份文件;
-v或--verbose:显示指令执行过程;
-r:添加文件到已经压缩的文件;
-u:添加改变了和现有的文件到已经存在的压缩文件;
-j:支持bzip2解压文件;
-v:显示操作过程;
-l:文件系统边界设置;
-k:保留原有文件不覆盖;
-m:保留文件不被覆盖;
-w:确认压缩文件的正确性;
-p或--same-permissions:用原来的文件权限还原文件;
-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
-N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
--exclude=<范本样式>:排除符合范本样式的文件。
示例:
# 将/tmp/下所有内容压缩成All_log.tar.gz并且放到/home/下
tar -zcvf /home/All_log.tar.gz /tmp/* # 把Python源码包Python-3.7.0b3.tgz 解压到/opt/python3的文件夹下
tar -zxvf Python-3.7.0b3.tgz -C /opt/python3
netstat命令
netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
参数
netstat [选项]
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-l或--listening:显示监控中的服务器的Socket;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-a或--all:显示所有连线中的Socket; # netstat -tunlp
ps命令
ps命令用于查看系统中进程状态
ps 命令常用参数
-a 显示所有进程
-u 用户以及其他详细信息
-x 显示没有控制终端的进程 # 查找进程
ps -ef
# 查找python进程
ps -ef | grep python
kill命令
kill命令用来删除执行中的程序或工作
-a:当处理当前进程时,不限制命令名和进程号的对应关系;
-l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;
-p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;
-s <信息名称或编号>:指定要送出的信息;
-u:指定用户。
只有第9种信号(SIGKILL)才可以无条件终止进程,其他的信号进程都有权利忽略,下面的常用信号:
HUP 1 终端断线
INT 2 中断(同 Ctrl + C)
QUIT 3 退出(同 Ctrl + \)
TERM 15 终止
KILL 9 强制终止
CONT 18 继续(与STOP相反, fg/bg命令)
STOP 19 暂停(同 Ctrl + Z)
示例:
先用ps查找进程,然后用kill杀掉:
ps -ef | grep vim
root 3268 2884 0 16:21 pts/1 00:00:00 vim install.log
root 3370 2822 0 16:21 pts/0 00:00:00 grep vim kill 3268
killall命令
# 通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个去结束这 些进程会比较麻烦,
此时可以使用 killall 命令来批量结束某个服务程序带有的全部进程。 # 例如nginx启动后有2个进程
killall nginx
关闭防火墙命令
centos7默认已经使用firewall作为防火墙了
1.关闭防火墙
systemctl status firewalld #查看防火墙状态
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld#关闭防火墙开机启动
systemctl is-enabled firewalld.service#检查防火墙是否启动
Linux语言设置
#查看系统当前字符集
echo $LANG
locale #检查xshell crt的字符集
#命令修改字符集
# vim /etc/profile.d/locale.sh
export LC_CTYPE=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8 # vim /etc/locale.conf
LANG=zh_CN.UTF-8 # vim /etc/sysconfig/i18n
LANG=zh_CN.UTF-8 # vim /etc/environment
LANG=zh_CN.UTF-8
LC_ALL=zh_CN.UTF-8 英文版本 # vim /etc/profile.d/locale.sh
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8 # vim /etc/locale.conf
LANG=en_US.UTF-8 # vim /etc/sysconfig/i18n
LANG=en_US.UTF-8 # vim /etc/environment
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8 # 更改完之后需要保存生效 source /etc/proprofile
2.更改后查看系统语言变量
locale
df命令
df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
# 语法
df(选项)(参数)
-h或--human-readable:以可读性较高的方式来显示信息;
-k或--kilobytes:指定区块大小为1024字节;
-T或--print-type:显示文件系统的类型;
--help:显示帮助;
--version:显示版本信息。
tree命令
1 tree命令以树状图列出目录的内容。
2
3 -a:显示所有文件和目录;
4 -A:使用ASNI绘图字符显示树状图而非以ASCII字符组合;
5 -C:在文件和目录清单加上色彩,便于区分各种类型;
6 -d:先是目录名称而非内容;
7 -D:列出文件或目录的更改时间;
8 -f:在每个文件或目录之前,显示完整的相对路径名称;
9 -F:在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","@","|"号;
10 -g:列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码;
11 -i:不以阶梯状列出文件和目录名称;
12 -l:<范本样式> 不显示符号范本样式的文件或目录名称;
13 -l:如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录;
14 -n:不在文件和目录清单加上色彩;
15 -N:直接列出文件和目录名称,包括控制字符;
16 -p:列出权限标示;
17 -P:<范本样式> 只显示符合范本样式的文件和目录名称;
18 -q:用“?”号取代控制字符,列出文件和目录名称;
19 -s:列出文件和目录大小;
20 -t:用文件和目录的更改时间排序;
21 -u:列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码;
22 -x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。
tree参数
设置主机名
[root@localhost /tmp]#hostnamectl set-hostname xixixi
[root@xixixi ~ ]#hostname
xixixi
DNS
DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,
而不用去记住能够被机器直接读取的IP数串。
通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。
查看Linux的dns,唯一配置文件
配置文件
cat /etc/resolv.conf
#dns服务器地址
nameserver 119.29.29.29
nameserver 223.5.5.5 # 我们遇到过qq能上去但是百度上不去的情况吧,这就是有dns搞的鬼, 我们需要按照以下做法:
vim /etc/resolv.conf
nameserver 114.114.114.114 # 这个是114dns服务器 # 223.5.5.5 和 223.6.6.6 是阿里的dns服务器
nslookup命令
#解析
nslookup www.baidu.com
计划任务crond服务
其实就是定时任务
crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似
参数
crontab (选项)(参数)
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。 存放定时任务的文件
/var/spool/cron
注意:
1. 查看计划任务的执行: tail -f /var/log/cron
2.写计划任务时,命令必须加上绝对路径,否则会出现 "从日志中看,确实触发了计划任务的执行,但是命令没有成功" 的情况
3.计划任务执行的命令是否存在,软件是否安装 查看:rpm -qa | grep cron
4.确保crontab服务运行
systemctl status cron
ps -ef | grep crond
5.检查crontab是否开机
systemctl is-enabled crond
crontab配置文件
在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root # For details see man 4 crontabs # Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
分 时 日 月 周
示例:
# 所有命令都要用绝对路径写
crontab -e # 进入编辑计时器设置
# 每周一到周五的晚上11点,清空/tmp目录下的所有文件
00 23 * * 1-5 /user/bin/rm -rf /tmp/*
# 清空指令rm也需要找到它的绝对路径, 然后tmp下的文件也要绝对路径 # 每周3和周5的凌晨1点,备份/var/log 到 /vmtp/
00 01 * * 3,5 /usr/bin/cp /var/log /vmtp/ # which cp 找到cp指令的所在位置 # 每隔三分钟同步一下时间
*/3 * * * * /usr/sbin/ntpdate ntp1.aliyun.com - # 表示范围 3-5 就是3到5
, # 表示和的意思 3,5 就是3和5
/ # 表示每多长时间 */3 每3(分,时,日,月,周)
yum 命令
yum解决了依赖关系,提供了查找,安装,删除某一个,一组,甚至是全部软件的命令
yum(选项)(参数)
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件
实例
部分常用的命令包括: 自动搜索最快镜像插件 yum install yum-fastestmirror
五 . yum配置
yum源的目录
#进入yum源目录
cd /etc/yum.repos.d/
#查看yum源文件
ls -l
配置阿里云yum源
1.好习惯,备份yum源
mkdir repo_bak
mv *.repo repo_bak/
2.下载阿里云repo文件
wget http://mirrors.aliyun.com/repo/Centos-7.repo
3.清空yum缓存并且生成新的yum缓存
yum clean all
yum makecache
4.安装软件扩展源
yum install -y epel-release
yum repolist all # 列出所有仓库
yum list all # 列出仓库所有软件包
yum info 软件包名 # 查看软件包信息
yum install 软件包名 # 安装软件包
yum reinstall 软件包名 # 重新安装软件包
yum update 软件包名 # 升级软件包
yum remove 软件包名 # 移除软件包
yum clean all # 清楚所有仓库缓存
yum check-update # 检查可以更新的软件包
yum grouplist # 查看系统中已安装的软件包
yum groupinstall 软件包组 # 安装软件包组
六 . 必须掌握的/etc下的Linux目录知识
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录
#网卡配置文件
/etc/sysconfig/network-script/ifcfg-eth0
#修改机器名以及网卡,网管等配置
/etc/sysconfig/network
#linux的dns客户端配置文件,实现域名和ip的互相解析
/etc/resolv.conf
#本地dns解析文件,设定ip和域名的对应解析,开发测试最常用的临时域名解析
/etc/hosts/
#系统全局环境变量永久生效的配置文件,如PATH等
/etc/profile
#用户的环境变量
~/.bash_profile
~/.bashrc
#存放可执行程序的目录,大多是系统管理命令
/usr/sbin
#存放用户自编译安装软件的目录 > 等同于C:\Program files (windows)
/usr/local
#关于处理器的信息,还可以top指令查看
/proc/cpuinfo
#查看内存信息,还可以free -m
/proc/meminfo
七 . Linux下安装程序的方法
rpm -ivh 包名.rpm # 需要手动解决依赖关系
yum install 包名 # yum自动处理依赖关系
编译安装(源码安装)
八 . 服务器无法上网错误
1.yum报错
Error couldn't resolve host 'mirrorlist.centos.org'
2.ping www.baidu.com 看是否能上网
3.如果百度不通,ping ip通了
ping 119.29.29.29 ,说明dns有问题
Linux用户权限指令, 定时任务等指令的更多相关文章
- linux用户权限相关内容查看
linux用户权限相关内容查看 1 用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...
- 大数据之Linux用户权限设置
用户 是Linux系统工作中重要的一环, 用户管理包括 用户 与 组 管理,在Linux系统中, 不论是由本级或是远程登录系统, 每个系统都必须拥有一个账号, 并且对于不同的系统资源拥有不同的使用权限 ...
- linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解
linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...
- Linux - 用户权限相关命令
用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01. 用户 和 权限 的基本概念 1.1 基本概念 用户 是 Linux 系统工作中重要 ...
- linux用户权限 -> 系统用户管理
用户基本概述: Linux用户属于多用户操作系统,在windows中,可以创建多个用户,但不允许同一时间多个用户进行系统登陆,但是Linux可以同时支持多个用户同时登陆操作系统,登陆后互相之间并不影响 ...
- linux用户权限、系统信息相关命令(待学)
用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01.用户和权限的基本概念 1.1 基本概念 用户 是Linux系统工作中重要的一环, 用 ...
- linux用户权限管理, chmod, ln
1 /etc/passwd文件 用户名 密码 UID GID Full Name 主目录 ...
- linux用户权限 -> 系统基本权限
比如rwxr-xr-x linux中正是这9个权限位来控制文件属主(User).属组(Group).其他用户(Other)基础权限. 用户对资源来说, 有三种角色 User(u): 属主用户(文件所有 ...
- 10.Linux用户权限
1.权限基本概述 1. 什么是权限? 我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用于约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资 ...
随机推荐
- [JXOI2018]排序问题
嘟嘟嘟 这是今天做的第二道九条可怜的题,现在对他的题的印象是:表面清真可做,实则毒瘤坑人. 首先要感谢吉司机,我期望学的特烂,好在样例直接告诉我们期望怎么求了. 令\(b_i\)表示第\(i\)个不同 ...
- 路飞学城-Python开发集训-第1章
学习体会: 在参加这次集训之前我自己学过一段时间的Python,看过老男孩的免费视频,自我感觉还行,老师写的代码基本上都能看懂,但是实际呢?....今天是集训第一次交作业的时间,突然发现看似简单升级需 ...
- Oracle BBED 工具 说明
一. BBED介绍 有关BBED 详细使用说明的pdf文档,也是从网上下载的: http: Thename bbed is an acro ...
- Python脱产8期 Day10 2019/4/24
一 函数 1.定义:完成 特定 功能的代码块,作为一个整体,对其进行特定的命名,该名字就代表函数>>工具. 2.函数的优点:1.避免代码的冗余:2.让程序结构代码更加清晰:3.让代码更加具 ...
- Java多线程(四)—— synchronized关键字续
1.synchronized原理 在java中,每一个对象有且仅有一个同步锁.这也意味着,同步锁是依赖于对象而存在.当我们调用某对象的synchronized方法时,就获取了该对象的同步锁.例如,sy ...
- HAProxy基础
一.简介 HAProxy是由C语言编写基于事件驱动模型的一款高效稳定.功能强大的负载均衡软件,其性能可媲美商业负载均衡软件,不过在最新的版本中HAProxy已经分为社区版本和企业版,社区版完全免费,企 ...
- 多个jdk 变更 引起 tomcat插件 启动不了 The JRE could not be found.Edit the server and change the JRE location.
The JRE could not be found.Edit the server and change the JRE location. 在Windows->Preferences-> ...
- 基于 Vue + Koa2 + MongoDB + Redis 实现一个完整的登录注册
项目地址:https://github.com/caochangkui/vue-element-responsive-demo/tree/login-register 通过 vue-cli3.0 + ...
- .NET下日志系统的搭建——log4net+kafka+elk
.NET下日志系统的搭建--log4net+kafka+elk 前言 我们公司的程序日志之前都是采用log4net记录文件日志的方式(有关log4net的简单使用可以看我另一篇博客),但是随着 ...
- 【C#复习总结】析构函数
上篇提到析构函数,就顺便复习一下. 一 C# 析构函数 1.1 析构函数的定义 析构函数用于释放被占用的系统资源. 析构函数的名字由符号“-”加类名组成. 1.2 析构函数注意的问题 使用析构函数时, ...