Linux实用操作

发布时间:2024年01月11日
内容大纲
  • 用户相关命令
  • 切换用户和借调权限
  • 用户组相关操作
  • 权限相关
  • Linux的软件安装方式
    • 手动安装
    • rpm
    • yum
  • 控制服务的开启关闭等
  • 软连接和硬链接
  • 日期和时间
  • 主机名和ip相关
  • 网络相关命令
  • 进程管理
  • 系统资源

1.用户相关命令
# 1.增:新增用户
useradd 用户名	# root用户在/root目录下, 普通用户在 /home/用户名下.
			    # 创建用户的时候, 如果不指定分组, 
			    # 则默认会创建1个和该用户名一模一样的组.
			    # 然后把该用户放到这个组中...

# 2.改:修改用户的密码
passwd 用户名			# 来源于: password单词

# 3.删:删除用户
userdel [-r] 用户名	# 除了删除用户外, 还会删除 /home目录下, 
					# 该用户所有的内容.
					# 如果该用户的主组是随着用户一起创建的,
					# 则删除用户时, 该组也会被同步删除.

# 查:查询所有的用户.
cat /etc/passwd	 # 查询所有的用户
getent passwd	# 效果同上, 来源于: get environment, 获取环境

# 查看用户信息, 格式如下:
zhangsan:x:1000:1000::/home/zhangsan:/bin/bash

# 格式解释:
用户名:密码():用户组id:用户id:描述信息():账号的家目录:使用何种Shell解析器
2.切换用户和借调权限
# 切换用户
su 用户名		# 切换到指定的用户, 如果是root => 其它账号, 
				# 无需输入密码, 否则都需要录入密码. 

# 登出, 例如: root => zhangsan,  登出后, 就又回到了 root账号
ctrl + d	# 快捷键

# (临时. 默认5分钟)借调权限
sudo 你要指定的命令

# 问: root如何给普通账号配置权限?
# 答: 在root账号下, 输入: vim /etc/sudoers 去其中进行设置, 在第100行.
3.用户组相关操作
# 增:新增用户组
groupadd 用户组名		

# 删:删除用户组
groupdel 用户组名	# 删除用户组, 
					# 注: 如果没有用户用该组作为主组, 就可以删除该组.

# 查:查询所有的用户组.
cat /etc/group
getent group		# 效果同上, 来源于: get environment, 获取环境

# 查看用户组信息, 格式如下:
zhangsan:x:1000

# 格式解释:
用户组名:无密码:组id

# 查看用户的具体信息
id 用户名

# 创建新用户的时候, 直接指定分组
useradd 用户名 -g 组名		# 新增用户, 并添加到指定的组. 

# 设置已经存在的账号到指定的分组中.
usermod -aG 用户组名 用户名  # modify: 修改,  append group: 添加分组
4.权限相关
# 设置权限
chmod 777 1.txt		# 万金油命令, 满权限.
chmod +x 1.txt		# 给所有用户设置 执行权.
chmod u=rx,g=w,o=x  # 设置属主权限为:读,可执行, 
					# 属组权限为:只写, 其它用户权限为:可执行.
					# 注意多个权限之间, 没有空格. 
					# user(属主), group(属组), other(其它)
					
chmod [-R] 777 目录路径	# 设置目录及其所有的子级为满权限.

# 设置拥有者, 即: 属主, 属组
chown [-R] [用户][:][用户组] 文件或者目录路径		# owner: 拥有者

chown zhangsan 1.txt		# 改变1.txt文件的 属主为: zhangsan
chown itcast 1.txt			# 改变1.txt文件的 属主为: itcast
chown :itcast 1.txt			# 改变1.txt文件的 属组为: itcast
chown lisi:itcast 1.txt		# 改变1.txt文件的 属主lisi, 属组为: itcast
5.Linux的软件安装方式
  • 方式1: 手动安装.

    自己去官网下载安装包, 即: *.tar.gz, 然后上传到Linux系统中, 手动进行安装配置即可.

    tarball: 压缩包, gzip: 压缩协议.

    例如: JDK, Zookeeper, Hadoop, Hive…

  • 方式2: rpm方式

    RedHat Package Manager, 小红包的包管理器, 可以自动联网进行下载, 并安装程序.

    但是不能自动解决依赖问题, 例如: 装A需要依赖B和C, 则需要手动先装B和C, 才能装A.

    例如: 安装MySQL

  • 方式3: yum方式

    yellow dog updater modified, 黄狗更新程序, 基于RPM的, 可以自动解决依赖.

    例如: tree命令, lrzsz命令, wget命令…

    # 格式
    yum [-y] install | remove | search 包名	# -y意思是: 统一输入yes
    		# install: 安装, remove: 卸载, search: 查找并安装.
    		
    # 示例
    yum -y install lrzsz
    
6. 控制服务的开启关闭等
# 命令格式, systemctl来源于: system control, 系统控制
systemctl status | start | stop | restart | enable | disable 服务名	

# 常用的服务
NetWorkManager	主网络服务
network			副网络服务
firewalld		防火墙
sshd			远程连接服务(协议)

# 示例
systemctl restart network 	# 重启网络服务.
7.软连接和硬链接
# 格式:
ln -s 要被连接的文件或者目录路径 软连接方式		# 加-s是软连接, 相当于创建了快捷方式.

# 示例
ln -s /etc/sysconfig/network-scripts/ifcfg-ens33 ip


# 注: 如果不加 -s 创建出来的是 硬链接, 目的: 提高容错率.
ln 1.txt 2.txt	# 两个硬链接文件, 内容会自动同步. 
8.日期和时间
# date命令, 查看时间.
date [-d] [+日期格式]

# 指定时间格式  %Y 4位数字的年, 
# 例如: 2024 %y: 2位数字的年, 例如: 24 
# %m 月  %d 日   %H 小时   %M 分钟    %S 秒
date '+%Y-%m-%d'

# 修改时间.
date -d '1 day' '+%Y/%m/%d'		# 正数往后加, 负数往前推. 今天时间, 往后加一天.

date -d '-1 day' '+%Y/%m/%d'		# 正数往后加, 负数往前推. 今天时间, 往后加一天.
date -d '1 days ago' '+%Y/%m/%d'	# 效果同上.

date -d '1 year ago' '+%Y/%m/%d'	# 往前推1年

date -d '-1 day ago' '+%y-%m-%d'	# 负负得正, 往后推一天, 了解即可, 没人写.
9.主机名和ip相关
# 查看本机ip地址
ifconfig

# 查看本机主机名
hostname

# 修改主机名
hostnamectl set-hostname 主机名		# 立即修改.
vim /etc/hostname				      # 改完之后记得重启虚拟机生效. 

# 如何修改虚拟机固定的ip
vim /etc/sysconfig/network-scripts/ifcfg-ens33
10.网络相关命令
# ping命令, 测试网络是否通畅.
ping [-c 数字] 目标ip		# 循环发包, 测试网络连接, 不指定次数, 就一直发送.

# wget 命令, 文件下载器, 可以根据URL下载数据
wget https://pic4.zhimg.com/v2-1d05d325d397080b921de6306dcf46d5_1440w.jpg

# curl 命令, 模拟浏览器, 向URL发出请求, 获取响应信息(html页面)
curl https://python.itcast.cn/?pythonzly 				# 结果打印到终端.
curl https://python.itcast.cn/?pythonzly >> my.txt	# 结果保存到文件

# IP介绍:     设备在网络中的唯一标识. 
# 端口号介绍:  程序在设备上的唯一标识. 范围: 0 ~ 65535, 其中0~1023已经被用作保留端口了, 尽量规避.
# 协议:       通信规则. 

netstat -anp | grep 具体的端口号		# all network port, 所有网络端口
11. 进程管理
# 查看本机运行的所有进程
ps -ef

# 查看指定的进程信息
ps -ef | grep ssh

# 强制关闭指定的进程
kill -9 进程的pid

# 进程解释: 指的是可执行程序, 文件, 例如: *.exe
12.系统资源
# 查看内存使用情况
free -h		# -h 人性化的方式展示

# 查看磁盘使用情况
df -h		# 来源于: disk free 	
文章来源:https://blog.csdn.net/weixin_65265621/article/details/135486600
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。