https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&user=Ahills&feedformat=atomAlpine Linux - User contributions [en]2024-03-29T02:04:04ZUser contributionsMediaWiki 1.40.0https://wiki.alpinelinux.org/w/index.php?title=LVM_on_LUKS&diff=15884LVM on LUKS2019-04-12T17:29:37Z<p>Ahills: Added instructions for keeping the user's preferred keyboard mapping during the boot password prompt.</p>
<hr />
<div>= Introduction =<br />
<br />
This documentation describes how to set up Alpine Linux using a logical volume (LV), that is installed in an encrypted partition. To encrypt the partition the logical volume manager (LVM) the volume group (VG) is installed in, the Device Mapper crypt (dm-crypt) module and Linux Unified Key Setup (LUKS) is used.<br />
<br />
Note that you must install the <code>/boot/</code> directory on an unecrypted partition to boot correctly.<br />
<br />
<br />
== Hard Disk Device Name ==<br />
<br />
The following documentation uses the <code>vda</code> device as installation destination. If your environment uses a different device name for your hard disk, use the corresponding device names in the examples.<br />
<br />
<br />
<br />
<br />
<br />
= Setting up Alpine Linux Using LVM on Top of a LUKS Partition =<br />
<br />
To install Alpine Linux in logical volumes running on top of a LUKS encrypted partition, you cannot use the [[Installation|official installation]] procedure. The installation requires several manual steps you must run in the Alpine Linux Live CD environment.<br />
<br />
<br />
<br />
== Preparing the Temporary Installation Environment ==<br />
<br />
Before you begin to install Alpine Linux, prepare the temporary environment:<br />
<br />
{{Note|All settings in this section apply only to the temporary environment and not to the later installed Alpine Linux on your hard disk.}}<br />
<br />
* Boot the latest Alpine Linux Installation CD.<br />
<br />
* At the login prompt, use the <code>root</code> user without password to log in.<br />
<br />
* Optionally, set the keyboard language:<br />
<br />
# setup-keymap<br />
<br />
: The default keyboard mapping is <code>us-us</code><br />
<br />
* Configure the network interface:<br />
<br />
# setup-interfaces<br />
<br />
: If you set a static IP address, additionally configure DNS be able to resolve host names:<br />
<br />
# setup-dns<br />
<br />
* Enable the network interface. For example:<br />
<br />
# ifup eth0<br />
<br />
* Set an apk repository and update the cache:<br />
<br />
# setup-apkrepos<br />
# apk update<br />
<br />
* Install the following packages required to set up LVM and LUKS:<br />
<br />
# apk add haveged lvm2 cryptsetup e2fsprogs syslinux<br />
<br />
: Optionally, you can install a different editor, such as <code>nano</code>, to edit files in later steps if you do not want to use VI.<br />
<br />
* Optionally, start the <code>haveged</code> service for unpredictable random numbers used for encryption:<br />
<br />
# rc-service haveged start<br />
<br />
<br />
<br />
== Creating the Partition Layout ==<br />
<br />
Linux requires an unencrypted <code>/boot/</code> partition to boot. You can assign the remaining space for the encrypted LVM physical volume (PV).<br />
<br />
* Start the <code>fdisk</code> utility to set up partitions:<br />
<br />
# fdisk /dev/vda<br />
<br />
:* Create the <code>/boot/</code> partition:<br />
::* Enter <code>n</code> &rarr; <code>p</code> &rarr; <code>1</code> &rarr; <code>1</code> &rarr; <code>+100m</code> to create a new 100 MB primary partition.<br />
<br />
:* Set the <code>/boot/</code> partition active:<br />
::* Enter <code>a</code> &rarr; <code>1</code>.<br />
<br />
:* Create the LVM PV partition:<br />
::* Enter <code>n</code> &rarr; <code>p</code> &rarr; <code>2</code> to start creating the next partition. Press <code>Enter</code> to select the default start cylinder. Enter the size of partition. For example, <code>512m</code> for 512 MB or <code>5g</code> for 5 GB. Alternatively press <code>Enter</code> to set the maximum available size.<br />
<br />
:* Set the partition type for the LVM PV:<br />
::* Enter <code>t</code> &rarr; <code>2</code> &rarr; <code>8e</code><br />
<br />
:* To verify the settings, press <code>p</code>. The output shows, for example:<br />
<br />
Device Boot Start End Blocks Id System<br />
/dev/vda1 * 1 100 50368+ 83 Linux<br />
/dev/vda2 101 10402 5192208 8e Linux LVM<br />
<br />
* Press <code>w</code> to save the changes.<br />
<br />
* Optionally, wipe the LVM PV partition with random values:<br />
<br />
# haveged -n 0 | dd of=/dev/vda2<br />
<br />
: Depending on the size of the partition, this process can take several minutes to hours.<br />
<br />
== Encrypting the LVM Physical Volume Partition == <br />
<br />
* To encrypt the partition which will later contain the LVM PV:<br />
<br />
# cryptsetup luksFormat /dev/vda2<br />
<br />
: If you prefer setting an individual hashing algorithm and hashing schema:<br />
:* To run a benchmark:<br />
<br />
# cryptsetup benchmark<br />
<br />
:* To encrypt the partition using individual settings, enter, for example:<br />
<br />
# cryptsetup -v -c serpent-xts-plain64 -s 512 --hash whirlpool --iter-time 5000 --use-random luksFormat /dev/vda2<br />
<br />
<br />
<br />
== Creating the Logical Volumes and File Systems ==<br />
<br />
* Open the LUKS partition:<br />
<br />
# cryptsetup open --type luks /dev/vda2 lvmcrypt<br />
<br />
* Create the PV on <code>/dev/vda</code>:<br />
<br />
# pvcreate /dev/mapper/lvmcrypt<br />
<br />
* Create the <code>vg0</code> LVM VG in the <code>/dev/mapper/lvmcrypt</code> PV:<br />
<br />
# vgcreate vg0 /dev/mapper/lvmcrypt<br />
<br />
* Create the LVs:<br />
<br />
: In the following you will create a LV for the root partition. However, you can use the same command with a different LV name to create further LVs for other mount points you want to create.<br />
<br />
:* To create a 2 GB LV named <code>root</code> in the <code>vg0</code> VG:<br />
<br />
# lvcreate -L 2G vg0 -n root<br />
<br />
: Create a 512 MB swap LV:<br />
<br />
# lvcreate -L 512M vg0 -n swap<br />
<br />
* The LVs created in the previous steps are automatically marked active. To verify, enter:<br />
<br />
# lvscan<br />
<br />
: Format the <code>root</code> LV using the ext4 file system:<br />
<br />
# mkfs.ext4 /dev/vg0/root<br />
<br />
: If you created further LVs in the previous step, create the file systems on them using the same command with the path to the LV.<br />
<br />
* Format the swap LV:<br />
<br />
# mkswap /dev/vg0/swap<br />
<br />
* Format the <code>/dev/vda1</code> device for the <code>/boot/</code> partition using the ext4 file system:<br />
<br />
# mkfs.ext4 /dev/vda1<br />
<br />
<br />
<br />
== Mounting the File Systems ==<br />
<br />
Before you can install Alpine Linux, you must mount the partitions and LVs:<br />
<br />
* Mount the root LV to the <code>/mnt/</code> directory:<br />
<br />
# mount -t ext4 /dev/vg0/root /mnt/<br />
<br />
* Create <code>/mnt/boot/</code> directory and mount the <code>/dev/vda1</code> partition in this directory:<br />
<br />
# mkdir /mnt/boot/<br />
# mount -t ext4 /dev/vda1 /mnt/boot/<br />
<br />
: If you created further partitions or LVs, create the mount points within the <code>/mnt/</code> directory and mount the devices.<br />
<br />
== Installing Alpine Linux ==<br />
<br />
In this step you will install Alpine Linux in the <code>/mnt/</code> directory, which contains the mounted file system structure:<br />
<br />
* Install Alpine Linux:<br />
<br />
# setup-disk -m sys /mnt/<br />
<br />
: The installer downloads the latest packages to install the base installation. Additionally, the installer automatically creates the entries for the mount points in the <code>fstab</code> file, which are currently mounted in the <code>/mnt/</code> directory.<br />
<br />
: {{Note|The automatic writing of the master boot record (MBR) fails in this step. You will write the MBR later manually to the disk.}}<br />
<br />
* To enable the operating system to decrypt the PV at boot time, create the <code>/mnt/etc/crypttab</code> file. Enter the following line into the file to decrypt the <code>/dev/vda2</code> partition using the <code>luks</code> module and map it to the <code>lvmcrypt</code> name:<br />
<br />
lvmcrypt /dev/vda2 none luks<br />
<br />
* The swap LV is not automatically added to the <code>fstab</code> file. To add it manually, add the following line to the <code>/mnt/etc/fstab</code> file:<br />
<br />
/dev/vg0/swap swap swap defaults 0 0<br />
<br />
* Edit the <code>/mnt/etc/mkinitfs/mkinitfs.conf</code> file and append the <code>cryptsetup</code> module to the <code>features</code> parameter:<br />
<br />
features="ata base ide scsi usb virtio ext4 lvm <u>cryptsetup</u>"<br />
<br />
:{{Note|Alpine Linux uses the <code>en-us</code> keyboard mapping by default when prompting for the password to decrypt the partition at boot time. If you changed the keyboard mapping in the temporary environment and want to use it at the boot password prompt, be sure to also add the <code>keymap<code> feature to the list above.}}<br />
<br />
* Rebuild the initial RAM disk:<br />
<br />
# mkinitfs -c /mnt/etc/mkinitfs/mkinitfs.conf -b /mnt/ $(ls /mnt/lib/modules/)<br />
<br />
: The command uses the settings from the <code>mkinitfs.conf</code> file set in the <code>-c</code> parameter to generate the RAM disk. The command is executed in the <code>/mnt/</code> directory and the RAM disk is generated using the modules for the installed kernel. Without setting the kernel version using the <code>$(ls /mnt/lib/modules/</code>) option, <code>mkinitfs</code> tries to generate the RAM disk using the kernel version installed in the temporary environment, which can differ from the latest one installed by the <code>setup-disk</code> utility.<br />
<br />
* Edit the <code>/mnt/etc/update-extlinux.conf</code> file and append the following kernel options to the <code>default_kernel_opts</code> parameter:<br />
<br />
default_kernel_opts="... <u>cryptroot=/dev/vda2 cryptdm=lvmcrypt</u>"<br />
<br />
: The <code>cryptroot</code> parameter sets the name of the device that contains the root file system. The <code>cryptdm</code> parameter sets the name of the mapping previously set in the <code>crypttab</code> file.<br />
<br />
* Because the <code>update-extlinux</code> utility operators only on the <code>/boot/</code> directory, temporarily change the root to the <code>/mnt/</code> directory and update the boot loader configuration:<br />
<br />
# chroot /mnt/<br />
# update-extlinux<br />
# exit<br />
<br />
: Ignore the errors the <code>update-extlinux</code> utility displays.<br />
<br />
* Write the MBR to the <code>/dev/vda</code> device:<br />
<br />
# dd bs=440 count=1 conv=notrunc if=/mnt/usr/share/syslinux/mbr.bin of=/dev/vda<br />
<br />
== Unmounting the Volumes and Partitions ==<br />
<br />
* Umount <code>/mnt/boot/</code> and <code>/mnt/</code>:<br />
<br />
# umount /mnt/boot/<br />
# umount /mnt/<br />
<br />
: {{Note|If you mounted further partitions or LVs below <code>/mnt/</code>, you must first unmount all of them before you can unmount <code>/mnt/</code>.}}<br />
<br />
* Disable the swap partition:<br />
<br />
# swapoff -a<br />
<br />
* Deactivate the VG:<br />
<br />
# vgchange -a n<br />
<br />
* Close the <code>lvmcrypt</code> device:<br />
<br />
# cryptsetup luksClose lvmcrypt<br />
<br />
* Reboot the system:<br />
<br />
# reboot<br />
<br />
<br />
<br />
<br />
<br />
= Troubleshooting =<br />
<br />
== General Procedure ==<br />
<br />
In case your system fails to boot, you can verify the settings and fix incorrect configurations:<br />
<br />
* [[#Preparing_the_Temporary_Installation_Environment|Prepare the temporary installation environment]]<br />
<br />
* Activate the VGs:<br />
<br />
# vgchange -a y<br />
<br />
* [[#Mounting_the_File_Systems|Mount the file systems]]<br />
<br />
* Verify that you run the steps described in the [[#Installing_Alpine_Linux|Installing Alpine Linux]] section correctly. Update the configuration if necessary.<br />
<br />
* [[#Unmounting_the_Volumes_and_Partitions|Unmount the volumes and partitions]]<br />
<br />
= Hardening =<br />
<br />
* To harden, you should disable DMA[https://old.iseclab.org/papers/acsac2012dma.pdf] and install a hardened version of AES (TRESOR[https://www1.informatik.uni-erlangen.de/tresor] or Loop-Amnesia[http://moongate.ydns.eu/amnesia.html]) since by default cryptsetup with luks uses AES by default.<br />
* Disable DMA in the BIOS and set the password for the BIOS according to Wikipedia.[https://en.wikipedia.org/wiki/DMA_attack]<br />
* Blacklist kernel modules that use DMA and any unused expansion modules (FireWire, CardBus, ExpressCard, Thunderbolt, USB 3.0, PCI Express and hotplug modules) that use DMA.<br />
<br />
[[Category:Storage]]<br />
[[Category:Security]]</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Tutorials_and_Howtos&diff=10923Tutorials and Howtos2015-05-29T15:33:31Z<p>Ahills: /* Misc */ Add reference to Kernel Modesetting</p>
<hr />
<div>[[Image:package_edutainment.svg|right|link=]]<br />
{{TOC left}}<br />
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''<br />
<br />
The tutorials are hands-on and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.<br />
<br />
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux.<br />
<br />
We encourage people to send in both complete articles as well as requesting topics to be covered. If you think you have the skills and knowledge to write an Alpine Linux related article please do so on this Wiki. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].<br />
<br />
{{Clear}}<br />
== Storage ==<br />
<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)'' <!-- Installation and Storage --><br />
** [[Back Up a Flash Memory Installation]] <!-- Installation and Storage --><br />
** [[Manually editing a existing apkovl]]<br />
<br />
* [[Setting up disks manually]] <!-- Installation and Storage --><br />
* [[Setting up a software RAID array]]<br />
<!-- ** [[Setting up a /var partition on software IDE raid1]] Obsolete, Installation and Storage --> <br />
* [[Raid Administration]]<br />
* [[Setting up encrypted volumes with LUKS]]<br />
* [[Setting up LVM on LUKS]]<br />
* [[Setting up Logical Volumes with LVM]]<br />
** [[Setting up LVM on GPT-labeled disks]]<br />
** [[Installing on GPT LVM]]<br />
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub --><br />
<br />
* [[Setting up iSCSI]]<br />
** [[iSCSI Raid and Clustered File Systems]]<br />
* [[Setting up NBD]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution --><br />
* [[Linux iSCSI Target (TCM)]]<br />
* [[Disk Replication with DRBD]] <!-- draft --><br />
<br />
* [[Burning ISOs]] <!-- just some links now --><br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* [[Create a bootable Raspberry Pi SDHC from a Mac]]<br />
<br />
== Networking ==<br />
<br />
* [[Configure Networking]]<br />
* [[Connecting to a wireless access point]]<br />
* [[Bonding]]<br />
* [[Vlan]]<br />
* [[Bridge]]<br />
* [[OpenVSwitch]]<br />
* [[How to configure static routes]]<br />
<br />
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''<br />
<br />
* [[PXE boot]]<br />
<br />
* [[Using serial modem]]<br />
* [[Using HSDPA modem]]<br />
* [[Setting up Satellite Internet Connection]]<br />
* [[Using Alpine on Windows domain with IPSEC isolation]]<br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)'' <!-- Server and Networking --><br />
* [[How to setup a wireless access point]] ''(Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)''<br />
* [[Setting up a OpenVPN server with Alpine]] ''(Allowing single users or devices to remotely connect to your network)''<br />
<!-- [[Using Racoon for Remote Sites]] is a different VPN tunnelling method, but that article is just a stub --><br />
* [[Experiences with OpenVPN-client on ALIX.2D3]] <!-- solution --><br />
<br />
* [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 --><br />
* [[Setting up unbound DNS server]]<br />
* [[Setting up nsd DNS server]]<br />
* [[TinyDNS Format]]<br />
* [[Fault Tolerant Routing with Alpine Linux]] <!-- solution --><br />
* [[Freeradius Active Directory Integration]]<br />
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''<br />
* [[OwnCloud]] ''(Installing OwnCloud)''<br />
<br />
* [[Apache with php-fpm]]<br />
* [[Seafile: setting up your own private cloud]]<br />
<br />
== Post-Install ==<br />
<!-- If you edit this, please coordinate with Installation#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
** [[Comparison with other distros]]<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation]] <!-- new --><br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
<!-- [[Writing Init Scripts]] --><br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
* [[Ansible]] ''(Configuration management)''<br />
<br />
* [[Enable Serial Console on Boot]]<br />
<!-- Obsolete?<br />
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]<br />
--><br />
<br />
== Virtualization==<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen PCI Passthrough]]<br />
* [[Xen LiveCD]]<br />
* [[qemu]]<br />
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''<br />
* [[Docker]]<br />
<br />
== Desktop Environment ==<br />
<br />
* [[Awesome(wm) Setup]]<br />
* [[EyeOS]] ''(Cloud Computing Desktop)''<br />
* [[Gnome Setup]]<br />
* [[MATE|MATE Setup]]<br />
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')<br />
* [[Remote Desktop Server]]<br />
* [[Suspend on LID close]]<br />
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]<br />
* [[Installing Adobe flash player for Firefox]]<br />
<br />
== Applications ==<br />
<br />
=== Telephony ===<br />
* [[Setting up Zaptel/Asterisk on Alpine]]<br />
** [[Setting up Streaming an Asterisk Channel]]<br />
* [[Freepbx on Alpine Linux]]<br />
* [[FreePBX_V3]] ''(FreeSWITCH, Asterisk GUI web acces tool)''<br />
* [[2600hz]] ''(FreeSWITCH, Asterisk GUI web access tool)''<br />
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''<br />
<br />
=== Mail ===<br />
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''<br />
** [[Hosting Web/Email services on Alpine]]<br />
* [[ISP Mail Server HowTo]] <!-- solution, Mail --><br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Setting up postfix with virtual domains]]<br />
* [[Protecting your email server with Alpine]]<br />
* [[Setting up clamsmtp]]<br />
* [[Setting up dovecot with imap and ssl]]<br />
<br />
=== HTTP ===<br />
* [[Lighttpd]]<br />
** [[Lighttpd Https access]]<br />
** [[Setting Up Lighttpd with PHP]]<br />
** [[Setting Up Lighttpd With FastCGI]]<br />
* [[Cherokee]]<br />
* [[Nginx]]<br />
* [[Apache]]<br />
** [[Setting Up Apache with PHP]]<br />
** [[Apache authentication: NTLM Single Signon]]<br />
<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' <!-- solution, Server --><br />
<br />
* [[Setting up Transparent Squid Proxy]] <!-- draft --><br />
** [[SqStat]] ''(Script to look at active squid users connections)''<br />
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[Setting up Explicit Squid Proxy]]<br />
<br />
* [[Drupal]] ''(Content Management System (CMS) written in PHP)''<br />
* [[WordPress]] ''(Web software to create website or blog)''<br />
* [[MediaWiki]] ''(Free web-based wiki software application)''<br />
* [[DokuWiki]]<br />
* [[Darkhttpd]]<br />
<br />
=== Other Servers ===<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
<br />
* [[Setting up a nfs-server]]<br />
* [[Phpizabi]] ''(Social Networking Platform)''<br />
* [[Statusnet]] ''(Microblogging Platform)''<br />
* [[Pastebin]] ''(Pastebin software application)''<br />
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]<br />
<br />
* [[Patchwork]] ''(Patch review management system)''<br />
* [[Redmine]] ''(Project management system)''<br />
* [[Request-Tracker]] ''(Ticket system)''<br />
* [[OsTicket]] ''(Ticket system)''<br />
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''<br />
<br />
* [[Cgit]]<br />
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet --><br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Glpi]] ''(Manage inventory of technical resources)''<br />
<br />
* [[How to setup a Alpine Linux mirror]]<br />
* [[Cups]]<br />
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''<br />
* [[OpenVCP]] ''(VServer Control Panel)''<br />
* [[Mahara]] ''(E-portfolio and social networking system)''<br />
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]<br />
* [[Sending SMS using gnokii]]<br />
<br />
=== Monitoring ===<br />
* [[Traffic monitoring]] <!-- Networking and Monitoring --><br />
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring --><br />
* [[Setting up monitoring using rrdtool (and rrdcollect)]]<br />
* [[Setting up Cacti|Cacti]] ''(Front-end for rrdtool networking monitor)''<br />
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server --><br />
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring --><br />
* [[Setting up Smokeping|Smokeping]] ''(Network latency monitoring)'' <!-- Networking and Monitoring --><br />
** [[Setting up MRTG and Smokeping to Monitor Bandwidth Usage and Network Latency]]<br />
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance)'' <!-- Networking and Monitoring --><br />
* [[Cvechecker]] ''(Compare installed packages for Common Vulnerabilities Exposure)'' <!-- Monitoring and Security --><br />
<br />
* [[IP Accounting]] <!-- Networking and Monitoring --><br />
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[SqStat]] ''(Script to look at active squid users connections)''<br />
<br />
* [[Piwik]] ''(A real time web analytics software program)''<br />
* [[Awstats]] ''(Free log file analyzer)''<br />
* [[Intrusion Detection using Snort]]<br />
** [[Intrusion Detection using Snort, Sguil, Barnyard and more]]<br />
* [[Dglog]] ''(Log analyzer for the web content filter DansGuardian)''<br />
<br />
* [[Webmin]] ''(A web-based interface for Linux system)''<br />
* [[PhpPgAdmin]] ''(Web-based administration tool for PostgreSQL)''<br />
* [[PhpMyAdmin]] ''(Web-based administration tool for MYSQL)''<br />
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''<br />
* [[Linfo]]<br />
<br />
* [[Setting up lm_sensors]]<br />
<br />
* [[ZoneMinder video camera security and surveillance]]<br />
<br />
== Misc ==<br />
<br />
* [[:Category:Shell]]<br />
* [[:Category:Programming]]<br />
* [[Running glibc programs]]<br />
* [[:Category:Drivers]]<br />
* [[:Category:Multimedia]]<br />
* [[Kernel Modesetting]]<br />
<br />
== Complete Solutions ==<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]]<br />
* [[Fault Tolerant Routing with Alpine Linux]]<br />
* [[Experiences with OpenVPN-client on ALIX.2D3]]<br />
* [[Building a cloud with Alpine Linux]]<br />
<br />
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''<br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --><br />
* [[Streaming Security Camera Video with VLC]]<br />
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]<br />
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''<br />
<br />
<br />
<!--<br />
This does not attempt to be complete. Is it useful to have these listed here? I find them more accessible if grouped with their topics; also, an up-to-date list of all Draft or Obsolete pages can be found at [[Project:Wiki maintenance]].<br />
<br />
== Drafts ==<br />
Currently unfinished/works-in-progress.<br />
* [[Using Racoon for Remote Sites]]<br />
* [[Setting up Transparent Squid Proxy]] ''(Covers Squid proxy and URL Filtering system)''<br />
** [[Obtaining user information via SNMP]] ''(Using the Squark Squid authentication helper)'' [!-- no longer a draft --]<br />
* [[Setting up Streaming an Asterisk Channel]]<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)''<br />
* [[Intrusion Detection using Snort]] ''(Installing and configuring Snort and related applications on Alpine 2.0.x)''<br />
* [[IP Accounting]] ''(Installing and configuring pmacct for IP Accounting, Netflow/sFlow collector)''<br />
* [[Disk Replication with DRBD]]<br />
--></div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Intel_Video&diff=10922Intel Video2015-05-29T15:30:23Z<p>Ahills: /* Kernel Modesetting (KMS) */ Use correct syntax for template workaround</p>
<hr />
<div>The following instructions are for modern Intel GPU chipsets covered by the i915 driver.<br />
See [[#Known working configurations]].<br />
<br />
== Setup Xorg/udev ==<br />
<br />
# Run the [[Alpine setup scripts#setup-xorg-base|setup-xorg-base]] script.<br />
# Install the Xorg Intel video drivers: {{Cmd|apk add xf86-video-intel}}<br />
# Enable [[#Kernel Modesetting (KMS)]]. Specifically, the <code>fbcon</code> module is necessary, or leaving Xorg (via <code>Ctrl+Alt+F1</code> or quitting) will result in a black screen until the machine is power cycled. If you have already launch Xorg and don't want to experience this effect, you can <code>modprobe fbcon</code> while Xorg is running.<br />
<br />
== Kernel Modesetting (KMS) ==<br />
<br />
To enable KMS at boot:<br />
# Add the <code>i915</code> and <code>fbcon</code> modules to {{Path|/etc/modules}}: {{Cmd|$ echo i915 >> /etc/modules<br />$ echo fbcon >> /etc/modules}}<br />
# Install <code>mkinitfs</code>: {{Cmd|apk add mkinitfs}}<br />
# Enable the <code>kms</code> feature in the <code>mkinitfs</code> configuration by adding it to the <var>features</var> variable, e.g., {{cat|/etc/mkinitfs/mkinitfs.conf|features{{=}}"keymap cryptsetup kms ata base ide scsi usb virtio ext4"}}<br />
# Run <code>mkinitfs</code>.<br />
# Reboot to test the configuration.<br />
<br />
== Known working configurations ==<br />
<br />
; Lenovo X1 Carbon (1st gen), <code>sys</code> installation<br />
<pre style="white-space: pre-wrap; word-wrap: break-word;"># lspci -s 02 -v<br />
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller])<br />
Subsystem: Lenovo Device 21f9<br />
Flags: bus master, fast devsel, latency 0, IRQ 28<br />
Memory at f0000000 (64-bit, non-prefetchable) [size=4M]<br />
Memory at e0000000 (64-bit, prefetchable) [size=256M]<br />
I/O ports at 4000 [size=64]<br />
Expansion ROM at <unassigned> [disabled]<br />
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-<br />
Capabilities: [d0] Power Management version 2<br />
Capabilities: [a4] PCI Advanced Features<br />
Kernel driver in use: i915<br />
</pre></div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Kernel_Modesetting&diff=10921Kernel Modesetting2015-05-29T15:28:24Z<p>Ahills: Add proper todo templates</p>
<hr />
<div>{{Expand|Needs AMD and nVidia driver information}}<br />
<br />
; Intel<br />
: See [[Intel_Video#Kernel_Modesetting_(KMS)]]<br />
; Radeon<br />
: {{Todo|Find out how KMS works with Radeon drivers}}<br />
; nVidia<br />
: {{Todo|Find out how KMS works with nVidia drivers}}</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Kernel_Modesetting&diff=10920Kernel Modesetting2015-05-29T15:26:37Z<p>Ahills: Replace stub with expand</p>
<hr />
<div>{{Expand|Needs AMD and nVidia driver information}}<br />
<br />
; Intel<br />
: See [[Intel_Video#Kernel_Modesetting_(KMS)]]<br />
; Radeon<br />
: ''TODO''<br />
; nVidia<br />
: ''TODO''</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Kernel_Modesetting&diff=10919Kernel Modesetting2015-05-29T15:24:29Z<p>Ahills: Create KMS stub</p>
<hr />
<div>{{stub}}<br />
<br />
; Intel<br />
: See [[Intel_Video#Kernel_Modesetting_(KMS)]]<br />
; Radeon<br />
: ''TODO''<br />
; nVidia<br />
: ''TODO''</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Installation&diff=10918Installation2015-05-29T15:22:02Z<p>Ahills: /* Post-Install */ Move new reference below comment to avoid interruption</p>
<hr />
<div>The following information will assist you with the installation of [http://alpinelinux.org/about Alpine Linux].<br />
[[Image:hdd_mount.png|left|link=]]<br />
<br /><br />
<br />
== Installation Quick-Start in 3 Easy Steps ==<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
1st<br />
</div><br />
<div style="margin-left:65px; background-color:#EDF2F2; border-style:solid; border-color:#6F7C91; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
[http://alpinelinux.org/downloads Download] the latest stable-release ISO.<br />
</div><br />
<br />
<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
2nd<br />
</div><br />
<div style="margin-left:65px; background-color:#E0E9E9; border-style:solid; border-color:#606A82; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
If you have a CD drive from which you can boot, then [[Burning ISOs|burn the ISO onto a blank CD]] using your favorite CD burning software. Else [[Create a Bootable USB|create a bootable USB drive]].<br />
</div><br />
<br />
<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
3rd<br />
</div><br />
<div style="margin-left:65px; background-color:#9faecc; border-style:solid; border-color:#324065; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
Boot from the CD or USB drive, login as root with no password, and voilĂ ! Enjoy Alpine Linux!<br />
</div><br />
<br />
{{Clear}}<br />
One of the [[Installation#Post-Install|first commands you might want to use]] is <code>[[setup-alpine]]</code>.<br />
<br />
== Installation Handbook ==<br />
=== Basics ===<br />
Alpine can be used in any of three modes:<br />
<dl><br />
<dt>diskless mode<br />
<dd>You'll boot from read-only medium such as the installation CD, a [[Create a Bootable USB|USB drive]], or a [[Create a Bootable Compact Flash|Compact Flash card]]. {{Tip| To prepare either a USB or Compact Flash card, you can use the <code>[[setup-bootable]]</code> script; see the pages linked above for details.}} When you use Alpine in this mode, you need to use [[Alpine local backup|Alpine Local Backup (lbu)]] to save your modifications between reboots. That requires some writable medium, usually removable. (If your boot medium is, for example, a USB drive, you can save modifications there; you don't need a separate partition or drive.) See also [[Local APK cache]].<br />
{{Note| When the <code>[[setup-alpine]]</code> script asks for a disk, say "none". It will then prompt whether you'd like to preserve modifications on any writable medium.}}<br />
<dt>data mode<br />
<dd>As in diskless mode, your OS is run from a read-only medium. However, here a writable partition (usually on a hard disk) is used to store the data in {{Path|/var}}. That partition is accessed directly, rather than copied into a tmpfs; so this is better-suited to uses where large amounts of data need to be preserved between reboots. {{Note| The <code>[[setup-alpine]]</code> script handles installing Alpine in this mode, too, when you supply a writable partition instead of "none", and request mode "data".}} This mode may be used for mailspools, database and log servers, and so on.<br />
<dt>sys mode<br />
<dd>This is a [[Install to disk|traditional hard-disk install]] (see link for details). <!-- includes [[Installing Alpine on HDD overwriting everything]] --> Both the boot system and your modifications are written to the hard disk, in a standard Linux hierarchy. {{Note| The <code>[[setup-alpine]]</code> script handles installing Alpine in this mode, too, when you supply a writable partition instead of "none", and request mode "sys". By default, it will create three partions on your disk, for {{Path|/boot}}, {{Path|/}}, and {{Path|swap}}; however you can also [[Setting up disks manually|partition your disk manually]].<br />
}} This mode may be used for desktops, development boxes, and virtual servers.<br />
<!-- [[Native Harddisk Install 1.6]] Obsolete --><br />
</dl><br />
<br />
=== Advanced ===<br />
* [[Tutorials_and_Howtos#Storage|Setting up storage with RAID, LVM, LUKS encryption, iSCSI, or suchlike]]<br />
* [[Setting up disks manually]]<br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* Details about [[Alpine setup scripts]]<br />
<br />
* [[Installing Alpine on HDD dualbooting|Install to HDD with dual-boot]]<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
<!-- [[Installing Xubuntu using Alpine boot floppy]] Obsolete --><br />
<!-- [[Installing Alpine Linux on USB Automated]] Obsolete --><br />
<br />
* [[Bootstrapping Alpine Linux]]<br />
<br />
<!-- If you edit the following, please coordinate with Developer_Documentation#Configuring_your_system. Note that these two sections are not exact duplicates. --><br />
* [[Installing Alpine Linux in a chroot]]<br />
<br />
* Install Alpine on [[Install Alpine on VirtualBox|VirtualBox]], [[Install Alpine on VMware|VMware]], [[Install Alpine on coLinux|coLinux]], [[Qemu]], <!-- includes [[Install Alpine in Qemu]], [[Running Alpine in Qemu Live mode]], [[Running Alpine Linux As a QEMU networked Guest]] -->, [[Install Alpine on Amazon EC2|Amazon EC2]], or [[Install Alpine on Rackspace|RackSpace]]<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen LiveCD]]<br />
<br />
* [[Setting up a basic vserver]]<br />
* [[Setting up the build environment on HDD]]<br />
* [[Setting up a compile vserver]] for official or for [[Setting up a compile vserver for third party packages|third party]] packages<br />
<!-- [[Create an Alpine 1.9 vserver template]] --><br />
<br />
=== Post-Install ===<br />
<!-- If you edit this, please coordinate with and Tutorials_and_Howtos#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
<!-- [[Configure Networking]] --><br />
* [[Tutorials_and_Howtos#Networking|Setting up Networking]]<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation|Back Up a Flash Memory ("diskless mode") Installation]]<br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
<!-- [[Writing Init Scripts]] --><br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Hosting services on Alpine]]''(Links to several mail/web/ssh server setup pages)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
<br />
<!-- [[Running glibc programs]] Installation and Dev --><br />
* [[Setting the timezone]] ''(Not needed for the default musl- or uClibc-based installs)''<br />
<br />
=== Further Help and Information ===<br />
* [[FAQ|FAQs]]<br />
* [[Tutorials and Howtos]]<br />
* [[Contribute|How to Contribute]]<br />
* [[Developer Documentation]]<br />
<br />
[[Category:Installation]]</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Tutorials_and_Howtos&diff=10917Tutorials and Howtos2015-05-29T15:20:45Z<p>Ahills: /* Post-Install */ Add reference to setup-xorg-base script</p>
<hr />
<div>[[Image:package_edutainment.svg|right|link=]]<br />
{{TOC left}}<br />
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''<br />
<br />
The tutorials are hands-on and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.<br />
<br />
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux.<br />
<br />
We encourage people to send in both complete articles as well as requesting topics to be covered. If you think you have the skills and knowledge to write an Alpine Linux related article please do so on this Wiki. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].<br />
<br />
{{Clear}}<br />
== Storage ==<br />
<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)'' <!-- Installation and Storage --><br />
** [[Back Up a Flash Memory Installation]] <!-- Installation and Storage --><br />
** [[Manually editing a existing apkovl]]<br />
<br />
* [[Setting up disks manually]] <!-- Installation and Storage --><br />
* [[Setting up a software RAID array]]<br />
<!-- ** [[Setting up a /var partition on software IDE raid1]] Obsolete, Installation and Storage --> <br />
* [[Raid Administration]]<br />
* [[Setting up encrypted volumes with LUKS]]<br />
* [[Setting up LVM on LUKS]]<br />
* [[Setting up Logical Volumes with LVM]]<br />
** [[Setting up LVM on GPT-labeled disks]]<br />
** [[Installing on GPT LVM]]<br />
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub --><br />
<br />
* [[Setting up iSCSI]]<br />
** [[iSCSI Raid and Clustered File Systems]]<br />
* [[Setting up NBD]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution --><br />
* [[Linux iSCSI Target (TCM)]]<br />
* [[Disk Replication with DRBD]] <!-- draft --><br />
<br />
* [[Burning ISOs]] <!-- just some links now --><br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* [[Create a bootable Raspberry Pi SDHC from a Mac]]<br />
<br />
== Networking ==<br />
<br />
* [[Configure Networking]]<br />
* [[Connecting to a wireless access point]]<br />
* [[Bonding]]<br />
* [[Vlan]]<br />
* [[Bridge]]<br />
* [[OpenVSwitch]]<br />
* [[How to configure static routes]]<br />
<br />
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''<br />
<br />
* [[PXE boot]]<br />
<br />
* [[Using serial modem]]<br />
* [[Using HSDPA modem]]<br />
* [[Setting up Satellite Internet Connection]]<br />
* [[Using Alpine on Windows domain with IPSEC isolation]]<br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)'' <!-- Server and Networking --><br />
* [[How to setup a wireless access point]] ''(Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)''<br />
* [[Setting up a OpenVPN server with Alpine]] ''(Allowing single users or devices to remotely connect to your network)''<br />
<!-- [[Using Racoon for Remote Sites]] is a different VPN tunnelling method, but that article is just a stub --><br />
* [[Experiences with OpenVPN-client on ALIX.2D3]] <!-- solution --><br />
<br />
* [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 --><br />
* [[Setting up unbound DNS server]]<br />
* [[Setting up nsd DNS server]]<br />
* [[TinyDNS Format]]<br />
* [[Fault Tolerant Routing with Alpine Linux]] <!-- solution --><br />
* [[Freeradius Active Directory Integration]]<br />
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''<br />
* [[OwnCloud]] ''(Installing OwnCloud)''<br />
<br />
* [[Apache with php-fpm]]<br />
* [[Seafile: setting up your own private cloud]]<br />
<br />
== Post-Install ==<br />
<!-- If you edit this, please coordinate with Installation#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
** [[Comparison with other distros]]<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation]] <!-- new --><br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
<!-- [[Writing Init Scripts]] --><br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
* [[Ansible]] ''(Configuration management)''<br />
<br />
* [[Enable Serial Console on Boot]]<br />
<!-- Obsolete?<br />
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]<br />
--><br />
<br />
== Virtualization==<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen PCI Passthrough]]<br />
* [[Xen LiveCD]]<br />
* [[qemu]]<br />
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''<br />
* [[Docker]]<br />
<br />
== Desktop Environment ==<br />
<br />
* [[Awesome(wm) Setup]]<br />
* [[EyeOS]] ''(Cloud Computing Desktop)''<br />
* [[Gnome Setup]]<br />
* [[MATE|MATE Setup]]<br />
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')<br />
* [[Remote Desktop Server]]<br />
* [[Suspend on LID close]]<br />
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]<br />
* [[Installing Adobe flash player for Firefox]]<br />
<br />
== Applications ==<br />
<br />
=== Telephony ===<br />
* [[Setting up Zaptel/Asterisk on Alpine]]<br />
** [[Setting up Streaming an Asterisk Channel]]<br />
* [[Freepbx on Alpine Linux]]<br />
* [[FreePBX_V3]] ''(FreeSWITCH, Asterisk GUI web acces tool)''<br />
* [[2600hz]] ''(FreeSWITCH, Asterisk GUI web access tool)''<br />
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''<br />
<br />
=== Mail ===<br />
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''<br />
** [[Hosting Web/Email services on Alpine]]<br />
* [[ISP Mail Server HowTo]] <!-- solution, Mail --><br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Setting up postfix with virtual domains]]<br />
* [[Protecting your email server with Alpine]]<br />
* [[Setting up clamsmtp]]<br />
* [[Setting up dovecot with imap and ssl]]<br />
<br />
=== HTTP ===<br />
* [[Lighttpd]]<br />
** [[Lighttpd Https access]]<br />
** [[Setting Up Lighttpd with PHP]]<br />
** [[Setting Up Lighttpd With FastCGI]]<br />
* [[Cherokee]]<br />
* [[Nginx]]<br />
* [[Apache]]<br />
** [[Setting Up Apache with PHP]]<br />
** [[Apache authentication: NTLM Single Signon]]<br />
<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' <!-- solution, Server --><br />
<br />
* [[Setting up Transparent Squid Proxy]] <!-- draft --><br />
** [[SqStat]] ''(Script to look at active squid users connections)''<br />
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[Setting up Explicit Squid Proxy]]<br />
<br />
* [[Drupal]] ''(Content Management System (CMS) written in PHP)''<br />
* [[WordPress]] ''(Web software to create website or blog)''<br />
* [[MediaWiki]] ''(Free web-based wiki software application)''<br />
* [[DokuWiki]]<br />
* [[Darkhttpd]]<br />
<br />
=== Other Servers ===<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
<br />
* [[Setting up a nfs-server]]<br />
* [[Phpizabi]] ''(Social Networking Platform)''<br />
* [[Statusnet]] ''(Microblogging Platform)''<br />
* [[Pastebin]] ''(Pastebin software application)''<br />
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]<br />
<br />
* [[Patchwork]] ''(Patch review management system)''<br />
* [[Redmine]] ''(Project management system)''<br />
* [[Request-Tracker]] ''(Ticket system)''<br />
* [[OsTicket]] ''(Ticket system)''<br />
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''<br />
<br />
* [[Cgit]]<br />
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet --><br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Glpi]] ''(Manage inventory of technical resources)''<br />
<br />
* [[How to setup a Alpine Linux mirror]]<br />
* [[Cups]]<br />
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''<br />
* [[OpenVCP]] ''(VServer Control Panel)''<br />
* [[Mahara]] ''(E-portfolio and social networking system)''<br />
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]<br />
* [[Sending SMS using gnokii]]<br />
<br />
=== Monitoring ===<br />
* [[Traffic monitoring]] <!-- Networking and Monitoring --><br />
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring --><br />
* [[Setting up monitoring using rrdtool (and rrdcollect)]]<br />
* [[Setting up Cacti|Cacti]] ''(Front-end for rrdtool networking monitor)''<br />
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server --><br />
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring --><br />
* [[Setting up Smokeping|Smokeping]] ''(Network latency monitoring)'' <!-- Networking and Monitoring --><br />
** [[Setting up MRTG and Smokeping to Monitor Bandwidth Usage and Network Latency]]<br />
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance)'' <!-- Networking and Monitoring --><br />
* [[Cvechecker]] ''(Compare installed packages for Common Vulnerabilities Exposure)'' <!-- Monitoring and Security --><br />
<br />
* [[IP Accounting]] <!-- Networking and Monitoring --><br />
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[SqStat]] ''(Script to look at active squid users connections)''<br />
<br />
* [[Piwik]] ''(A real time web analytics software program)''<br />
* [[Awstats]] ''(Free log file analyzer)''<br />
* [[Intrusion Detection using Snort]]<br />
** [[Intrusion Detection using Snort, Sguil, Barnyard and more]]<br />
* [[Dglog]] ''(Log analyzer for the web content filter DansGuardian)''<br />
<br />
* [[Webmin]] ''(A web-based interface for Linux system)''<br />
* [[PhpPgAdmin]] ''(Web-based administration tool for PostgreSQL)''<br />
* [[PhpMyAdmin]] ''(Web-based administration tool for MYSQL)''<br />
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''<br />
* [[Linfo]]<br />
<br />
* [[Setting up lm_sensors]]<br />
<br />
* [[ZoneMinder video camera security and surveillance]]<br />
<br />
== Misc ==<br />
<br />
* [[:Category:Shell]]<br />
* [[:Category:Programming]]<br />
* [[Running glibc programs]]<br />
* [[:Category:Drivers]]<br />
* [[:Category:Multimedia]]<br />
<br />
== Complete Solutions ==<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]]<br />
* [[Fault Tolerant Routing with Alpine Linux]]<br />
* [[Experiences with OpenVPN-client on ALIX.2D3]]<br />
* [[Building a cloud with Alpine Linux]]<br />
<br />
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''<br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --><br />
* [[Streaming Security Camera Video with VLC]]<br />
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]<br />
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''<br />
<br />
<br />
<!--<br />
This does not attempt to be complete. Is it useful to have these listed here? I find them more accessible if grouped with their topics; also, an up-to-date list of all Draft or Obsolete pages can be found at [[Project:Wiki maintenance]].<br />
<br />
== Drafts ==<br />
Currently unfinished/works-in-progress.<br />
* [[Using Racoon for Remote Sites]]<br />
* [[Setting up Transparent Squid Proxy]] ''(Covers Squid proxy and URL Filtering system)''<br />
** [[Obtaining user information via SNMP]] ''(Using the Squark Squid authentication helper)'' [!-- no longer a draft --]<br />
* [[Setting up Streaming an Asterisk Channel]]<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)''<br />
* [[Intrusion Detection using Snort]] ''(Installing and configuring Snort and related applications on Alpine 2.0.x)''<br />
* [[IP Accounting]] ''(Installing and configuring pmacct for IP Accounting, Netflow/sFlow collector)''<br />
* [[Disk Replication with DRBD]]<br />
--></div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Alpine_setup_scripts&diff=10916Alpine setup scripts2015-05-29T15:18:13Z<p>Ahills: /* setup-xorg-base */ Add reference to new Intel Video page</p>
<hr />
<div>This page summarizes the low-level behavior of the {{Path|/sbin/setup-*}} scripts on the Alpine ISO (and in a normal Alpine install).<br />
<br />
== setup-alpine ==<br />
<br />
For a higher-level walkthrough (using the "sys" installmode), see [[Install to disk|Basic HDD install]].<br />
<br />
This script accepts the following command-line switches (you can run <code>setup-alpine -h</code> to see a usage message).<br />
<br />
{{Define|-a|Create an overlay file: this creates a temporary directory and saves its location in ROOT; however, the script doesn't export this variable so I think this feature isn't currently functional.}}<br />
;-c <var>answerfile</var><br />
:Create a new "answerfile", with default choices. You can edit the file and then invoke <code>setup-alpine -f <var>answerfile</var></code>.<br />
;-f <var>answerfile</var><br />
:Use an existing "answerfile", which may override some or all of the interactive prompts.<br />
{{Define|-q|Run in "quick mode." See below for details.}}<br />
<br />
The script's behavior is to do the following, in order. Bracketed options represent extra configuration choices that can be supplied when running the auxiliary setup scripts manually, or by supplying an "answerfile".<br />
<br />
# <code>setup-keymap</code> [us us]<br />
# [[#setup-hostname|setup-hostname]] [-n alpine-test]<br />
# [[#setup-interfaces|setup-interfaces]] [-i < interfaces-file]<br />
# <code>/etc/init.d/networking --quiet start &</code><br />
# if none of the networking interfaces were configured using dhcp, then: [[#setup-dns|setup-dns]] [-d example.com -n "8.8.8.8 [...]"]<br />
# set the root password<br />
# if not in quick mode, then: [[#setup-timezone|setup-timezone]] [-z UTC | -z America/New_York | -p EST+5]<br />
# enable the new hostname (<code>/etc/init.d/hostname --quiet restart</code>)<br />
# add <code>networking</code> and <code>urandom</code> to the '''boot''' rc level, and <code>acpid</code> and <code>cron</code> to the '''default''' rc level, and start the '''boot''' and '''default''' rc services<br />
# extract the fully-qualified domain name and hostname from {{Path|/etc/resolv.conf}} and <code>hostname</code>, and update {{Path|/etc/hosts}}<br />
# [[#setup-proxy|setup-proxy]] [-q <nowiki>"http://webproxy:8080"</nowiki>], and activate proxy if it was configured<br />
# <code>setup-apkrepos</code> [-r (to select a mirror randomly)]<br />
# if not in quick mode, then: [[#setup-sshd|setup-sshd]] [-c openssh | dropbear | none]<br />
# if not in quick mode, then: <code>setup-ntp</code> [-c chrony | openntpd | busybox | none]<br />
# if not in quick mode, then: <code>DEFAULT_DISK=none</code> [[#setup-disk|setup-disk]] <code>-q</code> [-m data /dev/sda]<br />
# if installation mode selected during setup-disk was "data" instead of "sys", then: <code>setup-lbu</code> [/media/sdb1]<br />
# if installation mode selected during setup-disk was "data" instead of "sys", then: <code>setup-apkcache</code> [/media/sdb1/cache | none]<br />
<br />
== setup-hostname ==<br />
<br />
:<code>setup-hostname</code> [-h] [-n hostname]<br />
<br />
Options:<br />
<br />
'''-h''' <var>Show help</var><br />
<br />
'''-n''' <var>Specify hostname</var><br />
<br />
This script allows quick and easy setup of the system hostname by writing it to {{Path|/etc/hostname}}. The script prevents you from writing an invalid hostname (such as one that used invalid characters or starts with a '-' or is too long).<br />
The script can be invoked manually or is called as part of the <code>setup-alpine</code> script.<br />
<br />
== setup-interfaces ==<br />
{{Cmd|setup-interfaces [-i &lt; <var>interfaces-file</var>]}}<br />
<br />
Note that the contents of <var>interfaces-file</var> has to be supplied as stdin, rather than naming the file as an additional argument. The contents should have the format of {{Path|/etc/network/interfaces}}, such as:<br />
<br />
auto lo<br />
iface lo inet loopback<br />
<br />
auto eth0<br />
iface eth0 inet dhcp<br />
hostname alpine-test<br />
<br />
== setup-dns ==<br />
<br />
:<code>setup-dns</code> [-h] [-d domain name] [-n name server]<br />
<br />
Options:<br />
<br />
'''-h''' <var>Show help</var> <br />
<br />
'''-d''' <var>specify search domain name</var><br />
<br />
'''-n''' <var>name server IP</var> <br />
<br />
The setup-dns script is stored in {{Path|/sbin/setup-dns}} and allows quick and simple setup of DNS servers (and a DNS search domain if required). Simply running <code>setup-dns</code> will allow interactive use of the script, or the options can be specified.<br />
<br />
The information fed to this script is written to {{Path|/etc/resolv.conf}}<br />
<br />
Example usage: {{Cmd|setup-dns -d example.org -n 8.8.8.8}}<br />
<br />
Example {{Path|/etc/resolv.conf}}:<br />
<br />
search example.org<br />
nameserver 8.8.8.8<br />
<br />
It can be run manually but is also invoked in the <code>setup-alpine</code> script unless interfaces are configured for DHCP.<br />
<br />
== setup-timezone ==<br />
:<code>setup-timezone</code> [-z UTC | -z America/New_York | -p EST+5]<br />
<br />
Can pre-select the timezone using either of these switches:<br />
<br />
'''-z''' <var>subfolder of</var> {{Path|/usr/share/zoneinfo}}<br />
<br />
'''-p''' <var>POSIX TZ format</var><br />
<br />
== setup-proxy ==<br />
:<code>setup-proxy</code> [-hq] [PROXYURL]<br />
<br />
Options:<br />
<br />
'''-h''' <var>Show help</var> <br />
<br />
'''-q''' <var>Quiet mode</var> prevents changes from taking effect until after reboot<br />
<br />
This script requests the system proxy to use in the form <code>http://<proxyurl>:<port></code> for example:<br />
<code>http://10.0.0.1:8080</code><br />
<br />
To set no system proxy use <code>none</code>.<br />
This script exports the following environmental variables: <br />
<br />
<code>http_proxy=$proxyurl</code> <br />
<br />
<code>https_proxy=$proxyurl</code><br />
<br />
<code>ftp_proxy=$proxyurl</code><br />
<br />
where <code>$proxyurl</code> is the value input. <br />
If <code>none</code> was chosen then the value it is set to a blank value (and so no proxy is used).<br />
<br />
== setup-sshd ==<br />
<br />
:<code>setup-sshd</code> [-h] [-c choice of SSH daemon]<br />
<br />
Options:<br />
<br />
'''-h''' <var>Show help</var> <br />
<br />
'''-c''' <var>SSH daemon</var> where SSH daemon can be one of the following:<br />
<br />
<code>openssh</code> install the {{Pkg|openSSH}} daemon<br />
<br />
<code>dropbear</code> install the {{Pkg|dropbear}} daemon<br />
<br />
<code>none</code> Do not install an SSH daemon<br />
<br />
Example usage: {{Cmd|setup-sshd -c dropbear}}<br />
<br />
The setup-sshd script is stored in {{Path|/sbin/setup-sshd}} and allows quick and simple setup of either the OpenSSH or Dropbear SSH daemon & client. <br />
It can be run manually but is also invoked in the <code>setup-alpine</code> script.<br />
<br />
== setup-disk ==<br />
<br />
:<code>DEFAULT_DISK=none setup-disk -q</code> [-m data | sys] [<var>mountpoint directory</var> | /dev/sda ...]<br />
<br />
This script accepts the following command-line switches:<br />
<br />
;-k <var>kernel flavor</var><br />
;-o <var>apkovl file</var><br />
:Restore system from <var>apkovl file</var><br />
;-m data | sys<br />
:Don't prompt for installation mode. With '''-m data''', the supplied devices are formatted to use as a {{Path|/var}} volume.<br />
{{Define|-r|Use RAID1 with a single disk (degraded mode)}}<br />
{{Define|-L|Create and use volumes in a LVM group}}<br />
;-s <var>swap size in MB</var><br />
:Use 0 to disable swap<br />
{{Define|-q|Exit quietly if no disks are found}}<br />
{{Define|-v|Verbose mode}}<br />
<br />
The script also honors the following environment variables:<br />
<br />
<code>BOOT_SIZE</code><br />
:Size of the boot partition in MB; defaults to 100. Only used if '''-m sys''' is specified or interactively selected.<br />
<br />
<code>SWAP_SIZE</code><br />
:Size of the swap volume in MB; set to 0 to disable swap. If not specified, will default to twice RAM, up to 4096, but won't be more than 1/3 the size of the smallest disk, and if less than 64 will just be 0. Only used if '''-m sys''' is specified or interactively selected.<br />
<br />
<code>ROOTFS</code><br />
:Filesystem to use for the / volume; defaults to ext4. Only used if '''-m sys''' is specified or interactively selected. Supported filesystems are: ext2 ext3 ext4 btrfs.<br />
<br />
<code>BOOTFS</code><br />
:Filesystem to use for the /boot volume; defaults to ext4. Only used if '''-m sys''' is specified or interactively selected. Supported filesystems are: ext2 ext3 ext4 btrfs.<br />
<br />
<code>VARFS</code><br />
:Filesystem to use for the /var volume; defaults to ext4. Only used if '''-m data''' is specified or interactively selected. Supported filesystems are: ext2 ext3 ext4 btrfs.<br />
<br />
<code>SYSROOT</code><br />
:Mountpoint to use when creating volumes and doing traditional disk install ('''-m sys'''). Defaults to {{Path|/mnt}}.<br />
<br />
<code>MBR</code><br />
:Path of MBR binary code, defaults to {{Path|/usr/share/syslinux/mbr.bin}}.<br />
<br />
<!-- Writes to /tmp/ovlfiles, /tmp/alpine-install-diskmode.out, and /tmp/sfdisk.out but that never seems to be used elsewhere. --><br />
<br />
<br />
=== Partitioning ===<br />
<br />
If you have complex partitioning needs, you can partition, format, and mount your volumes manually, then just supply the root mountpoint to <code>setup-disk</code>. Doing so implicitly behaves as though '''-m sys''' had also been specified.<br />
<br />
See [[Setting up disks manually]] for more information.<br />
<br />
<br />
==== RAID ====<br />
<code>setup-disk</code> will automatically build a RAID array if you supply the '''-r''' switch, or if you specify more than one device. The array will always be [https://en.m.wikipedia.org/wiki/Standard_RAID_levels#RAID_1 RAID1] (and [https://raid.wiki.kernel.org/index.php/RAID_superblock_formats#The_version-0.90_Superblock_Format --metadata=0.90]) for the /boot volumes, but will be [https://en.m.wikipedia.org/wiki/Standard_RAID_levels#RAID_5 RAID5] (and [https://raid.wiki.kernel.org/index.php/RAID_superblock_formats#The_version-1_Superblock_Format --metadata=1.2] for non-boot volumes when 3 or more devices are supplied.<br />
<br />
If you instead want to build your RAID array manually, see [[Setting up a software RAID array]]. Then format and mount the disks, and supply the root mountpoint to <code>setup-disk</code>.<br />
<br />
==== LVM ====<br />
<code>setup-disk</code> will automatically build and use volumes in a LVM group if you supply the '''-L''' switch. The group and volumes created by the script will have the following names:<br />
<br />
* volume group: '''vg0'''<br />
* swap volume: '''lv_swap''' (only created when swap size > 0)<br />
* root volume: '''lv_root''' (only created when '''-m sys''' is specified or interactively selected)<br />
* var volume: '''lv_var''' (only created when '''-m data''' is specified or interactively selected)<br />
<br />
The '''lv_var''' or '''lv_root''' volumes are created to occupy all remaining space in the volume group.<br />
<br />
If you need to change any of these settings, you can use <code>vgrename</code>, <code>lvrename</code>, <code>lvreduce</code> or <code>lvresize</code>.<br />
<br />
If you instead want to build your LVM system manually, see [[Setting up Logical Volumes with LVM]]. Then format and mount the disks, and supply the root mountpoint to <code>setup-disk</code>.<br />
<br />
<!--<br />
=Setup-Disk Usage=<br />
<br />
usage: setup-disk [-hqr] [-k kernelflavor] [-m MODE] [-o apkovl] [-s SWAPSIZE]<br />
[MOUNTPOINT | DISKDEV...]<br />
<br />
Install alpine on harddisk.<br />
<br />
If MOUNTPOINT is specified, then do a traditional disk install with MOUNTPOINT<br />
as root.<br />
<br />
If DISKDEV is specified, then use the specified disk(s) without asking. If<br />
multiple disks are specified then set them up in a RAID array. If there are<br />
mode than 2 disks, then use raid level 5 instead of raid level 1.<br />
<br />
options:<br />
-h Show this help<br />
-m Use disk for MODE without asking, where MODE is either 'data' or 'root'<br />
-o Restore system from given apkovl file<br />
-k Use kernelflavor instead of $KERNEL_FLAVOR<br />
-L Use LVM to manage partitions<br />
-q Exit quietly if no disks are found<br />
-r Enable software RAID1 with single disk<br />
-s Use SWAPSIZE MB instead of $SWAP_SIZE MB for swap (Use 0 to disable swap)<br />
-v Be more verbose about what is happening<br />
<br />
<br />
==Disk Install Styles==<br />
<br />
You can select between 'sys' or 'data'.<br />
<br />
sys:<br />
This mode is a traditional disk install. The following partitions will be<br />
created on the disk: /boot, / (filesystem root) and swap.<br />
<br />
This mode may be used for development boxes, desktops, virtual servers, etc.<br />
<br />
data:<br />
This mode uses your disk(s) for data storage, not for the operating system.<br />
The system itself will run from tmpfs (RAM).<br />
<br />
Use this mode if you only want to use the disk(s) for a mailspool, databases,<br />
logs, etc.<br />
<br />
none:<br />
Run without installing to disk.<br />
<br />
--><br />
<br />
== setup-bootable ==<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
Its purpose is to create media that boots into tmpfs by copying the contents of an ISO onto a USB key, CF, or similar media.<br />
<br />
For a higher-level walkthrough, see [[Create a Bootable USB#Creating_a_bootable_Alpine_Linux_USB_Stick_from_the_command_line|Creating a bootable Alpine Linux USB Stick from the command line]].<br />
<br />
This script accepts the following arguments and command-line switches (you can run <code>setup-bootable -h</code> to see a usage message).<br />
<br />
{{Cmd|setup-bootable <var>source</var> [<var>dest</var>]}}<br />
<br />
The argument <var>source</var> can be a directory or an ISO (will be mounted to <code>MNT</code> or {{Path|/mnt}}) or a URL (will be downloaded with <code>WGET</code> or <code>wget</code>). The argument <var>dest</var> can be a directory mountpoint, or will default to {{Path|/media/usb}} if not supplied.<br />
<br />
{{Define|-k|Keep alpine_dev in {{Path|syslinux.cfg}}; otherwise, replace with UUID.}}<br />
{{Define|-u|Upgrade mode: keep existing {{Path|syslinux.cfg}} and don't run <code>syslinux</code>}}<br />
{{Define|-f|Overwrite {{Path|syslinux.cfg}} even if '''-u''' was specified.}}<br />
{{Define|-s|Force the running of <code>syslinux</code> even if '''-u''' was specified.}}<br />
{{Define|-v|Verbose mode}}<br />
<br />
The script will ensure that <var>source</var> and <var>dest</var> are available; will copy the contents of <var>source</var> to <var>dest</var>, ensuring first that there's enough space; and unless '''-u''' was specified, will make <var>dest</var> bootable.<br />
<br />
<!--<br />
== setup-cryptswap ==<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
:<code>setup-cryptswap</code> [<var>partition</var> | none]<br />
<br />
{{Todo|Does this script still work? At what stage can it be run: only after setup-alpine?}}<br />
--><br />
<br />
== setup-xorg-base ==<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
Installs the following packages: <code>xorg-server xf86-video-vesa xf86-input-evdev xf86-input-mouse xf86-input-keyboard udev</code>.<br />
<br />
Additional packages can be supplied as arguments to <code>setup-xorg-base</code>. You might need, for example, some of: <code>xf86-input-synaptics xf86-video-<var>something</var> xinit</code>. For Intel GPUs, see [[Intel Video]].<br />
<br />
== Documentation needed ==<br />
<br />
=== setup-xen-dom0 ===<br />
<br />
=== setup-gparted-desktop ===<br />
Uses openbox.<br />
<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
=== setup-mta ===<br />
Uses ssmtp.<br />
<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
=== setup-acf ===<br />
This is a standalone script; it's not invoked by <code>setup-alpine</code> but must be run manually.<br />
<br />
This script was named <code>setup-webconf</code> before Alpine 1.9 beta 4.<br />
<br />
See [[:Category:ACF|ACF pages]] for more information.<br />
<br />
=== setup-ntp ===<br />
<br />
<br />
[[Category:Installation]]</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Installation&diff=10915Installation2015-05-29T15:16:24Z<p>Ahills: /* Post-Install */ Add reference to setup-xorg-base script</p>
<hr />
<div>The following information will assist you with the installation of [http://alpinelinux.org/about Alpine Linux].<br />
[[Image:hdd_mount.png|left|link=]]<br />
<br /><br />
<br />
== Installation Quick-Start in 3 Easy Steps ==<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
1st<br />
</div><br />
<div style="margin-left:65px; background-color:#EDF2F2; border-style:solid; border-color:#6F7C91; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
[http://alpinelinux.org/downloads Download] the latest stable-release ISO.<br />
</div><br />
<br />
<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
2nd<br />
</div><br />
<div style="margin-left:65px; background-color:#E0E9E9; border-style:solid; border-color:#606A82; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
If you have a CD drive from which you can boot, then [[Burning ISOs|burn the ISO onto a blank CD]] using your favorite CD burning software. Else [[Create a Bootable USB|create a bootable USB drive]].<br />
</div><br />
<br />
<br />
<div style="float:left; font-size:30px; font-weight:bold;"><br />
3rd<br />
</div><br />
<div style="margin-left:65px; background-color:#9faecc; border-style:solid; border-color:#324065; border-width:0px; border-left-width:5px; min-height:55px; padding:5px;"><br />
Boot from the CD or USB drive, login as root with no password, and voilĂ ! Enjoy Alpine Linux!<br />
</div><br />
<br />
{{Clear}}<br />
One of the [[Installation#Post-Install|first commands you might want to use]] is <code>[[setup-alpine]]</code>.<br />
<br />
== Installation Handbook ==<br />
=== Basics ===<br />
Alpine can be used in any of three modes:<br />
<dl><br />
<dt>diskless mode<br />
<dd>You'll boot from read-only medium such as the installation CD, a [[Create a Bootable USB|USB drive]], or a [[Create a Bootable Compact Flash|Compact Flash card]]. {{Tip| To prepare either a USB or Compact Flash card, you can use the <code>[[setup-bootable]]</code> script; see the pages linked above for details.}} When you use Alpine in this mode, you need to use [[Alpine local backup|Alpine Local Backup (lbu)]] to save your modifications between reboots. That requires some writable medium, usually removable. (If your boot medium is, for example, a USB drive, you can save modifications there; you don't need a separate partition or drive.) See also [[Local APK cache]].<br />
{{Note| When the <code>[[setup-alpine]]</code> script asks for a disk, say "none". It will then prompt whether you'd like to preserve modifications on any writable medium.}}<br />
<dt>data mode<br />
<dd>As in diskless mode, your OS is run from a read-only medium. However, here a writable partition (usually on a hard disk) is used to store the data in {{Path|/var}}. That partition is accessed directly, rather than copied into a tmpfs; so this is better-suited to uses where large amounts of data need to be preserved between reboots. {{Note| The <code>[[setup-alpine]]</code> script handles installing Alpine in this mode, too, when you supply a writable partition instead of "none", and request mode "data".}} This mode may be used for mailspools, database and log servers, and so on.<br />
<dt>sys mode<br />
<dd>This is a [[Install to disk|traditional hard-disk install]] (see link for details). <!-- includes [[Installing Alpine on HDD overwriting everything]] --> Both the boot system and your modifications are written to the hard disk, in a standard Linux hierarchy. {{Note| The <code>[[setup-alpine]]</code> script handles installing Alpine in this mode, too, when you supply a writable partition instead of "none", and request mode "sys". By default, it will create three partions on your disk, for {{Path|/boot}}, {{Path|/}}, and {{Path|swap}}; however you can also [[Setting up disks manually|partition your disk manually]].<br />
}} This mode may be used for desktops, development boxes, and virtual servers.<br />
<!-- [[Native Harddisk Install 1.6]] Obsolete --><br />
</dl><br />
<br />
=== Advanced ===<br />
* [[Tutorials_and_Howtos#Storage|Setting up storage with RAID, LVM, LUKS encryption, iSCSI, or suchlike]]<br />
* [[Setting up disks manually]]<br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* Details about [[Alpine setup scripts]]<br />
<br />
* [[Installing Alpine on HDD dualbooting|Install to HDD with dual-boot]]<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
<!-- [[Installing Xubuntu using Alpine boot floppy]] Obsolete --><br />
<!-- [[Installing Alpine Linux on USB Automated]] Obsolete --><br />
<br />
* [[Bootstrapping Alpine Linux]]<br />
<br />
<!-- If you edit the following, please coordinate with Developer_Documentation#Configuring_your_system. Note that these two sections are not exact duplicates. --><br />
* [[Installing Alpine Linux in a chroot]]<br />
<br />
* Install Alpine on [[Install Alpine on VirtualBox|VirtualBox]], [[Install Alpine on VMware|VMware]], [[Install Alpine on coLinux|coLinux]], [[Qemu]], <!-- includes [[Install Alpine in Qemu]], [[Running Alpine in Qemu Live mode]], [[Running Alpine Linux As a QEMU networked Guest]] -->, [[Install Alpine on Amazon EC2|Amazon EC2]], or [[Install Alpine on Rackspace|RackSpace]]<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen LiveCD]]<br />
<br />
* [[Setting up a basic vserver]]<br />
* [[Setting up the build environment on HDD]]<br />
* [[Setting up a compile vserver]] for official or for [[Setting up a compile vserver for third party packages|third party]] packages<br />
<!-- [[Create an Alpine 1.9 vserver template]] --><br />
<br />
=== Post-Install ===<br />
<!-- If you edit this, please coordinate with and Tutorials_and_Howtos#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
<!-- [[Configure Networking]] --><br />
* [[Tutorials_and_Howtos#Networking|Setting up Networking]]<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation|Back Up a Flash Memory ("diskless mode") Installation]]<br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
<!-- [[Writing Init Scripts]] --><br />
<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Hosting services on Alpine]]''(Links to several mail/web/ssh server setup pages)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
<br />
<!-- [[Running glibc programs]] Installation and Dev --><br />
* [[Setting the timezone]] ''(Not needed for the default musl- or uClibc-based installs)''<br />
<br />
=== Further Help and Information ===<br />
* [[FAQ|FAQs]]<br />
* [[Tutorials and Howtos]]<br />
* [[Contribute|How to Contribute]]<br />
* [[Developer Documentation]]<br />
<br />
[[Category:Installation]]</div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=Intel_Video&diff=10914Intel Video2015-05-29T15:12:34Z<p>Ahills: Created page with "The following instructions are for modern Intel GPU chipsets covered by the i915 driver. See #Known working configurations. == Setup Xorg/udev == # Run the Alpine setu..."</p>
<hr />
<div>The following instructions are for modern Intel GPU chipsets covered by the i915 driver.<br />
See [[#Known working configurations]].<br />
<br />
== Setup Xorg/udev ==<br />
<br />
# Run the [[Alpine setup scripts#setup-xorg-base|setup-xorg-base]] script.<br />
# Install the Xorg Intel video drivers: {{Cmd|apk add xf86-video-intel}}<br />
# Enable [[#Kernel Modesetting (KMS)]]. Specifically, the <code>fbcon</code> module is necessary, or leaving Xorg (via <code>Ctrl+Alt+F1</code> or quitting) will result in a black screen until the machine is power cycled. If you have already launch Xorg and don't want to experience this effect, you can <code>modprobe fbcon</code> while Xorg is running.<br />
<br />
== Kernel Modesetting (KMS) ==<br />
<br />
To enable KMS at boot:<br />
# Add the <code>i915</code> and <code>fbcon</code> modules to {{Path|/etc/modules}}: {{Cmd|$ echo i915 >> /etc/modules<br />$ echo fbcon >> /etc/modules}}<br />
# Install <code>mkinitfs</code>: {{Cmd|apk add mkinitfs}}<br />
# Enable the <code>kms</code> feature in the <code>mkinitfs</code> configuration by adding it to the <var>features</var> variable, e.g., {{cat|/etc/mkinitfs/mkinitfs.conf|2=features="keymap cryptsetup kms ata base ide scsi usb virtio ext4"}}<br />
# Run <code>mkinitfs</code>.<br />
# Reboot to test the configuration.<br />
<br />
== Known working configurations ==<br />
<br />
; Lenovo X1 Carbon (1st gen), <code>sys</code> installation<br />
<pre style="white-space: pre-wrap; word-wrap: break-word;"># lspci -s 02 -v<br />
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller])<br />
Subsystem: Lenovo Device 21f9<br />
Flags: bus master, fast devsel, latency 0, IRQ 28<br />
Memory at f0000000 (64-bit, non-prefetchable) [size=4M]<br />
Memory at e0000000 (64-bit, prefetchable) [size=256M]<br />
I/O ports at 4000 [size=64]<br />
Expansion ROM at <unassigned> [disabled]<br />
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-<br />
Capabilities: [d0] Power Management version 2<br />
Capabilities: [a4] PCI Advanced Features<br />
Kernel driver in use: i915<br />
</pre></div>Ahillshttps://wiki.alpinelinux.org/w/index.php?title=User:Ahills&diff=10913User:Ahills2015-05-29T13:58:55Z<p>Ahills: Created page with "== Maintaining == [http://git.alpinelinux.org/cgit/aports/tree/testing/imapfilter imapfilter] &ndash; [https://github.com/lefcha/imapfilter source] [http://git.alpinelinux.o..."</p>
<hr />
<div>== Maintaining ==<br />
<br />
[http://git.alpinelinux.org/cgit/aports/tree/testing/imapfilter imapfilter] &ndash; [https://github.com/lefcha/imapfilter source]<br />
<br />
[http://git.alpinelinux.org/cgit/aports/tree/testing/xbindkeys xbindkeys] &ndash; [http://www.nongnu.org/xbindkeys/xbindkeys.html source]<br />
<br />
== Contact ==<br />
<br />
https://github.com/ahills<br />
<br />
irc://irc.freenode.net/#alpine-linux &ndash; ahills</div>Ahills