Manual installation
Get Alist
Open AList Release to download the files corresponding to the system to be deployed. The latest version of the front-end has been packaged with the back-end, so there is no need to download the front-end files again.
The xxxx refers to the names corresponding to different systems/architectures, generally Linux-x86/64 is alist-linux-amd64.
If there is a prompt as follows:It is because your GLIBC version is too low, it is recommended to download the musl version
lib64/libc.so.6: version `GLIBC_2.28' not found (required by ./alist)
# or
accept: function not implemented
When you see the output of start server @ 0.0.0.0:5244
and no error is reported afterwards, it means that the operation is successful. The initial password will be output when running for the first time. The program listens to port 5244 by default. Now open http://ip:5244
You can see the login page, please see WebDav for webdav.
Running
Versions above v3.25.0 change the password to an encrypted hash value, and the password cannot be calculated directly. If the password is forgotten, it can only be re-randomly generated
or manually set
# Unzip the downloaded file to get the executable file:
tar -zxvf alist-xxxx.tar.gz
# Grant program execution permissions:
chmod +x alist
# Run the program
./alist server
# Obtain administrator information The following two different versions, the new version also has random generation and manual settings
# Versions lower than v3.25.0
./alist admin
# higher than v3.25.0 version
# Randomly generate a password
./alist admin random
# Manually set a password `NEW_PASSWORD` refers to the password you need to set
./alist admin set NEW_PASSWORD
# Unzip the downloaded file to get the executable file:
tar -zxvf alist-xxxx.tar.gz
# Grant program execution permissions:
chmod +x alist
# Run the program
./alist server
# Obtain administrator information The following two different versions, the new version also has random generation and manual settings
# Versions lower than v3.25.0
./alist admin
# higher than v3.25.0 version
# Randomly generate a password
./alist admin random
# Manually set a password `NEW_PASSWORD` refers to the password you need to set
./alist admin set NEW_PASSWORD
# Unzip the downloaded file to get the executable file:
unzip alist-xxxx.zip
# Run the program
.\alist.exe server
# Obtain administrator information The following two different versions, the new version also has random generation and manual settings
# Versions lower than v3.25.0
.\alist.exe admin
# higher than v3.25.0 version
# Randomly generate a password
.\alist.exe admin random
# Manually set a password `NEW_PASSWORD` refers to the password you need to set
.\alist.exe admin set NEW_PASSWORD
# Install
scoop install alist
# Run
alist server
Daemon
vim /usr/lib/systemd/system/alist.service
add the following content, where path_alist is the path where alist is located
[Unit]
Description=alist
After=network.target
[Service]
Type=simple
WorkingDirectory=path_alist
ExecStart=path_alist/alist server
Restart=on-failure
[Install]
WantedBy=multi-user.target
Then systemctl daemon-reload
, now you can use these commands to manage the program:
- Start:
systemctl start alist
- Shut down:
systemctl stop alist
- Self-start:
systemctl enable alist
- Cancel Self-start:
systemctl disable alist
- Status:
systemctl status alist
- Restart:
systemctl restart alist
Daemon will not use? Video Tutorial
Edit ~/Library/LaunchAgents/ci.nn.alist.plist
in any way and add the following content, modify path_alist
to be the path where AList is located, and path/to/working/dir
to be the working path of AList
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>ci.nn.alist</string>
<key>KeepAlive</key>
<true/>
<key>ProcessType</key>
<string>Background</string>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>path/to/working/dir</string>
<key>ProgramArguments</key>
<array>
<string>path_alist/alist</string>
<string>server</string>
</array>
</dict>
</plist>
Then, execute launchctl load ~/Library/LaunchAgents/ci.nn.alist.plist
to load the configuration, now you can use these commands to manage the program:
- Start:
launchctl start ~/Library/LaunchAgents/ci.nn.alist.plist
- Close:
launchctl stop ~/Library/LaunchAgents/ci.nn.alist.plist
- Unload configuration:
launchctl unload ~/Library/LaunchAgents/ci.nn.alist.plist
method one
- Download the newest
nssm
from https://nssm.cc/download. - Unzip the archive and go to the diretory of
nssm.exe
. - Hold Shift and right click on the blank space, then release and press S or select "powershell here", you should now see a blue window named "Windows PowerShell".
- Type
.\nssm.exe install alist
. - Select the path of
alist.exe
for "Path", e.g.D:\alist\alist.exe
; typeserver
for "Argument". - You can custom "Display Name", "Description" and "Startup Type" in "Details" tab.
- Go to "I/O" tab and select a file for both "Output (stdout)" and "Output (stderr)", e.g.
D:\alist\stdout.log
. The file itself (stdout.log
) may not exist, but the folder (D:\alist
) must exist. - Click on "Install Service".
You can now start the service from services.msc or task manager.
method two
Use .VBS
script to start and stop, create two scripts respectively start.vbs and stop.vbs
Just double-click to start it in the folder at the same level as the Alist startup program, don't worry about no response, just go to the browser to access it
Two startup scripts
start.vbs
Dim ws
Set ws = Wscript.CreateObject("Wscript.Shell")
ws.run "alist.exe server",vbhide
Wscript.quit
stop.vbs
Dim ws
Set ws = Wscript.CreateObject("Wscript.Shell")
ws.run "taskkill /f /im alist.exe",0
Wscript.quit
If the script will not be created, you can download it yourself: Script Download
If the script will not be used, you can watch the video: reference video
How to realize Windows startup automatically, you can refer to the script mentioned above to use the video (second).
Info
For all platform, you can use follow command to silent start, stop and restart. (v3.4.0 and later)
# start server with `--force-bin-dir`
alist start
# stop server by pid
alist stop
# restart server by pid
alist restart
How to update
Download the new version of Alist and replace the previous one.
- Start:
systemctl start alist
- Shut down:
systemctl stop alist
- Status:
systemctl status alist
- Restart:
systemctl restart alist
Get Password
You need to enter the directory folder where the script installs AList and execute the following command
Lower than v3.25.0
./alist admin
Higher than v3.25.0
Versions above 3.25.0 change the password to an encrypted hash value, and the password cannot be calculated directly. If the password is forgotten, it can only be re-randomly generated
or manually set
# Randomly generate a password
./alist admin random
# Manually set a password, `NEW_PASSWORD` refers to the password you need to set
./alist admin set NEW_PASSWORD
What should I do if it keeps loading?
I mounted some network disks but they cannot be used. I restarted AList and found that I could not enter. The web page prompts: Failed to obtain settings: Please wait, storage is loading
. What should I do?
- Wait a few minutes
- Stop the failed/unstartable storage by using the command
If you stop by command You must first enter the folder where your AList is located and enter the command
If we don’t know which storage is causing the problem, we can list all storages through the command
./alist storage list
[root@OPSD-g8xXordx3B9f alist]# ./alist storage list
INFO[2023-11-23 17:54:10] reading config file: data/config.json
INFO[2023-11-23 17:54:10] load config from env with prefix: ALIST_
INFO[2023-11-23 17:54:10] init logrus...
INFO[2023-11-23 17:54:10] Found 2 storages
┌─────────────────────────────────────────────────────────────────┐
│ ID Driver Mount Path Enabled │
│─────────────────────────────────────────────────────────────────│
│ 1 S3 /R2 true │
│ 2 UrlTree /233 true │
└─────────────────────────────────────────────────────────────────┘
After entering the query command, we will enter another mode and cannot operate. If there are too many added storages, you can use the ↑ and ↓ keys on the keyboard to scroll down. After you find it, you can press Ctrl+C
to exit.
For example, because the storage 233
cannot be loaded, we enter the command to stop it, and then restart AList.
./alist storage disable /233
[root@OPSD-g8xXordx3B9f alist]# ./alist storage disable /233
INFO[2023-11-23 17:54:52] reading config file: data/config.json
INFO[2023-11-23 17:54:52] load config from env with prefix: ALIST_
INFO[2023-11-23 17:54:52] init logrus...
INFO[2023-11-23 17:54:52] Storage with mount path [/233] have been disabled
If you stop by command You must first enter the folder where your AList is located and enter the command
If we don’t know which storage is causing the problem, we can list all storages through the command
alist.exe storage list
C:\Users\admin\Desktop\alist>alist.exe storage list
INFO[2023-11-23 18:36:23] reading config file: data\config.json
INFO[2023-11-23 18:36:23] load config from env with prefix: ALIST_
INFO[2023-11-23 18:36:23] init logrus...
INFO[2023-11-23 18:36:23] Found 13 storages
┌──────────────────────────────────────────────────────────────────┐
│ ID Driver Mount Path Enabled │
│──────────────────────────────────────────────────────────────────│
│ 1 AliyundriveOpen /open true │
│ 9 Local /code true │
│ 10 AList V3 /ceshi true │
└──────────────────────────────────────────────────────────────────┘
After entering the query command, we will enter another mode and cannot operate. If there are too many added storages, you can use the ↑ and ↓ keys on the keyboard to scroll down. After you find it, you can press Ctrl+C
to exit.
For example, because the storage open
cannot be loaded, we enter the command to stop it, and then restart AList.
alist.exe storage disable /open
C:\Users\admin\Desktop\alist>alist.exe storage disable /open
INFO[2023-11-23 18:41:43] reading config file: data\config.json
INFO[2023-11-23 18:41:43] load config from env with prefix: ALIST_
INFO[2023-11-23 18:41:43] init logrus...
INFO[2023-11-23 18:41:43] Storage with mount path [/open] have been disabled
If you stop by command You must first enter the folder where your AList is located and enter the command
Since I don’t have a Mac device at the moment, I can’t provide specific examples, but the commands are the same and you can refer to Linux and Windows.
If we don’t know which storage is causing the problem, we can list all storages through the command
List storage:
alist storage list
Stop storage:
alist storage disable /Path
The Docker
here currently only provides the default version installed using the document command. If you build multiple Docker versions of AList, you need to modify individual parameters~
If we don’t know which storage is causing the problem, we can list all storages through the command
docker exec -it alist ./alist storage list
[root@OPSD-g8xXordx3B9f alist]# docker exec -it alist ./alist storage list
INFO[2023-11-23 11:50:08] reading config file: data/config.json
INFO[2023-11-23 11:50:08] load config from env with prefix: ALIST_
INFO[2023-11-23 11:50:08] init logrus...
INFO[2023-11-23 11:50:08] Found 8 storages
┌─────────────────────────────────────────────────────────────────┐
│ ID Driver Mount Path Enabled │
│─────────────────────────────────────────────────────────────────│
│ 1 PikPakShare /pikpak true │
│ 2 OnedriveAPP /utena_onedrive true │
│ 3 OnedriveAPP /adelev_onedrive true │
│ 4 OnedriveAPP /megan_onedrive true │
│ 5 OnedriveAPP /patti_onedrive true │
└─────────────────────────────────────────────────────────────────┘
After entering the query command, we will enter another mode and cannot operate. If there are too many added storages, you can use the ↑ and ↓ keys on the keyboard to scroll down. After you find it, you can press Ctrl+C
to exit.
For example, because the storage pikpak
cannot be loaded, we enter the command to stop it, and then restart AList.