|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1. 引言
Slackware Linux作为最早的Linux发行版之一,以其简洁、稳定和高度可定制的特性而闻名。由Patrick Volkerding于1993年创建,Slackware坚持KISS(Keep It Simple, Stupid)原则,提供了一个纯净、接近Unix的Linux体验。本指南旨在为各级别的用户提供全面的Slackware文档资料,帮助您从初学者成长为能够熟练配置和管理Slackware系统的专家。
Slackware与其他现代Linux发行版不同,它不依赖复杂的包管理系统或自动化配置工具,而是让用户直接控制系统配置。这种方法虽然学习曲线较陡,但提供了无与伦比的控制能力和系统理解深度。
本指南将涵盖Slackware的安装、基本管理、网络配置、桌面环境设置、系统优化、安全加固以及高级主题等内容,为读者提供一站式的参考资料。
2. Slackware Linux历史与哲学
2.1 历史背景
Slackware Linux由Patrick Volkerding于1993年创建,是现存最古老的Linux发行版。它最初基于Softlanding Linux System(SLS),是第一个获得广泛商业成功的Linux发行版。Slackware的名字来源于”Church of the SubGenius”中的概念,暗示着一种轻松但高效的工作方式。
2.2 设计哲学
Slackware的设计哲学围绕以下几个核心原则:
1. 简洁性(Simplicity):Slackware尽可能保持简单,避免不必要的抽象层和自动化工具。配置文件通常是纯文本,可以直接编辑。
2. 稳定性(Stability):Slackware选择经过充分测试的稳定软件版本,而不是追求最新功能。这使得Slackware成为服务器和关键工作站的理想选择。
3. Unix传统(Unix-like):Slackware尽可能遵循Unix的传统和文件系统层次结构标准(FHS),为用户提供熟悉的Unix环境。
4. 用户控制(User Control):Slackware将系统控制权交给用户,而不是隐藏在图形界面或自动化工具后面。
简洁性(Simplicity):Slackware尽可能保持简单,避免不必要的抽象层和自动化工具。配置文件通常是纯文本,可以直接编辑。
稳定性(Stability):Slackware选择经过充分测试的稳定软件版本,而不是追求最新功能。这使得Slackware成为服务器和关键工作站的理想选择。
Unix传统(Unix-like):Slackware尽可能遵循Unix的传统和文件系统层次结构标准(FHS),为用户提供熟悉的Unix环境。
用户控制(User Control):Slackware将系统控制权交给用户,而不是隐藏在图形界面或自动化工具后面。
2.3 版本发布周期
Slackware采用”发布即稳定”的模式,没有固定的发布周期。新版本只在所有组件都经过充分测试并被认为是稳定的后才发布。通常,Slackware的主要版本更新间隔为1-2年,而安全更新和关键错误修复会持续提供。
3. 安装指南
3.1 系统要求
在安装Slackware之前,确保您的系统满足以下最低要求:
• 处理器:任何现代x86_64处理器(Slackware已不再支持32位系统)
• 内存:至少2GB RAM(推荐4GB或更多)
• 存储空间:至少20GB可用空间(完整安装推荐50GB或更多)
• 网络连接:用于下载软件包和更新
3.2 安装步骤
Slackware的安装过程相对手动,以下是详细步骤:
首先从Slackware官网下载最新的ISO镜像文件。Slackware提供DVD和CD两种格式的镜像,DVD镜像包含所有软件包,而CD镜像分为多个部分。
使用以下命令创建USB启动介质(以/dev/sdX为例,请替换为您的实际USB设备):
- # 首先确定USB设备名称
- lsblk
- # 然后使用dd命令写入镜像
- dd if=slackware64-current-install-dvd.iso of=/dev/sdX bs=4M status=progress
- sync
复制代码
1. 将USB设备插入目标计算机并重启。
2. 在启动时进入BIOS/UEFI设置,选择从USB设备启动。
3. 从启动菜单中选择”Boot Slackware Linux”。
Slackware不提供自动分区工具,需要手动分区。以下是推荐的分区方案:
- # 使用fdisk或cfdisk进行分区
- cfdisk /dev/sda
- # 推荐的分区布局:
- # /dev/sda1 - /boot (500MB-1GB)
- # /dev/sda2 - swap (内存大小的1-2倍)
- # /dev/sda3 - / (根分区,剩余空间)
- # 格式化分区
- mkfs.ext4 /dev/sda1
- mkfs.ext4 /dev/sda3
- mkswap /dev/sda2
- swapon /dev/sda2
复制代码
1. 运行setup命令启动安装程序。
2. 按照提示选择键盘映射。
3. 选择并格式化分区。
4. 选择要安装的软件包系列(Full安装推荐给初学者)。
5. 选择安装介质(通常是从硬盘或USB安装)。
6. 等待安装完成。
7. 配置系统基本设置(主机名、网络、启动服务等)。
8. 安装引导程序(LILO或ELILO)。
3.3 安装后配置
安装完成后,需要进行一些基本配置:
- # 创建新用户
- useradd -m -G users,wheel,audio,video,cdrom,plugdev username
- passwd username
复制代码
编辑网络配置文件:
- # 编辑网络配置
- nano /etc/rc.d/rc.inet1.conf
- # 配置DHCP
- IPADDR[0]=""
- NETMASK[0]=""
- USE_DHCP[0]="yes"
- DHCP_HOSTNAME[0]=""
- # 或者配置静态IP
- IPADDR[0]="192.168.1.100"
- NETMASK[0]="255.255.255.0"
- USE_DHCP[0]="no"
- GATEWAY="192.168.1.1"
复制代码- # 使网络服务可执行
- chmod +x /etc/rc.d/rc.inet1
- /etc/rc.d/rc.inet1 start
- # 使SSH服务可执行(如果需要)
- chmod +x /etc/rc.d/rc.sshd
- /etc/rc.d/rc.sshd start
复制代码
4. 基础系统管理
4.1 包管理
Slackware使用简单的包管理系统,主要包括pkgtool、installpkg、removepkg和upgradepkg等工具。
- # 安装单个软件包
- installpkg package-name.txz
- # 从目录安装所有软件包
- installpkg /path/to/packages/*.txz
复制代码- # 删除软件包
- removepkg package-name
- # 删除软件包但保留配置文件
- removepkg -warn package-name
复制代码- # 升级软件包
- upgradepkg package-name.txz
- # 升级所有可升级的软件包
- upgradepkg --install-new /path/to/packages/*.txz
复制代码- # 列出所有已安装的软件包
- ls /var/log/packages
- # 查询特定文件属于哪个软件包
- grep -l "filename" /var/log/packages/*
- # 查看软件包信息
- cat /var/log/packages/package-name
复制代码
虽然Slackware有自己的包管理系统,但也可以使用第三方工具如sbopkg来构建和安装SlackBuild脚本管理的软件。
- # 安装sbopkg
- installpkg sbopkg.txz
- # 同步SlackBuild仓库
- sbopkg -r
- # 搜索软件包
- sbopkg -s "package-name"
- # 构建并安装软件包
- sbopkg -i "package-name"
复制代码
4.2 服务管理
Slackware使用SysVinit作为初始化系统,服务通过/etc/rc.d/目录中的脚本管理。
- # 启用服务(使脚本可执行)
- chmod +x /etc/rc.d/rc.service_name
- # 禁用服务(移除执行权限)
- chmod -x /etc/rc.d/rc.service_name
- # 启动服务
- /etc/rc.d/rc.service_name start
- # 停止服务
- /etc/rc.d/rc.service_name stop
- # 重启服务
- /etc/rc.d/rc.service_name restart
复制代码
编辑/etc/rc.d/rc.M文件来调整服务启动顺序,或添加自定义启动脚本。
4.3 用户和权限管理
- # 创建新用户
- useradd -m -G users,wheel,audio,video username
- passwd username
- # 修改用户属性
- usermod -aG additional_group username
- # 删除用户
- userdel -r username
复制代码- # 修改文件权限
- chmod 755 file_or_directory
- # 修改文件所有者
- chown user:group file_or_directory
- # 使用sudo配置(编辑/etc/sudoers)
- visudo
- # 添加用户到sudo组
- usermod -aG wheel username
复制代码- # 安装配额工具
- installpkg quota.txz
- # 编辑/etc/fstab启用配额
- /dev/sda3 / ext4 defaults,usrquota,grpquota 1 1
- # 创建配额文件
- quotacheck -cug /
- quotaon /
- # 为用户设置配额
- edquota username
复制代码
5. 网络配置
5.1 基本网络设置
编辑/etc/rc.d/rc.inet1.conf文件:
- # DHCP配置
- IPADDR[0]=""
- NETMASK[0]=""
- USE_DHCP[0]="yes"
- DHCP_HOSTNAME[0]=""
- # 静态IP配置
- IPADDR[0]="192.168.1.100"
- NETMASK[0]="255.255.255.0"
- USE_DHCP[0]="no"
- GATEWAY="192.168.1.1"
复制代码
安装必要的无线工具:
- installpkg wpa_supplicant.txz
- installpkg wireless_tools.txz
复制代码
配置无线网络:
- # 创建WPA配置文件
- nano /etc/wpa_supplicant.conf
- # 添加以下内容
- network={
- ssid="your_network_name"
- psk="your_password"
- }
- # 启用无线接口
- wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
- dhcpcd wlan0
复制代码
编辑/etc/resolv.conf文件:
- nameserver 8.8.8.8
- nameserver 8.8.4.4
复制代码
5.2 防火墙配置
Slackware使用iptables作为默认防火墙。
创建防火墙脚本/etc/rc.d/rc.firewall:
- #!/bin/sh
- # 清除现有规则
- iptables -F
- iptables -X
- iptables -t nat -F
- iptables -t nat -X
- # 设置默认策略
- iptables -P INPUT DROP
- iptables -P FORWARD DROP
- iptables -P OUTPUT ACCEPT
- # 允许本地回环
- iptables -A INPUT -i lo -j ACCEPT
- iptables -A OUTPUT -o lo -j ACCEPT
- # 允许已建立的连接
- iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- # 允许SSH
- iptables -A INPUT -p tcp --dport 22 -j ACCEPT
- # 允许HTTP和HTTPS
- iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- # 保存规则
- iptables-save > /etc/iptables/rules
复制代码
使脚本可执行:
- chmod +x /etc/rc.d/rc.firewall
- /etc/rc.d/rc.firewall
复制代码- # 端口转发
- iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:8080
- # 限制连接频率
- iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -m recent --set
- iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -m recent --update --seconds 60 --hitcount 4 -j DROP
- # 防止DDoS攻击
- iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
复制代码
5.3 网络服务
编辑/etc/ssh/sshd_config文件:
- # 更改默认端口
- Port 2222
- # 禁用root登录
- PermitRootLogin no
- # 仅允许特定用户
- AllowUsers username1 username2
- # 使用密钥认证
- PasswordAuthentication no
- PubkeyAuthentication yes
复制代码
重启SSH服务:
- /etc/rc.d/rc.sshd restart
复制代码
安装Apache:
- installpkg httpd.txz
- chmod +x /etc/rc.d/rc.httpd
- /etc/rc.d/rc.httpd start
复制代码
配置虚拟主机:
- # 创建虚拟主机配置文件
- nano /etc/httpd/extra/httpd-vhosts.conf
- # 添加以下内容
- <VirtualHost *:80>
- ServerAdmin webmaster@example.com
- DocumentRoot "/var/www/htdocs/example.com"
- ServerName example.com
- ErrorLog "/var/log/httpd/example.com-error_log"
- CustomLog "/var/log/httpd/example.com-access_log" common
- </VirtualHost>
复制代码
安装vsftpd:
- installpkg vsftpd.txz
- chmod +x /etc/rc.d/rc.vsftpd
复制代码
编辑/etc/vsftpd.conf:
- # 禁用匿名访问
- anonymous_enable=NO
- # 允许本地用户登录
- local_enable=YES
- # 允许写入操作
- write_enable=YES
- # 限制用户到其主目录
- chroot_local_user=YES
复制代码
启动FTP服务:
- /etc/rc.d/rc.vsftpd start
复制代码
6. 桌面环境配置
6.1 X Window系统
- # 安装Xorg
- installpkg xorg.txz
- # 安装显卡驱动(以NVIDIA为例)
- installpkg nvidia-driver.txz
复制代码- # 生成Xorg配置文件
- Xorg -configure
- mv xorg.conf.new /etc/X11/xorg.conf
复制代码
编辑/etc/X11/xorg.conf以调整显示设置:
- Section "Screen"
- Identifier "Screen0"
- Device "Card0"
- Monitor "Monitor0"
- SubSection "Display"
- Viewport 0 0
- Depth 24
- Modes "1920x1080" "1280x1024"
- EndSubSection
- EndSection
复制代码- # 测试X Window
- startx
- # 设置默认显示管理器(以XDM为例)
- chmod +x /etc/rc.d/rc.xdm
复制代码
6.2 常见桌面环境
- # 安装KDE Plasma
- installpkg kde.txz
- # 启用KDM显示管理器
- chmod +x /etc/rc.d/rc.kdm
- /etc/rc.d/rc.kdm start
复制代码- # 安装Xfce
- installpkg xfce.txz
- # 配置Xfce为默认桌面环境
- echo "exec startxfce4" > ~/.xinitrc
复制代码- # 安装MATE
- installpkg mate.txz
- # 配置MATE为默认桌面环境
- echo "exec mate-session" > ~/.xinitrc
复制代码
6.3 桌面环境定制
编辑/etc/lilo.conf:
运行lilo应用更改。
以XDM为例,编辑/etc/X11/xdm/Xsetup:
- # 添加以下内容
- if [ -z "$DISPLAY" ]; then
- exec xinit /usr/bin/startxfce4 -- /usr/bin/X :0 vt7 -nolisten tcp
- fi
复制代码
编辑/etc/fstab:
- # 添加以下内容
- /dev/sdb1 /mnt/usb auto defaults,user,noauto 0 0
复制代码
7. 系统优化与性能调整
7.1 内核参数调整
编辑/etc/sysctl.conf文件:
- # 网络优化
- net.core.rmem_max = 16777216
- net.core.wmem_max = 16777216
- net.ipv4.tcp_rmem = 4096 87380 16777216
- net.ipv4.tcp_wmem = 4096 65536 16777216
- net.ipv4.tcp_congestion_control = bbr
- # 文件系统优化
- vm.swappiness = 10
- vm.vfs_cache_pressure = 50
- vm.dirty_ratio = 60
- vm.dirty_background_ratio = 2
复制代码
应用更改:
7.2 磁盘性能优化
查看当前I/O调度器:
- cat /sys/block/sda/queue/scheduler
复制代码
临时更改I/O调度器:
- echo deadline > /sys/block/sda/queue/scheduler
复制代码
永久更改I/O调度器,编辑/etc/rc.d/rc.local:
- # 添加以下内容
- echo deadline > /sys/block/sda/queue/scheduler
复制代码
使用ext4文件系统时,可以在挂载选项中添加优化参数:
- # 编辑/etc/fstab
- /dev/sda3 / ext4 defaults,noatime,discard 0 1
复制代码
7.3 内存管理
创建交换文件:
- # 创建2GB交换文件
- dd if=/dev/zero of=/swapfile bs=1M count=2048
- chmod 600 /swapfile
- mkswap /swapfile
- swapon /swapfile
- # 添加到/etc/fstab
- /swapfile swap swap defaults 0 0
复制代码
安装ZRAM:
- installpkg zram.txz
- chmod +x /etc/rc.d/rc.zram
- /etc/rc.d/rc.zram start
复制代码
7.4 系统服务优化
- # 禁用蓝牙服务
- chmod -x /etc/rc.d/rc.bluetooth
- # 禁用打印服务
- chmod -x /etc/rc.d/rc.cups
- # 禁用NIS服务
- chmod -x /etc/rc.d/rc.yp
复制代码
编辑/etc/rc.d/rc.M,注释掉不必要的服务启动。
8. 安全加固
8.1 系统安全设置
编辑/etc/login.defs:
- # 设置密码过期时间
- PASS_MAX_DAYS 90
- PASS_MIN_DAYS 7
- PASS_WARN_AGE 14
- # 禁用su命令给wheel组之外的用户
- SU_WHEEL_ONLY yes
复制代码
编辑/etc/ssh/sshd_config:
- # 禁用root登录
- PermitRootLogin no
- # 禁用密码认证
- PasswordAuthentication no
- # 限制允许的用户
- AllowUsers user1 user2
- # 更改默认端口
- Port 2222
- # 禁用空密码
- PermitEmptyPasswords no
复制代码
创建严格的防火墙规则:
- #!/bin/sh
- # 清除现有规则
- iptables -F
- iptables -X
- iptables -t nat -F
- iptables -t nat -X
- # 设置默认策略
- iptables -P INPUT DROP
- iptables -P FORWARD DROP
- iptables -P OUTPUT ACCEPT
- # 允许本地回环
- iptables -A INPUT -i lo -j ACCEPT
- # 允许已建立的连接
- iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- # 允许SSH(仅限特定IP)
- iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 2222 -j ACCEPT
- # 允许HTTP和HTTPS
- iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- # 防止DDoS
- iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
- # 保存规则
- iptables-save > /etc/iptables/rules
复制代码
8.2 文件系统安全
- # 设置关键目录权限
- chmod 700 /root
- chmod 755 /home
- chmod 750 /etc/init.d
- chmod 644 /etc/passwd
- chmod 600 /etc/shadow
- chmod 644 /etc/group
- chmod 600 /etc/gshadow
复制代码- # 设置不可变属性
- chattr +i /etc/passwd
- chattr +i /etc/shadow
- chattr +i /etc/group
- chattr +i /etc/gshadow
复制代码
安装LUKS:
- installpkg cryptsetup.txz
复制代码
创建加密分区:
- # 加密分区
- cryptsetup luksFormat /dev/sdb1
- # 打开加密分区
- cryptsetup luksOpen /dev/sdb1 encrypted_part
- # 格式化加密分区
- mkfs.ext4 /dev/mapper/encrypted_part
- # 挂载加密分区
- mount /dev/mapper/encrypted_part /mnt/encrypted
复制代码
8.3 系统监控与审计
- # 安装sysstat
- installpkg sysstat.txz
- # 启用系统统计收集
- chmod +x /etc/rc.d/rc.sysstat
- /etc/rc.d/rc.sysstat start
复制代码
安装auditd:
- installpkg audit.txz
- chmod +x /etc/rc.d/rc.auditd
- /etc/rc.d/rc.auditd start
复制代码
配置审计规则:
- # 编辑/etc/audit/audit.rules
- -w /etc/passwd -p wa -k identity
- -w /etc/shadow -p wa -k identity
- -w /etc/group -p wa -k identity
- -w /etc/sudoers -p wa -k identity
- -w /etc/ssh/sshd_config -p wa -k sshd
复制代码
安装Tripwire:
初始化Tripwire:
检查文件完整性:
9. 故障排除与常见问题解决
9.1 系统启动问题
如果LILO损坏,可以使用Slackware安装介质修复:
- # 挂载根分区
- mount /dev/sda3 /mnt
- # 挂载boot分区(如果有)
- mount /dev/sda1 /mnt/boot
- # 进入chroot环境
- chroot /mnt
- # 重新安装LILO
- lilo
复制代码
如果新内核无法启动,可以回滚到旧内核:
1. 重启系统,在LILO提示符处按Tab键。
2. 选择旧内核版本。
3. 进入系统后,重新编译或安装工作内核。
9.2 网络问题
检查网络接口状态:
启动网络接口:
- ifconfig eth0 up
- dhcpcd eth0
复制代码
检查/etc/resolv.conf配置:
测试DNS解析:
9.3 软件包问题
Slackware不自动处理依赖关系,需要手动解决:
- # 查找缺失的库
- ldd /usr/bin/command_name
- # 安装缺失的库
- installpkg required_library_package.txz
复制代码
如果软件包冲突,可以尝试:
- # 强制升级
- upgradepkg --reinstall package-name.txz
- # 或者先删除再安装
- removepkg package-name
- installpkg new-package-name.txz
复制代码
9.4 X Window问题
检查Xorg日志:
重新配置Xorg:
- Xorg -configure
- mv xorg.conf.new /etc/X11/xorg.conf
复制代码
检查显卡驱动:
安装正确的显卡驱动:
- # 以NVIDIA为例
- installpkg nvidia-driver.txz
复制代码
10. 进阶主题
10.1 内核编译与定制
- # 安装编译工具
- installpkg kernel-headers.txz
- installpkg kernel-source.txz
- installpkg gcc.txz
- installpkg make.txz
- installpkg ncurses.txz
复制代码- # 进入内核源码目录
- cd /usr/src/linux
- # 复制当前配置
- cp /boot/config .config
- # 启动配置工具
- make menuconfig
复制代码- # 编译内核
- make -j$(nproc)
- # 安装模块
- make modules_install
- # 安装内核
- cp arch/x86/boot/bzImage /boot/vmlinuz-custom
- cp System.map /boot/System.map-custom
- cp .config /boot/config-custom
- # 更新LILO
- nano /etc/lilo.conf
- # 添加以下内容
- image = /boot/vmlinuz-custom
- root = /dev/sda3
- label = Slackware-Custom
- read-only
- # 应用更改
- lilo
复制代码
10.2 系统服务定制
创建/etc/rc.d/rc.myservice:
- #!/bin/sh
- # 启动服务
- myservice_start() {
- echo "Starting My Service..."
- /usr/local/bin/myservice -d
- }
- # 停止服务
- myservice_stop() {
- echo "Stopping My Service..."
- killall myservice
- }
- # 重启服务
- myservice_restart() {
- myservice_stop
- sleep 1
- myservice_start
- }
- case "$1" in
- 'start')
- myservice_start
- ;;
- 'stop')
- myservice_stop
- ;;
- 'restart')
- myservice_restart
- ;;
- *)
- echo "usage $0 start|stop|restart"
- esac
复制代码
使脚本可执行:
- chmod +x /etc/rc.d/rc.myservice
复制代码
编辑/etc/rc.d/rc.M,在适当位置添加:
- # 启动自定义服务
- if [ -x /etc/rc.d/rc.myservice ]; then
- . /etc/rc.d/rc.myservice start
- fi
复制代码
10.3 创建自定义包
创建SlackBuild脚本myservice.SlackBuild:
- #!/bin/sh
- # 变量设置
- PRGNAM=myservice
- VERSION=${VERSION:-1.0}
- BUILD=${BUILD:-1}
- TAG=${TAG:-_SBo}
- # 设置架构
- ARCH=$(uname -m)
- # 设置工作目录
- CWD=$(pwd)
- TMP=${TMP:-/tmp/SBo}
- PKG=$TMP/package-$PRGNAM
- OUTPUT=${OUTPUT:-/tmp}
- # 删除旧的工作目录
- rm -rf $PKG
- mkdir -p $TMP $PKG $OUTPUT
- cd $TMP
- rm -rf $PRGNAM-$VERSION
- # 解压源码
- tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
- cd $PRGNAM-$VERSION
- # 配置和编译
- chown -R root:root .
- find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
- # 编译
- make
- # 安装到临时目录
- make install DESTDIR=$PKG
- # 复制文档
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
- cp -a README LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
- cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
- # 创建描述文件
- mkdir -p $PKG/install
- cat $CWD/slack-desc > $PKG/install/slack-desc
- # 创建doinst.sh脚本(如果需要)
- cat $CWD/doinst.sh > $PKG/install/doinst.sh
- # 创建包
- cd $PKG
- /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
复制代码
创建slack-desc文件:
- # HOW TO EDIT THIS FILE:
- # The "handy ruler" below makes it easier to edit a package description.
- # Line up the first '|' above the ':' following the base package name, and
- # the '|' on the right side marks the last column you can put a character in.
- # You must make exactly 11 lines for the formatting to be correct. It's also
- # customary to leave one space after the ':' except on otherwise blank lines.
- |-----handy-ruler------------------------------------------------------|
- myservice: myservice (A custom service for Slackware)
- myservice:
- myservice: This is a custom service that does something useful.
- myservice:
- myservice:
- myservice:
- myservice:
- myservice:
- myservice:
- myservice:
- myservice:
复制代码- # 给SlackBuild脚本执行权限
- chmod +x myservice.SlackBuild
- # 运行SlackBuild脚本
- ./myservice.SlackBuild
复制代码
11. 社区与支持资源
11.1 官方资源
• Slackware官网:https://www.slackware.com/
• Slackware文档:https://docs.slackware.com/
• Slackware邮件列表:https://www.slackware.com/lists/
• Slackware论坛:https://www.linuxquestions.org/questions/slackware-14/
11.2 第三方资源
• SlackBuilds.org:https://slackbuilds.org/- 提供额外的软件包和SlackBuild脚本
• Slackware Documentation Project:https://www.slackbook.org/- 详尽的Slackware指南
• Slackware Live Edition:https://slackware.nl/slackware-live/- Slackware Live项目
11.3 书籍推荐
• “Slackware Linux Essentials” - 官方入门指南
• “Slackware Linux Basics” - by D. Cantrell, J. Andrews
• “Linux System Administration: A User’s Guide” - by Marcel Gagné
12. 结论
Slackware Linux作为一个历史悠久的发行版,以其简洁、稳定和高度可定制的特性,为用户提供了一个接近Unix的Linux体验。虽然其学习曲线较陡,但通过本指南提供的全面文档资料,从初学者到专家都可以找到所需的信息来掌握Slackware系统的配置与管理。
我们涵盖了从系统安装、基础管理、网络配置、桌面环境设置到系统优化、安全加固以及高级主题的各个方面。通过遵循本指南的指导,您将能够充分利用Slackware的强大功能和灵活性,构建一个符合您需求的稳定、高效的Linux系统。
记住,Slackware的哲学是”保持简单”,这意味着系统控制权在您手中。随着您对Slackware的深入了解,您将发现这种简洁性带来的强大和自由。无论您是使用Slackware作为桌面系统还是服务器环境,本指南都为您提供了必要的知识和工具来管理和维护您的系统。
最后,不要忘记利用Slackware活跃的社区和丰富的在线资源。当您遇到问题时,这些资源将是您宝贵的支持。祝您在Slackware Linux的探索之旅中取得成功! |
|