Compare commits

...

3 Commits

3 changed files with 156 additions and 22 deletions

130
doc/Debootstrap.md 100644
View File

@ -0,0 +1,130 @@
# Introduction
The debootstrap tool can be used to install
a basic copy of a Debian derivative into a folder.
This guide explains how to install a full Kubuntu system with debootstrap.
However, any Ubuntu flavour can be installed this way.
# Procedure
## Basic Minimal Installation
debootstrap --variant=minbase wily /target http://ch.archive.ubuntu.com/ubuntu
The subsequent commands are all executed inside a
[chroot](Chroot.md) environment.
## Basic Configuration
### Set language
locale-gen en_US.UTF-8
update-locale LANG=en_US.UTF-8
### Set timezone
dpkg-reconfigure tzdata
### Basic configuration
Do not forget to edit `fstab`, `hostname`, and `hosts` in /etc.
An example fstab might look like:
LABEL=System / ext4 errors=remount-ro,noatime,discard 0 1
Note: `discard` is useful for SSD disks.
### Optionally, configure keyboard
dpkg-reconfigure keyboard-configuration
### Optionally, configure APT
# /etc/apt/apt.conf.d/99recommends
APT::AutoRemove::RecommendsImportant
APT::Install-Recommends
## Ubuntu Installation
### Install Ubuntu minimal
apt-get install ubuntu-minimal
ubuntu-minimal contains useful packages
which would have to be installed manually in Debian.
These include: `cron logrotate nano netbase net-tools isc-dhcp-client sudo rsyslog`
### Add a regular user
adduser user
In Ubuntu, the default secondary user groups are:
adm cdrom sudo dip plugdev lpadmin sambashare
### Install kernel and bootloader
To install a bootable system, the kernel and a bootloader
have to be installed.
The following command installs Grub for EFI with Secure Boot enabled:
apt-get install linux-generic grub-efi-amd64-signed shim-signed
For BIOS, `grub-pc` has to be installed.
Alternatively, extlinux can be installed instead of grub.
That section has yet to be written though...
### Install desktop system
At this point, it is necessary to enable the
`universe` repository component.
It is a good time to add some repositories.
#### More software repositories
All Ubuntu repositories are enabled using the following configuration:
# /etc/apt/sources.list
deb http://ch.archive.ubuntu.com/ubuntu/ wily main restricted universe multiverse
deb http://ch.archive.ubuntu.com/ubuntu/ wily-security main restricted universe multiverse
deb http://ch.archive.ubuntu.com/ubuntu/ wily-updates main restricted universe multiverse
deb http://archive.canonical.com/ubuntu wily partner
Also refer to the [Ubuntu Help](https://help.ubuntu.com/community/Repositories/Ubuntu)
to find about the different components.
Some PPAs are needed to be sure to get the latest software versions.
First the `add-apt-repository` helper is installed,
and then those repositories are added:
apt-get install software-properties-common
apt-mark auto software-properties-common
add-apt-repository ppa:libreoffice/ppa
add-apt-repository ppa:rvm/smplayer
add-apt-repository ppa:qtbittorrent-team/qtbittorrent-stable
echo deb http://debian-mirrors.sdinet.de/debian-multimedia testing main \
> /etc/apt/sources.list.d/deb-multimedia.list
#### Install desktop packages
Now do an `apt-get update` and install the desktop system:
apt-get install --install-recommends ubuntu-standard kubuntu-desktop kubuntu-restricted-extras language-pack-kde-en
Personally, I like to use Chrome and SMPlayer:
apt-get purge ktorrent dragonplayer firefox
apt-get install --install-recommends --install-suggests libreoffice-{calc,impress,writer,kde,l10n-de}
apt-get install smplayer mpv ffmpeg
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Sometimes, some packages have to be pulled
from [packages.debian.org](http://packages.debian.org) manually.
## Finished!

View File

@ -10,9 +10,6 @@ This has two benefits:
1. The installation may be faster, if the VM runs on an SSD
2. Snapshots can be used in various stages of the installation process
This guide is mostly written for openSUSE (Zypper),
but can basically be applied to most Linux distos.
Partitioning
============
@ -92,7 +89,7 @@ Install packages
**DO NOT FORGET to install firmware packages!**
For instance, a lot of laptops contain a Broadcom wireless card
which does not work out-of-the-box.
The following packages are needed:
For openSUSE, the following packages are needed:
* [kernel-firmware](http://software.opensuse.org/package/kernel-firmware)
* [b43-fwcutter](http://software.opensuse.org/package/b43-fwcutter)
@ -101,9 +98,9 @@ The following packages are needed:
Server Software
---------------
zypper in --no-recommends git
zypper in mariadb
zypper in php5-fpm php5-phar php5-openssl php5-xdebug php5-mysql
* git
* mariadb
* php5-fpm php5-phar php5-openssl php5-xdebug php5-mysql
**Note:** Files created in /tmp by PHP-FPM are actually in a subdirectory named `/tmp/systemd-private-*`
Also see https://fedoraproject.org/wiki/Features/ServicesPrivateTmp
@ -144,6 +141,8 @@ Free Space
sync
for f in var tmp root data; do rm -v /$f/zero; done
Also see [zerofree.sh](../scripts/zerofree.sh)
Notes
=====

View File

@ -8,32 +8,29 @@ and better supports collaboration between teams.
This page lists the relevant configuration files of a Seafile installation
which is accessible using HTTP *and* HTTPS.
Basically, it is a summary of the following articles:
* [Deploying Seafile with SQLite](https://github.com/haiwen/seafile-docs/blob/master/deploy/using_sqlite.md)
* [Deploy Seafile behind NAT](https://github.com/haiwen/seafile-docs/blob/master/deploy/deploy_seafile_behind_nat.md)
* [Enabling Https with Nginx](https://github.com/haiwen/seafile-docs/blob/master/deploy/https_with_nginx.md)
* [Start Seafile at System Bootup](https://github.com/haiwen/seafile-docs/blob/master/deploy/start_seafile_at_system_bootup.md)
Configuration
=============
The configuration files are documented in the manual chapter
[Server Configuration and Customization](https://github.com/haiwen/seafile-docs/tree/master/config).
Since Seafile Server 5, all config files are located in the `conf` folder.
seahub_settings.py
------------------
SECRET_KEY = "SGkhCg=="
FILE_SERVER_ROOT = "/seafhttp"
CLOUD_MODE = True
FILE_PREVIEW_MAX_SIZE = 200 * 1024 * 1024
[seahub_settings.py reference](https://github.com/haiwen/seafile-docs/blob/master/config/seahub_settings_py.md)
ccnet/ccnet.conf
----------------
FILE_SERVER_ROOT = "/seafhttp"
ccnet.conf
----------
[ccnet.conf reference](https://github.com/haiwen/seafile-docs/blob/master/config/ccnet-conf.md)
SERVICE_URL = https://seafile.example.com
Contrary to the statements in the documentation,
`[General] ID` and `[Client] PORT` are actually necessary.
(As of version 5.0.1)
seafile-server-latest/runtime/seahub.conf
-----------------------------------------
@ -51,3 +48,11 @@ See
* [seafile.service](../conf/systemd/seafile.service)
* [seahub.service](../conf/systemd/seahub.service)
References
==========
* [Deploying Seafile with SQLite](https://github.com/haiwen/seafile-docs/blob/master/deploy/using_sqlite.md)
* [Deploy Seafile behind NAT](https://github.com/haiwen/seafile-docs/blob/master/deploy/deploy_seafile_behind_nat.md)
* [Enabling Https with Nginx](https://github.com/haiwen/seafile-docs/blob/master/deploy/https_with_nginx.md)
* [Start Seafile at System Bootup](https://github.com/haiwen/seafile-docs/blob/master/deploy/start_seafile_at_system_bootup.md)