大家好,欢迎来到IT知识分享网。
一、用户管理类
1、创建新用户
# 创建新用户 sudo useradd -m <新用户名> # -m 选项告诉 useradd 创建用户的主目录。 # 为新用户设置密码 sudo passwd <新用户名> # 将 <新用户#名> 添加到 sudo 组,使其具有执行管理员命令的能力。 sudo usermod -aG sudo <新用户名>
- 修改/etc/sudoers文件可以设置用户使用sudo时不用输密码 ,配置如下:
# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL san.zhang ALL=(ALL:ALL) NOPASSWD:ALL
2、修改用户信息
2.1、usermod
2.1.1、简介
usermod是Linux和Unix系统中用于修改用户属性的命令。它允许管理员更改用户的各种设置,如用户名、主目录、默认shell、用户组等。以下是一些usermod命令的常见用法和选项:
2.1.2、常见用法
# 修改用户名 usermod -l <新用户名> <旧用户名> # 修改用户的主目录 usermod -d <新主目录> <用户名> # 添加用户到附加组 usermod -aG <附加组> <用户名> # 修改用户组(即修改用户的主组) usermod -g <新组> <用户名> # 修改用户的默认shell usermod -s <新shell> <用户名> #常见选项 -c:修改用户的备注信息。 -e:设置账户的过期时间。 -f:设置在passwd文件中记录用户密码失效前的天数。 -g:修改用户的主组。 -G:为用户添加或删除附加组。 -L:锁定用户账户,使其不能登录。 -m:移动用户的主目录内容到新位置(与-d选项一起使用)。 -p:修改用户的密码。 -u:修改用户的UID(User ID)。
2.2、passwd
2.2.1、简介
passwd 命令在 Linux 和 Unix 系统中用于设置或更改用户密码
2.2.2、常见用法
# 为当前用户设置或更改密码 passwd # 为指定用户设置或更改密码 sudo passwd <用户名> # 锁定用户账户 sudo passwd -l <用户名> # 解锁用户账户 sudo passwd -u <用户名> # 查看账户密码状态(需要root权限) sudo passwd -S <用户名> # 从标准输入读取密码(通常用于脚本) echo "新密码" | sudo passwd --stdin <用户名>
二、文件管理类
1、文件权限管理
1.1、修改文件权限
# 使用chmod命令修改文件权限,r -> 读,w -> 写,x -> 可执行 # 示例 # 给file文件增加可执行权限 chmod +x file # 给file文件坚强可执行权限 chmod -x file # 给file文件添加最高权限 chmod 777 file # 给当前目录下所有文件添加最高权限 chmod 777 * # 递归当前目录及子目录下的文件添加最高权限 chmod -R 777 *
2、文件打包压缩
2.1、tar
# 将a.c文件打包为test.tar.gz tar -czvf test.tar.gz a.c # 解压 tar -xzvf test.tar.gz
2.2、zip和unzip
# 压缩文件 zip archive.zip file1.txt file2.txt # 压缩目录及其子目录 zip -r archive.zip directory/ # 更新已存在的ZIP文件 zip -u archive.zip newfile.txt # 解压缩ZIP文件 unzip archive.zip
2.3、7z
# 在当前目录下解压缩filename.7z文件 7z x filename.7z # 将filename.7z文件解压缩到指定目录/path/to/directory下 7z x filename.7z -o/path/to/directory # 将文件或目录file_or_directory压缩成archive.7z 7z a archive.7z file_or_directory # 列出filename.7z压缩包的内容,但不进行解压缩 7z l filename.7z # 常用选项 a:向压缩包中添加文件或目录。 d:从压缩包中删除文件或目录。 e:从压缩包中提取文件或目录(不使用目录名)。 h:计算文件或目录的哈希值。 i:显示支持的压缩格式信息。 l:列出压缩包的内容。 r:递归处理子目录。 t:测试压缩包的完整性。 u:更新压缩包内的文件。 x:以完整路径解压文件。
3、文件传输
3.1 scp
3.1.1、简介
scp命令是一个在Linux和Unix系统中用于在本地和远程主机之间安全地复制文件的命令行工具。它使用SSH协议进行加密传输,因此可以确保数据传输的安全性。
3.1.2、基本用法
# 基本语法 scp [选项] [[用户@]来源主机:]文件路径 [[用户@]目标主机:]文件路径 # 从本地复制到远程 scp /path/to/local/file username@remote:/path/to/destination # 从远程复制到本地 scp username@remote:/path/to/remote/file /path/to/local/destination # 使用密钥文件进行身份验证 scp -i /path/to/private_key username@remote:/path/to/remote/file /path/to/local/destination # 常用选项 -r:递归复制整个目录及其内容。 -p:保留源文件的属性,包括文件的权限和时间戳。 -v:详细输出,显示详细的传输过程,有助于发现问题和调试。 -q:静默模式,不显示传输过程。 -C:开启压缩传输,加快传输速度。 -l:限制传输速度,指定带宽限制。 -4:强制使用IPv4协议进行传输。 -6:强制使用IPv6协议进行传输。 -i <密钥文件>:使用指定的密钥文件进行身份验证。 -P <端口号>:指定远程主机的端口号。
4、编辑文件
在Ubuntu中编辑文件,可以使用多种文本编辑器。
4.1、nano
nano 是一个简单的文本编辑器。
nano filename.txt
在nano中,可以使用以下基本快捷键:
Ctrl + O:保存文件Ctrl + X:退出编辑器Ctrl + W:查找单词Ctrl + K:剪切文本行Ctrl + U:粘贴文本Alt + A:移动到行首Alt + E:移动到行尾
4.2、vim 或 vi
vim(或vi)是一个强大的文本编辑器,它是一个非常高效的工具。
vim filename.txt vi filename.txt
在vim中,首先需要进入插入模式来编辑文本。可以按 i 进入插入模式,然后按 Esc 退出插入模式。在普通模式下,可以使用以下命令:
:w:保存文件:q:退出编辑器:wq:保存并退出dd:删除当前行yy:复制当前行p:粘贴/keyword:搜索keyword:set number:显示行号
4.3、sed
sed是一个流编辑器,用于对输入流(或文件)进行基本的文本转换。它经常用于替换文本、删除行等。
# 替换文本中的“old”为“new” sed 's/old/new/g' filename.txt # 删除包含“error”的行 sed '/error/d' filename.txt # 在文件的第一行前插入文本 sed -i '1i\Inserted text' filename.txt # sed的-i选项会直接修改文件 # 去除文件中的M格式 sed -i 's/\r//g' filename.txt # 修改s文件中的-d 0为-d 1 sed -i 's/-d 0/-d 1/g' filename.txt # 删除第3~13行 sed '3,13d' filename.txt
5、查看文件
在Ubuntu中,可以使用多种命令来查看文件的内容。以下是一些常用的命令:
5.1、cat
# 查看整个文件内容 cat filename.txt # 显示文件的前10行 cat filename.txt | head -n 10 # 显示文件的最后10行 cat filename.txt | tail -n 10
5.2、more 和 less
more filename.txt
在more中,可以按空格键来查看下一页,按Enter键来查看下一行,按q键来退出。
less filename.txt
less比more更强大,它允许向前和向后浏览文件,搜索文本等。在less中,可以使用以下快捷键:
- 空格键:向下翻页
b:向上翻页/text:搜索包含text的行n:搜索下一个匹配项N:搜索上一个匹配项q:退出less
5.3、head 和 tail
head命令用于显示文件的开头部分,而tail命令用于显示文件的结尾部分。
# 默认显示文件的前10行 head filename.txt # 默认显示文件的最后10行 tail filename.txt # 显示文件的前20行 head -n 20 filename.txt # 显示文件的最后50行 tail -n 50 filename.txt
5.6、grep和awk
grep用于在文件中搜索指定的模式,并将匹配的行打印出来。
# 搜索包含“error”的行 grep 'error' log.txt # 搜索不区分大小写的“ERROR”或“error” grep -i 'error' log.txt # 显示匹配行的行号 grep -n 'error' log.txt
awk是一个文本分析工具,它允许基于模式扫描和处理文本。awk通常用于报告生成和数据提取。
# 打印第一列 awk '{ print $1 }' filename.txt # 打印文件大小大于1000的行 awk '$1 > 1000' filesize.txt
grep和awk结合使用
# 搜索包含“error”的行,并打印每行的第二列 grep 'error' log.txt | awk '{ print $2 }'
6、查找文件
find 是 Unix 和类 Unix 系统(如 Ubuntu)中非常强大的命令行工具,用于在目录树中查找文件。它可以根据各种条件(如文件名、文件类型、大小、修改日期等)来搜索文件。
# 查找当前目录及其子目录中所有的 .txt 文件 find . -name "*.txt" # 查找 /home/user 目录下所有的目录 find /home/user -type d # 查找最近 7 天内修改过的文件 find . -type f -mtime -7 # 查找大于 1M 的文件 find . -type f -size +1M # 查找所有空文件 find . -type f -empty # 找到所有的 .txt 文件并删除它们 find . -name "*.txt" -exec rm {} \; # 使用 xargs 处理大量文件 find . -name "*.txt" | xargs rm find ./ -name "*.sh" | xargs -i rm {} # 常用选项: -name:按照文件名查找文件。 -type:按照文件类型查找,如 d 表示目录,f 表示普通文件。 -size:按照文件大小查找。 -mtime:按照文件的修改时间查找。 -atime:按照文件的访问时间查找。 -ctime:按照文件的创建时间查找(实际上是inode改变时间)。 -user:按照文件属主查找。 -group:按照文件属组查找。 -exec:对匹配的文件执行指定的 shell 命令。 -ok:和 -exec 的作用相同,不过会以更为安全的模式来执行该参数所给出的 shell 命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
三、服务安装类
1、网络配置
1.1、ifconfig
ifconfig命令主要用于配置和显示Linux内核中网络接口的网络参数。
# 更新软件包列表 sudo apt update # 安装 net-tools 包 sudo apt install net-tools # 显示所有网络接口的信息 ifconfig # 显示特定网络接口的信息 ifconfig eth0 # 启动或关闭网络接口 sudo ifconfig eth0 down sudo ifconfig eth0 up # 配置网络接口的 IP 地址 sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 # 配置广播地址 sudo ifconfig eth0 broadcast 192.168.1.255 # 启用或禁用网络接口上的混杂模式 sudo ifconfig eth0 promisc # 混杂模式允许网络接口接收所有到达的数据包,禁用它可以使用 -promisc 选项
1.2、route
route命令是一个在Linux和类Unix系统中用于操作IP路由表的命令行工具。
# 添加网关 route add default gw 192.168.1.1 # 添加一个静态路由 route add -net 192.168.105.0 netmask 255.255.255.0 gw 192.168.105.225 # 删除一个静态路由 route delete -net 192.168.105.0 netmask 255.255.255.0 gw 192.168.105.225 # 显示路由表 route -n
1.3、ip
ip命令是Linux加强版的网络配置工具,用于代替ifconfig命令。它整合了ifconfig与route这两个命令的功能,并提供了更强大的网络配置能力。
# 显示所有网络接口的信息 ip addr show # 简写 ip a s # 查看特定网络接口的信息 ip addr show eth0 # 配置网络接口的 IP 地址 ip addr add 192.168.1.100/24 dev eth0 # 配置网络接口的网关 ip route add default via 192.168.1.1 # 查看路由表 ip route show # 简写 ip r s # 删除网络接口中配置的 IP 地址 sudo ip addr del 192.168.1.100/24 dev eth0
2、nfs挂载
2.1、安装nfs客户端
# 更新软件包列表 sudo apt update #安装nfs服务 sudo apt install nfs-kernel-server
2.2、 创建本地挂载点
在本地系统上选择一个目录作为nfs共享的挂载点。这个目录可以是空的,因为在挂载时,nfs共享的内容会覆盖它。
# 1. 创建nfs挂载目录 sudo mkdir /mnt/nfs # 2. 配置nfs共享 sudo vi /etc/exports # 3. 添加如下行来配置共享目录 /mnt/nfs *(rw,sync,no_subtree_check,no_root_squash) # 4. 导出配置并重启服务 sudo exportfs -r -a sudo service nfs-kernel-server restart
2.3、挂载nfs共享
sudo mount -t nfs -o nolock $server_ip:/mnt/nfs/ /userdata/
3、ssh服务
3.1、安装SSH服务器
- 打开终端(在Ubuntu中,可以通过按下Ctrl+Alt+T组合键来打开终端)
- 确保软件包列表是最新的,执行以下命令:
sudo apt update - 安装SSH服务器,执行以下命令:
sudo apt install openssh-server
3.2、确认SSH服务状态
- 在终端中输入以下命令来检查SSH服务的状态:
sudo service ssh status - 如果服务已经启动,将看到类似于“ssh start/running, process 1234”的输出
- 如果SSH服务未启动,可以使用以下命令手动启动SSH服务:
sudo service ssh start
3.3、配置SSH在系统启动时自动启动
- 在终端中输入以下命令来检查SSH服务是否在系统启动时自动启动:
sudo systemctl is-enabled ssh - 如果输出为“enabled”,则表示SSH服务已经配置为在系统启动时自动启动。如果不是,可以使用以下命令启用自动启动:
sudo systemctl enable ssh
3.4、启用ufw并开放SSH端口(默认为22)
- 安装ufw(如果尚未安装):
sudo apt install ufw - 启用ufw:
sudo ufw enable - 开放SSH端口:
sudo ufw allow 22
3.5、ssh服务保活
- 编辑sshd_config文件:sudo vi /etc/ssh/sshd_config
- 取消 ClientAliveInterval 和 ClientAliveCountMax 字段的注释,并且设置为:ClientAliveInterval 60;ClientAliveCountMax 3,保存并退出
- 重启ssh服务:sudo systemctl restart sshd 或 sudo service ssh restart
4、安装fastboot服务
# 更新系统软件包 sudo apt update sudo apt upgrade # 安装fastboot sudo apt install android-tools-fastboot # 验证安装 fastboot devices # 如果设备正确连接并且fastboot已成功安装,则应该能够看到设备的序列号。
5、开启或关闭防火墙
5.1、开启防火墙
- 开启防火墙:sudo ufw enable
- 查看防火墙状态:sudo ufw status,如果终端输出“Status: active”,则表示防火墙已成功开启
- 检查
ufw服务是否已启用开机自启:sudo systemctl is-enabled ufw;如果输出为enabled,则表示ufw已经设置为开机自启;如果不是,则用sudo systemctl enable ufw开开启
5.2、关闭防火墙
- 停止防火墙服务:sudo systemctl stop ufw.service
- 禁用防火墙服务,使其在下次系统启动时不会自动运行:sudo systemctl disable ufw.service
- 查看防火墙状态:sudo ufw status,如果终端输出“Status: inactive”,则表示防火墙已成功关闭
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/114631.html