最近的linux工作记录

最近公司走了一些同事,部分服务器交到了我的手里,总结一些常用的操作

注:大写的字符串一般是用来占位,需要替换

创建账户和使用密钥对登陆

1,账户系列

useradd 选项 用户名
其中各选项含义如下:
代码:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

说一说具体的操作

#创建用户
mkdir /home/HOMEPATH
useradd -d /home/HOMEPATH USERNAME //创建用户USERNAME,并设置/home/HOMEPATH为此用户家目录 #删除账号
userdel -r USERNAME // -r为同时删除用户家目录 #修改帐号
主要用的就是修改用户组
usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-g <群组>][-G <群组>][用户帐号] 更改用户所在组
usermod -g GOROUPNAME USERNAME
#权限和文件归属
首先要把创建的家目录的拥有者改为用户,权限改为700
chown USERNAME /home/HOMEPATH
chmod 700 /home/HOMEPATH

使用密钥对登陆系列

#生成公私钥
命令生成:
ssh-keygen -t rsa//会让输入文件名 比如输入的是test,将会得到一个 test文件和test_pub文件
//服务器端使用公钥,自己下载私钥
//可以使用xshell等工具生成 原理一样。
让输入密码的时候可以输入密码也可以为空如果确定不会外传,可以为空,下载私钥到自己的电脑,不再赘述 mkdir ~/.ssh
chmod 700 ~/.ssh
mv test_pub ~/.ssh/authorized_keys //支持多个私钥户登录,把对应公钥追加到文件后面就可以,公钥之间需要换行
chmod 600 ~/.ssh/authorized_keys
注意:.ssh和authorized_keys的拥有者应该是此用户 使用xshell等工具选择相应的私钥登陆服务器即可

给某些账户设置可提权到root

我们往往在日常使用的时候都不需要root权限,某些人只需要查询日志,某些人只有在特定情况下需要切换的root账户下操作。针对这两种情况,设置两类用户,一类是只能查看日志,另一类可以切换到root账户。前者就不提了,后者我们可以通过设置sudoers来达到

使用命令  visudo   会自动打开文件,找到下面这样的 注释写的很明白
允许sodo这个组的成员执行所有命令,这里的配置是不需要密码执行sudo
# Allow members of group SUDOGROUP to execute any command
%SUDOGROUP ALL=NOPASSWD:ALL

注意: 这里要慎用,否则可能会导致你sudo rm -rf 这类命令直接执行成功,然后你就不得不跑路了。还有就是修改之前备份是个好习惯

具体的sudoers中的命令含义,这两天写新文章来说明。这篇文章不做详细讲解

最近的linux工作记录的更多相关文章

  1. linux工作调度(计划任务)

    linux工作调度有两种:at,cron · at:at是一个可以处理仅执行一次就结束调度的命令.说白了就是在某个时间需要干某一件事,例如在2018年10月12日下午一点要执行一个数据库矫正脚本. · ...

  2. (转)完全用GNU/Linux工作 by 王珢

    完全用GNU/Linux工作 王珢      (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...

  3. 清华申请退学博士作品:完全用Linux工作

    http://www.cnblogs.com/cbscan/articles/3252872.html 下文地址 http://blog.oldboyedu.com/use-linux/ 按: 尽管我 ...

  4. 王垠:完全用Linux工作

    来自: Zentaur(alles klar) 录一篇旧文 作者:王垠 完全用Linux工作,抛弃windows 我已经半年没有使用 Windows 的方式工作了.Linux 高效的完成了我所有的工作 ...

  5. Arch Linux 安装记录

    Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...

  6. [工作记录] Android OpenGL ES: non-square texture - continue

    previous: [工作记录] Android OpenGL ES 2.0: square texture not supported on some device recently I found ...

  7. Linux学习方法之以始为终—Linux工作分类

    /** ****************************************************************************** * @author    暴走的小 ...

  8. 完全用 GNU/Linux 工作(转)

    转自:http://www.chinaunix.net/old_jh/4/16102.html 看到一半,实在太长,但已觉得很好,转来分享一下. 完全用 GNU/Linux 工作 - 摈弃 Windo ...

  9. MySQL跨表更新字段 工作记录

    工作中遇到两表查询,从user表中获取用户唯一id字段 写入到另外一张qiuzu表中的uid字段中; 二者可以关联起来的只有用户的手机号码tel字段; 了解需求后数据量稍多,不可能一个一个的手动修改 ...

随机推荐

  1. MySQL实验准备(二)--Python模拟数据(MySQL数据库)

    Python模拟数据(MySQL数据库) 数据模拟 目的:模拟多个表的插入和查询数据的模拟,再通过基准测试脚本测试服务器性能和收集数据,仿真模拟. 备注: 如果需要基础的python环境,可以查看&l ...

  2. Java 使用 happen-before 规则实现共享变量的同步操作

    前言 熟悉 Java 并发编程的都知道,JMM(Java 内存模型) 中的 happen-before(简称 hb)规则,该规则定义了 Java 多线程操作的有序性和可见性,防止了编译器重排序对程序结 ...

  3. bootstrap-multiselect 多选

    官方教程 http://www.kuitao8.com/demo/20140224/1/bootstrap-multiselect-master/index.html 使用方法: 第一步引用样式以及相 ...

  4. Java 基础系列合集

    Java基础知识你知道多少? Java特性 Java三大特性:封装,继承,多态 Java 抽象类与接口 Java 浅拷贝和深拷贝 Java static和final Java 内部类.静态内部类.匿名 ...

  5. cache 访问频率的思考

    互联网的项目用户基数很大,有时候瞬间并发量非常大,这个时候对于数据访问来说是个灾难.为了应对这种场景,一般都会大量采用web服务器集群,缓存集群.采用集群后基本上就能解决大量并发的数据访问.当然这个时 ...

  6. sublime3安装ctags追踪插件

    sublime3经常要用到函数追踪插件,怎做的?下面看安装步骤: 1.安装package control 按快捷键 ctrl+shift+p 2.安装搜索 ctags插件 3.下载ctags可执行程序 ...

  7. 前端面试整理——javascript算法和测试题

    (1)算法: 1.斐波那契数列:1.1.2.3.5.8.13.21.输入n,输出数列中第n位数的值. 方案一: function fn(n){ var num1 = 1, num2= 1, num3 ...

  8. Docker第二章:docker基础1--镜像,容器&仓库

    镜像介绍及操作:http://www.haveneed.cn/article-detials/115 容器介绍及操作:http://www.haveneed.cn/article-detials/11 ...

  9. SEIG Modbus 3.4 CVE-2013-0662 漏洞分析与利用

    前言 Schneider Electric Modbus Serial Driver 会监听 27700 端口,程序在处理客户端发送的数据时会导致栈溢出. 测试环境: windows xp sp3 相 ...

  10. nodejs在spawn中执行npm报错 [Error: spawn ENOENT]” errors

    描述: 上代码 var ps = require('child_process').spawn("npm", ['install'], { stdio: 'inherit', cw ...