On 09/04/17 15:58, GiaThnYgeia wrote:
> A while ago while Thomas Schmitt was helping me with dd and xorriso in
> backing up systems and partitions into usb and back the issue of not
> having a swap partition in my system came up, since I chose not to
> during the installation, and how to create one, lead me into a search of
> doing just that.
>
> In the page
> https://askubuntu.com/questions/33697/how-do-i-add-a-swap-partition-after-system-installation
> there are instructions that I believe work just as well on Debian to
> either create a new partition for swap or create a swap file, which I
> did not know it was an option.
> I chose the second as my partitioning has become complex and most of the
> drive is not available during boot-up.  So I assume it would run to an
> error if I did this on a partition that is not available during boot.
>
> Below you will find the exact instructions I used and worked fine for me
> on Stretch (I believe to be true for all Debian).
>
> But here come some questions:
> 1     What is the difference functionally of having a swap partition from
> having a swap file?  Is it that you can use a separate physical disk
> that will take the wear and tear of swaping?

A swap partition is not subject to the controls of a file system. That
is, it can't get fragmented, it can be positioned at the fast (or slow)
end of a disk, it can be (as you suggest) placed on a completely
separate device. It can be shared between dual-booting Linux systems.

A swap file does not take up potentially precious space on the partition
table (for example, you can only have 4 primary partitions).

> 2     Is swap size relevant to ram, should it be equal, greater, smaller?
> Advantages disadvantages?  I rarely see in a workstation and my/our use
> anywhere close to 4GB being used, it usually maxes out around 2,5GB. No,
> no killing games here, maybe some chess and gnubg. Is it that a Ram of
> 1GB would benefit from 2-4GB swap space while with 16GB or Ram swap
> would never be used?

If you want to use suspend-to-disk hibernation, it should be at least
equal to RAM (suspend-to-disk DOES use compression, but if you have a
lot in RAM and a lot in swap and it doesn't compress well, equal-to-RAM
tends to be the sweet spot).

Otherwise, the old rule used to be 1.5×RAM. Again, equal to RAM should
be plenty if you have 4GB. Swap allows the kernel to move
infrequently-used pages out to disk and prioritise the fast RAM for
frequently-used pages. So, even if you have 16GB of RAM, the kernel can
use that for the more important stuff (disk caches for example).

>
> 3     chmod 600 for the swapfile.  Why?

600 means that the owner of the file can read and write to the file, but
no-one else can (rw-------). This improves the security of the file.

> 4     Is "dd bs=1M count=4M" that defines the 4,000Mb of space/size of the 
> file?

No, that would be 4,000,000Mb. "bs=" indicates the "block size" that dd
should write and "count=" indicates the number of /those blocks/ to be
written. So you're asking for four million megabytes. For 4,000Mb, you'd
be best with "dd bs=1M count=4000".

>
> I am now going to use gnubg to test my mem capabilities.  I think making
> it calculate best move 4-5 moves ahead in bg or chess will stress the
> system out :)
>
> _______________________________________________________
>
> #    Create an empty file (1K * 4M = 4 GiB)
>     sudo mkdir -v /var/cache/swap
>     cd /var/cache/swap
>     sudo dd if=/dev/zero of=swapfile bs=1K count=4M
>     sudo chmod 600 swapfile
>
> #    Convert newly created file into a swap space file.
>     sudo mkswap swapfile
>
> #    Enable file for paging and swapping.
>     sudo swapon swapfile
>
> #    Verify by: swapon -s or top:
> top -bn1 | grep -i swap
> #    KiB Swap:  4194300 total,  4194300 free
>
> #    To disable, use
> sudo swapoff swapfile.
>
> #    Add it into fstab file to make it persistent on the next system
> #    boot.
> echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a
>    /etc/fstab
>
> #    Re-test swap file on startup by:
>     sudo swapoff swapfile
>     sudo swapon -va
> _____________________________________________________________
>
>
>

Reply via email to