Linux入门篇系统配置文件
Posted 大虾好吃吗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux入门篇系统配置文件相关的知识,希望对你有一定的参考价值。
目录
🍁网卡配置文件
🍁域名配置文件
🍁本地主机名解析文件
🍁自动挂载配置文件
🍁开机自动执行脚本文件
🍁系统运行级别文件
🍁破解root密码
🍁系统登录提示信息文件
🍁系统用户文件
🍁系统组文件
🍁系统文件权限
🍁系统文件属性权限修改
🍁系统文件特殊权限
🦐博客主页:大虾好吃吗的博客
🦐专栏地址:Linux从入门到精通
网卡配置文件
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet" #网卡类型:以太网
BOOTPROTO="static" #ip获取方式:dhcp 动态;static 静态
NAME="ens33" #网卡名
DEVICE="ens33" #设备名
ONBOOT="yes" #是否开机启动
IPADDR=192.168.8.10 #ip地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=192.168.8.2 #网关
DNS1=8.8.8.8 #首选dns
DNS2=114.114.114.114 #备选dns
[root@localhost ~]# ifdown ens33;ifup ens33; #关闭网卡;启动网卡
域名配置文件
[root@localhost ~]# cat /etc/resolv.conf #域名解析配置文件
# Generated by NetworkManager
nameserver 8.8.8.8
[root@localhost ~]# route -n #查看网关信息
本地主机名解析文件
[root@localhost ~]# vim /etc/hosts
192.168.8.11 web1 #文件末尾插入本机IP测试,ping访问web1查看是否成功
注:主机解析域名过程:缓存--hosts--首选dns--网上的根域名服务器
自动挂载配置文件
centos开机添加硬盘扫描联机
echo "- - -" >> /sys/class/scsi_host/host0/scan
echo "- - -" >> /sys/class/scsi_host/host1/scan
echo "- - -" >> /sys/class/scsi_host/host2/scan
fdisk -l #列出磁盘分区表
fdisk /dev/sdb #分区命令
n #新建分区
p #分区类型为主分区(e 为扩展分区)
1 #分区号(主分区1-4)
回车 #起始扇区,一般默认
回车 #结束扇区,代表分区大小(+10G 分区大小设为10G;回车 为剩余所有空间)
w #保存退出(q 不保存退出)
例:创建财务部目录,临时挂载并卸载后,永久挂载sdb1
[root@localhost ~]# mkdir /cwb #创建空目录,为挂载分区准备
[root@localhost ~]# mkfs.xfs /dev/sdb1 #格式化新分区
[root@localhost ~]# mount /dev/sdb1 /cwb #挂载新分区到/cwb
[root@localhost ~]# umount /dev/sdb1 #卸载分区
[root@localhost ~]# vim /etc/fstab #永久挂载
/dev/sdb1 /cwb xfs defaults 0 0
开机自动执行脚本文件
[root@localhost ~]# ll /etc/rc.local #查看链接文件
[root@localhost ~]# vim /etc/rc.d/rc.local
#末尾添加脚本文件
touch /tmp/123.txt
[root@localhost ~]# chmod +x /etc/rc.d/rc.local #给执行权限后重启验证是否创建文件123.txt
系统运行级别文件
0 关机,poweroff.target
1 单用户,rescue.target,破解密码
2 字符多用户,不常用,multi-user.target
3 字符多用户,有网络,常用,multi-user.target
4 字符多用户,不常用,multi-user.target
5 图形,graphical.target
6 重启,reboot.target
查看文件链接
[root@localhost ~]# ll /usr/lib/systemd/system/runlevel*target
切换运行级别
[root@localhost ~]# init 3 #切换字符界面
[root@localhost ~]# init 5 #切换图形界面
[root@localhost ~]# init 6 #重启
[root@localhost ~]# init 0 #关机
查看/设置运行级别
[root@localhost ~]# systemctl get-default #查看系统默认级别
graphical.target
[root@localhost ~]# systemctl set-default graphical.target #设置默认级别为图形,也可以使用runlevel5
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
[root@localhost ~]# systemctl set-default multi-user.target #设置默认级别为字符
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
注:centos6修改默认级别 /etc/inittab
破解root密码
生产环境中,身为管理员,需要定期修改root密码。但是如果root密码忘记了,可以通过下面命令修改密码。
(1)重启,在grub内核界面按方向键中止加载
(2)光标放在内核行,按"e"
(3)找到Linux16开头的行,末尾添加“rd.break”,按ctrl+x
(4)mount -o remount,rw /sysroot
chroot /sysroot
echo "123.com" | passwd --stdin root
touch .autorelabel
exit
exit
系统登录提示信息文件
[root@localhost ~]# vim /etc/motd #用户登录后提示信息
#运维操作规范
01.数据文件修改前备份
02.服务启动进行测试检查
03.使用root权限需要申请
04.重要文件修改需要保存到备份服务器
[root@localhost ~]# vim /etc/issue #用户登录前提示信息
[root@localhost ~]# yum -y install cowsay #下载表情包工具(测试也可以使用表情包测试)
[root@localhost ~]# animalsay welbak #随机表情包
系统用户文件
/etc/passwd #用户信息文件
/etc/shadow #用户密码文件
创建用户
[root@localhost ~]# useradd zhangsan #创建用户zhangsan
-u #指定用户的uid
-g #指定用户的基本组
-G #指定附属组,可以有多个, 但是这些附属组必须是系统内已经存在的
-c #指定描述
-d #指定家目录
-M #不建立家目录
-s #指定shell
-e #指定用户过期时间, 日期
-f #指定用户过期时间, 天数
修改用户
[root@localhost ~]# usermod -u 888 zhangsan #针对已有用户修改属性
-u #指定用户的uid
-g #指定用户的基本组
-G #指定附属组,可以有多个, 但是这些附属组必须是系统内已经存在的
-c #指定描述
-d #指定家目录
-M #不建立家目录
-s #指定shell
-e #指定用户过期时间, 日期
-f #指定用户过期时间, 天数
管理用户
[root@localhost ~]# usermod -L zhangsan #锁定zhangsan用户
[root@localhost ~]# usermod -l wangwu zhangsan #修改zhangsan为wangwu
-L #锁定用户
-U #解除锁定
-l #改名
passwd 密码命令
-l 锁定
-u 解锁
-d 清空
赋予wangwu用户密码,密码不符合安全性将提示,但是不影响使用。
[root@localhost ~]# passwd wangwu
更改用户 wangwu 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
第二种赋予用户密码命令,密码为‘123.com'适用于脚本使用
[root@localhost ~]# echo '123.com' | passwd --stdin wangwu
删除用户
[root@localhost ~]# userdel wangwu #删除用户wangwu
-r #添加-r选项删除宿主目录
[root@localhost ~]# head -1 /etc/passwd #查看开头第一行,一般为root用户
root:x:0:0:root:/root:/bin/bash
用户名:密码占位符:UID:GID:描述信息:家目录:登录shell
[root@localhost ~]# tail -1 /etc/shadow
lisi:$6$ao7cincIf.q8eGVD$6keG8lXCvJZvc3JpKm/d8cqra546v219ygyeWuv3RjeG2daGBl/Bn/bw.8CEKbPxadEYSID3D7N9neQhpnrwD0:19414:0:99999:7::: #查看末尾最后一行用户,密码文件
详情描述:
1)用户名
2)加密后的密码
3)上一次密码修改时间(单位是天,是距离1970年1月1日 多少天)
4)密码最小生存周期 单位:天 0表示随时可以修改密码;2表示两天内不能修改
5)密码最大生存周期 单位:天,密码使用的最长时间
6)密码到期前几天开始警告
7)密码过期之后到账户失效之前的时间限制 密码过期之后还可以用几天
8)账户过期时间
9)保留列
系统组文件
/etc/group #组文件
[root@localhost ~]# head -1 /etc/group #查看组文件第一行
root:x:0:
详情描述:
组名:密码占位符:GID:用户列表
管理组
[root@localhost ~]# groupadd cwb #创建组为cwb
-g #指定gid
groupmod -g 8888 cwb #修改组属性
groupdel cwb #删除组
gpasswd -a cw1 cwb #添加成员到组
gpasswd -d cw1 cwb #从组删除成员
gpasswd -M zhangsan,lisi cwb #批量添加成员到组
系统文件权限
r, w, x:可读、可写、可执行(r表示数字为4,w为2,x为1)
[root@localhost ~]# touch test.txt #长格式查看文件属性
[root@localhost ~]# ll test.txt
-rw-r--r--. 1 root root 0 3月 2 16:19 test.txt
第一栏代表这个文件的类型与权限
第一个字符代表这个文件是“目录、文件或链接文件等等”:
[ d ]则是目录,例如上表文件名为“.config”的那一行;
[ - ]则是文件,例如上表文件名为“initial-setup-ks.cfg”那一行;
[ l ]则表示为链接文件(link file);
[ b ]则表示为设备文件里面的可供储存的周边设备(可随机存取设备);
[ c ]则表示为设备文件里面的序列埠设备,例如键盘、鼠标(一次性读取设备)
接下来的rwx权限字符,以三个为一组:
第一组为“文件拥有者可具备的权限”;
第二组为“加入此群组之帐号的权限”;
第三组为“非本人且没有加入本群组之其他帐号的权限
第二栏表示有多少文件名链接到此节点
第三栏表示这个文件(或目录)的“拥有者账号”
第四栏表示这个文件的所属群组
第五栏表示这个文件的容量大小,默认单位是Bytes(字节)
第六栏表示这个文件的创建日期或者是最近修改日期
第七栏为这个文件的文件名
系统文件属性权限修改
chgrp :改变文件所属群组
#例:指定test.txt文件属组为lisi
[root@localhost ~]# chgrp lisi test.txt
[root@localhost ~]# ll test.txt
-rw-r--r--. 1 root lisi 0 3月 2 16:19 test.txt
chown :改变文件拥有者(属主、属组)
#例:指定test.txt文件属主和属组为lisi
[root@localhost ~]# chown lisi:lisi test.txt
[root@localhost ~]# ll test.txt
-rw-r--r--. 1 lisi lisi 0 3月 2 16:19 test.txt
chmod :改变文件的权限
ugo+-=rwx
777 #读4写2执行1
#例:指定权限为任何人可读可写可执行
[root@localhost ~]# chmod ugo=rwx test.txt
[root@localhost ~]# ll test.txt
-rwxrwxrwx. 1 lisi lisi 0 3月 2 16:19 test.txt
getfacl: 查看acl(文件访问控制列表)
#例:查看test.txt
[root@localhost ~]# getfacl test.txt
# file: test.txt
# owner: lisi
# group: lisi
user::rwx
group::rwx
other::rwx
setfacl: 设置acl(针对某用户单独设置权限)
-m u:zhangsan:rwx 单独赋予zhangsan权限
-x u:zhangsan 删除acl条目
-b 清空acl
#例:给test.txt设置为lisi可读写执行,其他人为不可读写执行,通过acl设置zhangsan可以读
[root@localhost ~]# chmod 700 test.txt
[root@localhost ~]# setfacl -m u:zhangsan:r test.txt
[root@localhost ~]# getfacl test.txt
# file: test.txt
# owner: lisi
# group: lisi
user::rwx
user:zhangsan:r--
group::rwx
mask::rwx
other::---
lsattr: 查看文件隐藏权限
chattr: 更改文件隐藏权限
+i 锁定文件
+a 设置文件仅追加
#例:先查看文件隐藏权限,通过命令锁定并仅追加test.txt
[root@localhost ~]# lsattr test.txt
---------------- test.txt
[root@localhost ~]# chattr +ia test.txt
[root@localhost ~]# lsattr test.txt
----ia---------- test.txt
系统文件特殊权限
SetUID(或者 s 权限):当一个具有执行权限的文件设置SetUID权限后,用户执行这个文件时将以文件所有者的身份执行。
[root@localhost ~]# ll /usr/bin/passwd #查看passwd文件权限
-rwsr-xr-x. 1 root root 27856 4月 1 2020 /usr/bin/passwd
[root@localhost ~]# chmod u-s /usr/bin/passwd #删除s权限
[root@localhost ~]# ll /usr/bin/passwd
-rwxr-xr-x. 1 root root 27856 4月 1 2020 /usr/bin/passwd
[root@localhost ~]# chmod u+s /usr/bin/passwd #添加s权限
[root@localhost ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27856 4月 1 2020 /usr/bin/passwd
SetGID基本与SetUID相同,GID为设置所属组的特殊权限,可针对目录设置
[root@localhost ~]# ll /usr/bin/locate #查看locate文件权限
-rwx--s--x. 1 root slocate 40520 4月 11 2018 /usr/bin/locate
[root@localhost ~]# chmod g-s /usr/bin/locate #删除g权限
[root@localhost ~]# ll /usr/bin/locate
-rwx--x--x. 1 root slocate 40520 4月 11 2018 /usr/bin/locate
[root@localhost ~]# chmod g+s /usr/bin/locate #添加g权限
[root@localhost ~]# ll /usr/bin/locate
-rwx--s--x. 1 root slocate 40520 4月 11 2018 /usr/bin/locate
SBIT(Stick Bit),粘滞位,只对目录有效,用户不能删除不属于自己的文件
[root@localhost ~]# ll -ld /tmp
drwxrwxrwt. 21 root root 4096 3月 2 16:37 /tmp
[root@localhost ~]# chmod ugo+t /tmp
[root@localhost ~]# ll -ld /tmp
drwxrwxrwt. 21 root root 4096 3月 2 16:37 /tmp
权限数字
SUID 4644 #针对用户权限的uid
SGID 2644 #针对组权限的gid
SBIT 1755 #针对目录权限的粘滞位
Linux入门篇——文件
这一系列的Linux入门都是本人在《鸟哥的Linux私房菜》的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解
Linux Distribution是Ubuntu而不是书本上推荐的CentOS,建议装双系统,不要使用虚拟机。
代码在github上:Linuxpractice
其他内容:
Linux文件
一、Linux的文件权限与目录配置
Linux提供了多用户,多任务环境操作的实现;
文件可存取访问的身份:owner,group,other;
权限:read,write,execute
1)Linux的文件属性
可以用命令$ ls -al 来查看当前目录下的所有文件及其详细信息
-rw-r-r-- 1 root root 42304 Sep 4 18:26 install.org
文件权限 链接数 文件所有者 文件所属用户组 文件大小 文件最后的修改时间 文件名
其中文件的权限:
可读 可写 可执行
- r w x r w x - - -
文件类型 文件所有者权限 文件所属用户组权限 其他人对此文件的权限
文件类型:
[d] :目录, [-]:文件, [l]:连接文件,[b]:可存储接口设备,[c]:串行端口设备
2)改变文件属性和权限
# charg 组名 dirname/filename 改变文件所属用户组
# chown 账号名 dirname/filename 改变文件所有者
# chmod xyz dirname/filename 改变文件的权限
权限的计算方法:xyz是rwxrwxrwx的累加:其中r的值为4,w的值为2,x的值为1
owner=rwx=4+2+1=7
group=rwx=4+2+1=7
other=rwx=4+2+1=7
二、Linux文件种类与扩展名
1)文件种类
普通文件[-]:纯文本文件:(ASCII) $ cat ~/.bashrc
二进制文件:(binary) $ cat ~/.bashrc
数据格式文件:(date) $ last
目录[d]:
连接文件[l]:类似于windows下的快捷方式
设备与设备文件[b]:与系统外设及存储相关/块设备, 在/dev下
字符设备文件[c]:串行端口设备
套接字[s]:数据接口文件,网络上的数据连接 /var/run
管道[p]:(FIFO,PIPE) 解决多个程序访问一个文件时造成的错误问题。
2)文件扩展名
基本上Linux的文件是没有所谓的扩展名的,一个Linux文件能否执行与第一列的10个属性相关,有x属性在,则表示可以执行。
但是可执行与执行成功并不是一致的。
常用的扩展名:*.sh 脚本或批处理文件script,因为脚本是用shell写成的。
*Z, *.tar, *tar.gz, *.zip, *tgz 经打包的压缩文件
扩展名只是为了让用户了解文件的用途。
以上是关于Linux入门篇系统配置文件的主要内容,如果未能解决你的问题,请参考以下文章
Linux入门篇操作系统安装网络配置
Linux操作系统入门篇
Linux Capabilities 入门教程:概念篇
如何掌握并提高linux运维技能
linux操作系统基础篇
linux从入门到精通学习-NFS