标签归档:linux

linux 常见目录

Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的

/usr:系统级的目录,可以理解为 C:/Windows//usr/lib 理解为 C:/Windows/System32
/usr/local:用户级的程序目录,可以理解为 C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。
/opt:用户级的程序目录,可以理解为 D:/Software,opt 有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接 rm -rf 掉即可。在硬盘容量不够时,也可将 /opt 单独挂载到其他磁盘上使用。

继续阅读

在 Linux 上运行 ZFS

本演示使用了 ZFS-FUSE。FUSE 是一种机制,允许您在没有内核代码(除 FUSE 内核模块和现有的文件系统代码以外)情况下在用户空间中实现文件系统。该模块为用户和文件系统实现提供从内核文件系统接口到用户空间的桥梁。首先,安装 ZFS-FUSE 包(下面的演示针对 Ubuntu)。

安装 ZFS-FUSE

安装 ZFS-FUSE 很简单,尤其是在使用 apt 的 Ubuntu 上。下面的命令行安装了您开始使用 ZFS-FUSE 所需的一切:

$ sudo apt-get install zfs-fuse

此命令行安装 ZFS-FUSE 和所有其他依赖包( 我的也需要 libaiol),为新的程序包执行必要的设置并启动 zfs-fuse 守护进程。

继续阅读

通过 scrcpy 实现 android 投屏

scrcpy 是开源的跨平台 android 投屏软件,项目地址:https://github.com/Genymobile/scrcpy

先安装 scrcpy-server

项目 release 页下载 scrcpy-server-*.jar (版本用*代替,最好下载最新版),并移动到 /usr/local/share/scrcpy/scrcpy-server.jar (注意改名)。

snap 安装 scrcpy

sudo snap install scrcpy

运行:打开手机系统调试,连接手机数据线,在命令行输入 scrcpy ,可以用鼠标操作屏幕。

继续阅读

dpkg包管理器ii、rc含义

  1. ii 表示软件正常安装
  2. rc表示软件已卸载,可是配置文件还在,可以通过以下命令进行清理。
dpkg -l | grep ^rc | cut -d' ' -f3 | sudo xargs dpkg --purge

dpkg 常见用法

  1. 安装软件 命令:dpkg -i <.deb file name> 示例:dpkg -i avg71flm_r28-1_i386.deb
  2. 安装一个目录下面所有的软件包 命令:dpkg -R 示例:dpkg -R /usr/local/src
  3. 释放软件包,但是不进行配置 命令:dpkg –-unpack package_file 如果和-R一起使用,参数可以是一个目录 示例:dpkg –-unpack avg71flm_r28-1_i386.deb
  4. 重新配置和释放软件包 命令:dpkg –configure package_file 如果和-a一起使用,将配置所有没有配置的软件包 示例:dpkg –configure avg71flm_r28-1_i386.deb
  5. 删除软件包(保留其配置信息) 命令:dpkg -r 示例:dpkg -r avg71flm
  6. 替代软件包的信息 命令:dpkg –update-avail
  7. 合并软件包信息 dpkg –merge-avail
  8. 从软件包里面读取软件的信息 命令:dpkg -A package_file
  9. 删除一个包(包括配置信息) 命令:dpkg -P
  10. 丢失所有的Uninstall的软件包信息 命令:dpkg –forget-old-unavail
  11. 删除软件包的Avaliable信息 命令:dpkg –clear-avail
  12. 查找只有部分安装的软件包信息 命令:dpkg -C
  13. 比较同一个包的不同版本之间的差别 命令:dpkg –compare-versions ver1 op ver2
  14. 显示帮助信息 命令:dpkg –help
  15. 显示dpkg的Licence 命令:dpkg –licence (or) dpkg –license
  16. 显示dpkg的版本号 命令:dpkg –version
  17. 建立一个deb文件 命令:dpkg -b directory [filename]
  18. 显示一个Deb文件的目录 命令:dpkg -c filename
  19. 显示一个Deb的说明 命令:dpkg -I filename [control-file]
  20. 搜索Deb包 命令:dpkg -l package-name-pattern 示例:dpkg -I vim
  21. 显示所有已经安装的Deb包,同时显示版本号以及简短说明 命令:dpkg -l
  22. 报告指定包的状态信息 命令:dpkg -s package-name 示例:dpkg -s ssh
  23. 显示一个包安装到系统里面的文件目录信息 命令:dpkg -L package-Name 示例:dpkg -L apache2
  24. 搜索指定包里面的文件(模糊查询) 命令:dpkg -S filename-search-pattern
  25. 显示包的具体信息 命令:dpkg -p package-name 示例:dpkg -p cacti

CentOS7 nginx+php-fpm 环境安装

SELinux

  1. 查看
    1. getenforce/usr/sbin/sestatus -v
    2. Enforcing 是启用,Disabled 是禁用
  2. 永久关闭
    1. 编辑文件 /etc/selinux/config
    2. SELINUX=enforcing 改为 SELINUX=disabled
    3. 重启

启用网络

  1. 查看网络连接:ip addr
  2. 编辑文件 /etc/sysconfig/network-scripts/ifcfg-ens33ens33 是网络名称)

  3. ONBOOT=no 改为 ONBOOT=yes

  4. 使用静态IP(可跳过)

    1. 修改 BOOTPROTO=dhcpBOOTPROTO=static
  5. 追加以下代码(使用自己的IP信息)

    IPADDR=192.168.1.200
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=114.114.114.114
    DNS2=8.8.8.8
    

  • 重启网络服务 systemctl restart network
  • 继续阅读

    添加组和用户

    语法示例:

    # 添加组
    sudo groupadd groupname
    # 添加用户
    sudo useradd -g groupname -s /bin/bash username
    # 添加 sudo 权限
    sudo usermod -aG sudo username             // ubuntu
    sudo usermod -aG wheel username           // centos
    

    centos 系统要确保 /etc/sudoers%wheel ALL =(ALL)ALL 没有被注释。

    useradd 参数说明:

    -c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
    -d<登入目录>:指定用户登入时的启始目录;
    -D:变更预设值;
    -e<有效期限>:指定帐号的有效期限;
    -f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
    -g<群组>:指定用户所属的群组;
    -G<群组>:指定用户所属的附加群组;
    -m:自动建立用户的登入目录;
    -M:不要自动建立用户的登入目录;
    -n:取消建立以用户名称为名的群组;
    -r:建立系统帐号;
    -s<shell>:指定用户登入后所使用的shell;
    -u<uid>:指定用户id。
    

    Fix apt-get update “the following signatures couldn’t be verified because the public key is not available”

    The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4F4EA0AAE5267A6C
    

    apt打包系统有一组可信任的密钥,用于确定是否可以对软件包进行身份验证,从而确认是否可以在系统上安装软件包。有时系统没有所需的所有密钥并遇到此问题。幸运的是,有一个快速解决方案。需要将列为缺失的每个密钥添加到apt密钥管理器,以便它可以对软件包进行身份验证。

    看看上面的错误,apt告诉我们缺少以下键:4F4EA0AAE5267A6C

    要添加这些密钥,请运行以下命令:

    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C
    

    在 Ubuntu 上配置和优化 Apache

    你可以在 Apache 上做各种各样的配置,但是主要的和最常见的配置将在下面做出解释。

    检查 Apache 是否正在运行

    默认情况下,Apache 设置为在机器启动时自动启动,因此你不必手动启用它。你可以使用以下命令检查它是否正在运行以及其他相关信息:

    systemctl status apache2
    

    check if apache is running
    check if apache is running

    并且你可以检查你正在使用的版本:

    apachectl -V
    

    一种更简单的检查方法时访问服务器的 IP 地址,如果你得到默认的 Apache 页面,那么一切都正常。

    继续阅读