工作中常用ubuntu功能命令

一、创建ubuntu新用户相关操作

1.1 创建用户:

sudo useradd -d /home/userName -m -s /bin/bash userName && sudo passwd userName       

1.2 增加sudo权限

sudo vim /etc/sudoers
// 在/etc/sudoers中root    ALL=(ALL:ALL) ALL下增加
userName     ALL=(ALL:ALL) ALL

1.3 删除用户

userdel -r userName

1.4 免密登陆

mkdir ~/.ssh && chmod 700 ~/.ssh && vi ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

1.5 ssh登录

sudo ssh -p 22 -i ~/Desktop/xxx.pem ubuntu@IP

如果出现报错说明这个问题是文件的权限太大了,需要给小点:
sudo chmod 600 key.pem

二、设置交换内存相关的命令

2.1查看内存大小

free -m

2.2 设置交换内存大小

sudo dd if=/dev/zero of=/swap bs=1024 count=8377216      //bs=1024 或者1M,count才是大小,此例中是8G

2.3 切换root用户

su root

在这里插入图片描述
解除root锁定,为root用户设置密码。

sudo passwd

重新执行

su root

2.4 将文件设置为永久缓存

使用root用户

chmod 600 /swap && mkswap /swap && swapon /swap && echo "/swap  swap swap defaults 0 0" >> /etc/fstab

三、卸载软件

3.1 查看已安装的程序

dpkg --list | grep 程序可能的名字

3.2 卸载程序

  • 将配置文件一并删除
sudo apt-get --purge remove 程序名
  • 不删除配置文件
sudo apt-get remove 程序名

四、查询文件

  • 在PATH变量里面,只寻找可执行文件 。
which NAME
  • 从linux文件数据库(/var/lib/slocate/slocate.db)寻找,全部匹配符合要求的。 所以有可能找到刚刚删除,或者没有发现新建的文件。
whereis NAME
  • 文件名部分匹配,其他同上
locate NAME
  • 直接在硬盘上搜寻,功能强大,但耗硬盘,一般不要用
find 

五、云硬盘挂载

5.1查看云硬盘情况

sudo fdisk -l

5.2 创建文件格式系统

mkfs -t ext4 /dev/vdb

5.3 创建挂载点

mkdir /data

5.4 将分区挂载

mount /dev/vdb /data

5.5 跨容之后挂载

sudo resize2fs /dev/vdb

六、增加Ubuntu 18.04的最大打开文件限制

$ sudo vim /etc/security/limits.conf

*    soft nofile 65536
*    hard nofile 65536
username soft nofile 65536
username hard nofile 65536
root soft nofile 65536
root hard nofile 65536

$ sudo vim /etc/pam.d/common-session
session required pam_limits.so

$ sudo vim /etc/pam.d/common-session-noninteractive
session required pam_limits.so

$ sudo vim /etc/sysctl.d/60-file-max.conf
fs.file-max = 65536

$ reboot
$ ulimit -a

七、防火墙

7.1 查看防火墙状态

sudo ufw status

7.2 开启防火墙

sudo ufw enable

7.3 关闭防火墙

sudo ufw delete allow 8001/tcp 

7.4 开放特定端口

sudo ufw allow 22

7.5 查看特点端口监听状态

sudo netstat -tunlp | grep 22

7.6 关闭特定端口

sudo ufw delete allow 22

7.7 开放规定协议的端口

sudo ufw allow 8001/tcp

7.8 关闭指定协议的端口

sudo ufw delete allow 8001/tcp 

7.9 查看哪些端口

ss -tnl

八、service文件编写

8.1 service操作

  • 创建
cd /etc/systemd/system/fileName.service
  • 启动
sudo systemctl start 
  • 关闭
sudo systemctl stop 
  • 重启
sudo systemctl restart 
  • 查看日志
sudo journalctl --lines=100 --follow --unit 
  • 删除日志
sudo journalctl --vacuum-size=50M
  • 日志保存位置
    /var/log/syslog

8.2 例子


[Unit]
Description=testNet
StartLimitInterval=350
StartLimitBurst=10

[Service]
User=ubuntu
ExecStart=/home/ubuntu/nym-mixnode run --id hashquark
KillSignal=SIGINT
Restart=on-failure
RestartSec=5s
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

8.3 参数介绍

[Unit]
Description:简短描述
Documentation:文档地址
Requires:当前 Unit 依赖的其他 Unit,如果它们没有运行,当前 Unit 会启动失败
Wants:与当前 Unit 配合的其他 Unit,如果它们没有运行,当前 Unit 不会启动失败
BindsTo:与Requires类似,它指定的 Unit 如果退出,会导致当前 Unit 停止运行
Before:如果该字段指定的 Unit 也要启动,那么必须在当前 Unit 之后启动
After:如果该字段指定的 Unit 也要启动,那么必须在当前 Unit 之前启动
Conflicts:这里指定的 Unit 不能与当前 Unit 同时运行
Condition...:当前 Unit 运行必须满足的条件,否则不会运行
Assert...:当前 Unit 运行必须满足的条件,否则会报启动失败

[Service]
Type:定义启动时的进程行为。它有以下几种值。
Type=simple:默认值,执行ExecStart指定的命令,启动主进程
Type=forking:以 fork 方式从父进程创建子进程,创建后父进程会立即退出
Type=oneshot:一次性进程,Systemd 会等当前服务退出,再继续往下执行
Type=dbus:当前服务通过D-Bus启动
Type=notify:当前服务启动完毕,会通知Systemd,再继续往下执行
Type=idle:若有其他任务执行完毕,当前服务才会运行
ExecStart:启动当前服务的命令
ExecStartPre:启动当前服务之前执行的命令
ExecStartPost:启动当前服务之后执行的命令
ExecReload:重启当前服务时执行的命令
ExecStop:停止当前服务时执行的命令
ExecStopPost:停止当其服务之后执行的命令
RestartSec:自动重启当前服务间隔的秒数
Restart:定义何种情况 Systemd 会自动重启当前服务,可能的值包括always(总是重启)、on-success、on-failure、on-abnormal、on-abort、on-watchdog
TimeoutSec:定义 Systemd 停止当前服务之前等待的秒数
Environment:指定环境变量

[Install]
WantedBy:它的值是一个或多个 Target,当前 Unit 激活时(enable)符号链接会放入/etc/systemd/system目录下面以 Target 名 + .wants后缀构成的子目录中
RequiredBy:它的值是一个或多个 Target,当前 Unit 激活时,符号链接会放入/etc/systemd/system目录下面以 Target 名 + .required后缀构成的子目录中
Alias:当前 Unit 可用于启动的别名
Also:当前 Unit 激活(enable)时,会被同时激活的其他 Unit

9 ubuntu服务器上传和下载文件

apt-get install -y lrzsz
  • 上传文件
rz
  • 下载文件
sz

9、Docker

9.1 Docker 安装

sudo apt update
sudo apt install docker.io
sudo groupadd docker
sudo usermod -aG docker ubuntu

9.2 Docker 更改数据存储位置

sudo vim /etc/docker/daemon.json

# 只修改存储位置
{
  "graph": "/data/docker-data"
}

# 需要修改
{
  	"graph": "/data/docker-data",
  	"storage-driver": "overlay2",
  	"registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"],
  	"insecure-registries" : ["myregistrydomain.com:5000"],
   	"dns": ["8.8.8.8", "8.8.4.4"],
	"hosts": ["tcp://0.0.0.0:2376","unix:///var/run/docker.sock"]
	"bip": "192.168.144.1/24",
  "live-restore": truex
}

9.3 Docker修改/var/lib/docker存储位置

  • /var/lib/docker通常存储Docker的工作数据:容器、镜像、卷数据、插件数据和网络配置
sudo systemctl stop docker
sudo mv /var/lib/docker /new/path/to/docker
sudo ln -s /new/path/to/docker /var/lib/docker
sudo systemctl start docker

$$ 小命令

1)程序后台运行并记录日志

nohup python3 test.py > test.log 2>&1 &

2)查看文件大小

查看当前目录已经使用总大小及当前目录下一级文件或文件夹各自使用的总空间大小

sudo du -h --max-depth=1

3) 创建history

打开~/.bashrc加入

HISTFILE=~/.history
HISTSIZE=1000000

4)将日志清空

truncate ./log.log --size 0
或者
sudo cat /dev/null > log

5)将DOS格式的文本文件快速转成Unix格式

vim fileName 
set ff=unix或set fileformat=unix
wq!

或者
dos2unix fileNeme

6)查看端口是否开通

telnet IP PORT

7)删除/dev/loop

sudo apt autoremove --purge snapd

8)创建软连接

ln -s 存储数据位置 快捷键

9)删除/dev/loop

sudo apt autoremove --purge snapd
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Ubuntu,有几个常用命令用于安装软件包,包括apt,apt-get,dpkg和pip。这些命令可以帮助你安装、升级和移除软件包。 1. apt命令是apt-get、apt-cache和apt-config常用命令选项的集合。它可以代替一些旧的apt-get命令。以下是一些apt常用命令及其功能: - apt install package:用于安装软件包。 - apt remove package:用于移除软件包。 - apt purge package:用于移除软件包及其配置文件。 - apt update:用于刷新存储库索引。 - apt upgrade:用于升级所有可升级的软件包。 - apt autoremove:用于自动删除不需要的包。 - apt full-upgrade:用于在升级软件包时自动处理依赖关系。 - apt search keyword:用于搜索应用程序。 - apt show package:用于显示安装细节。 2. dpkg命令主要用于安装.deb文件,但不会解决模块的依赖关系,并且不涉及ubuntu软件仓库的软件。以下是一些dpkg常用命令及其功能: - dpkg -i package_name.deb:用于安装本地的.deb文件,不解决依赖关系。 - dpkg -r package:用于删除软件包。 3. pip命令是python安装时自带的工具,用于安装python相关的包。在Ubuntu,可以使用pip3来安装python3的包。以下是一些pip常用命令及其功能: - sudo apt-get install python3-pip:用于安装pip3。 - sudo pip3 install --upgrade pip:用于升级pip3。 - sudo pip3 install package:用于安装python相关的包。 总结起来,在Ubuntu,可以使用apt命令来安装、升级和移除软件包,使用dpkg命令来安装本地的.deb文件,使用pip3命令来安装python相关的包。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ubuntu 安装命令](https://blog.csdn.net/qq_26913333/article/details/101448291)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [简单记录一下ubuntu的一些安装指令](https://blog.csdn.net/hjxu2016/article/details/97145747)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值